Start ArangoDB on Azure Kubernetes Service (AKS)

Requirements

Deploy cluster

  • In Azure dashboard choose Create a resource
  • Choose Kubernetes Service

Cluster basics (version >=1.10)

basics

Cluster authentication (Enable RBAC)

basics

Wait for cluster to be created

basics

Move to control using kubectl

  • Login to Azure using CLI
  1. $ az login
  2. [
  3. {
  4. "cloudName": "AzureCloud",
  5. "id": "...",
  6. "isDefault": true,
  7. "name": "ArangoDB-INC",
  8. "state": "Enabled",
  9. "tenantId": "...",
  10. "user": {
  11. "name": "xxx@arangodb.com",
  12. "type": "user"
  13. }
  14. }
  15. ]
  • Get AKS credentials to merge with local config, using resource group andcluster names used for above deployment
  1. $ az aks get-credentials --resource-group clifton --name ArangoDB
  • Verify successful merge
  1. $ kubectl get svc
  2. NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
  3. kubernetes ClusterIP 10.0.0.1 <none> 443/TCP 38m
  • Initialize helm
  1. $ kubectl create serviceaccount --namespace kube-system tiller
  2. serviceaccount/tiller created
  1. $ kubectl create clusterrolebinding tiller-cluster-rule \
  2. --clusterrole=cluster-admin --serviceaccount=kube-system:tiller
  3. clusterrolebinding.rbac.authorization.k8s.io/tiller-cluster-rule created
  1. $ helm init --service-account tiller
  2. $HELM_HOME has been configured at /home/xxx/.helm.
  3. ...
  4. Happy Helming!
  5. Tiller (the Helm server-side component) has been
  6. installed into your Kubernetes Cluster.
  • Deploy ArangoDB operator
  1. $ helm install \
  2. github.com/arangodb/kube-arangodb/releases/download/X.X.X/kube-arangodb.tgz
  3. NAME: orderly-hydra
  4. LAST DEPLOYED: Wed Oct 31 15:11:37 2018
  5. NAMESPACE: default
  6. STATUS: DEPLOYED
  7. ...
  8. See https://docs.arangodb.com/devel/Manual/Tutorials/Kubernetes/
  9. for how to get started.
  • Deploy ArangoDB cluster
  1. $ kubectl apply -f https://raw.githubusercontent.com/arangodb/kube-arangodb/master/examples/simple-cluster.yaml