This is my first attempt to deploy Pulsar on AKS v1.15.11.
I'm getting a not very verbose error messages from 2 pods that are "unscheduled" :
Firtst pod unscheduled "pulsar-zookeeper-0"
[Pod] [pulsar-zookeeper-0] FailedScheduling: selectedNode annotation value "" not set to scheduled node "aks-agentpool-20916223-vmss000001"
Second Pod unscheduled "pulsar-bookkeeper-0"
[Pod] [pulsar-bookkeeper-0] FailedScheduling: selectedNode annotation value "" not set to scheduled node "aks-pulsar-20916223-vmss000001"
Here's a detailed procedure of what I did. I've used official helm-charts for deployments
helm repo add kafkaesque https://helm.kafkaesque.io
helm repo update
Based on the documentation, I understood that I need to feed theese values in my storage_values.yaml file.
default_storage:
provisioner: kubernetes.io/azure-disk
fsType: ext4
type: managed-premium
extraParams:
storageaccounttype: Premium_LRS
kind: Managed
cachingmode: ReadOnly
Also created the namespace
{
"kind": "Namespace",
"apiVersion": "v1",
"metadata": {
"name": "pulsar",
"labels": {
"name": "pulsar"
}
}
}
Using this command
kubectl create -f namespace-pulsar.json
Then then I launched the deployment using the previous values
helm install pulsar kafkaesque/pulsar --namespace pulsar --values storage_values.yaml
AKS already comes with Storage Classes
you shouldn't need to tell your Chart to create a Storage Class using
default_storage:
provisioner: kubernetes.io/azure-disk
fsType: ext4
type: managed-premium
extraParams:
storageaccounttype: Premium_LRS
kind: Managed
cachingmode: ReadOnly
Instead update the StorageClassName
variable to have your pods create their PVC using an existing Storage Class from AKS
run kubectl get sc
to get a list of all deployed storage classes
For your particular Chart,
Create a new file called storage_values.yaml for the storage class settings. To use an existing storage class (including the default one) set this value:
default_storage:
existingStorageClassName: default or <name of storage class>