Using the ArangoDB Starter

    As a precondition you should create a secret to activate authentication. The Starter provides a handyfunctionality to generate such a file:

    Set appropriate privilege on the generated secret file, e.g. on Linux:

    If you only want a local test Cluster, you can run a single Starter with the —starter.local argument. It will start a 3 “machine” Cluster on your local PC:

    Please adapt the path to your secret file accordingly.

    Note: a local Cluster is intended only for test purposes since a failure of a single PC will bring down the entire Cluster.

    If you want to start a Cluster using the Starter, you need to copy the secret file to every machineand start the Cluster using the following command:

      Please adapt the path to your secret file accordingly.

      Once all the processes started by the Starter are up and running, and joined theCluster (this may take a while depending on your system), the Starter will informyou where to connect the Cluster from a Browser, shell or your program.

      For a full list of options of the Starter please refer to section.

      The Starter can also be used to launch Clusters based on Docker containers:

      Run the above command on machine A, B & C.

      If you use an ArangoDB version of 3.4 or above and use the EnterpriseEdition Docker image, you have to set the license key in an environmentvariable by adding this option to the above docker command:

      1. -e ARANGO_LICENSE_KEY=<thekey>

      You can get a free evaluation license key by visiting:

      www.arangodb.com/download-arangodb-enterprise/

      TLS verified Docker services

      Oftentimes, one needs to harden Docker services using client certificate and TLS verification. The Docker API allows subsequently only certified access.As the ArangoDB starter starts the ArangoDB cluster instances using this Docker API, it is mandatory that the ArangoDB starter is deployed with the proper certificateshanded to it, so that the above command is modified as follows:

      Note that the environment variables DOCKER_TLS_VERIFY and as well as the additional mountpoint containing the certificate have been added above. directory. The assignment of DOCKER_CERT_PATH is optional, in which case it is mandatory that the certificates are stored in $HOME/.docker. Sothe command would then be as follows

      1. export IP=<IP of docker host>
      2. docker volume create arangodb
      3. docker run -it --name=adb --rm -p 8528:8528 \
      4. -v arangodb:/data \
      5. -v /path/to/cert:/root/.docker \
      6. -e DOCKER_TLS_VERIFY=1 \
      7. arangodb/arangodb-starter \
      8. --starter.address=$IP \
      9. --starter.join=A,B,C

      The first arangodb you ran will become the master of your Starter_setup, the other instances will become the _slaves of your Starter_setup. Please do not confuse the terms _master and slave above with the master/slavetechnology of ArangoDB. The terms above refers to the Starter setup.

      The Starter__master determines which ArangoDB server processes to launch on whichStarter__slave, and how they should communicate.

      It will then launch the server processes and monitor them. Once it has detectedthat the setup is complete you will get the prompt.

      The Starter__master will save the setup for subsequent starts.