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 and cluster 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://www.arangodb.com/docs/stable/tutorials-kubernetes.html
    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