Appendix B. Test Cluster

Here are brief setup instructions for setting up a local Vagrant DC/OS Mesos cluster. The DC/OS Dashboard endpoint will be http://m1.dcos, the Mesos endpoint will be http://m1.dcos/mesos, the Marathon endpoint will be http://m1.dcos/marathon and the Chronos endpoint will be http://m1.dcos/service/chronos.

Detailed installation instructions are here: https://github.com/dcos/dcos-vagrant

B.1 Clone and Download files

First clone the dcos-vagrant project:

git clone https://github.com/dcos/dcos-vagrant.git

Copy the config file you’d like to use (the best file to use for our purposes is VagrantConfig-1m-3a-1p.yaml). From the root directory of the dcos-vagrant project execute:

cp VagrantConfig-1m-3a-1p.yaml VagrantConfig.yaml

Copy the etc/config-1.8.yaml file to etc/config.yaml and then add a line with

oauth_enabled: 'false'

to the end of this file and save it. This will disable any security for the cluster.

B.2 Start Vagrant VMs for the Mesos cluster

You need to install VirtualBox, Vagrant and Vagrant Host Manager Plugin. See Quick Start.

Download the DC/OS version you want to use, we used version 1.8.8 from https://dcos.io/releases/1.8.8/, and place this dcos_generate_config.sh file in the root directory of the cloned dcos-project.

Before we start the cluster we should define the config files we want to use:

export DCOS_CONFIG_PATH=etc/config.yaml
export DCOS_GENERATE_CONFIG_PATH=dcos_generate_config.sh

Now we are ready to start the Vagrant VMs. You can select different cluster configurations depending on your needs. We have tested using a single master, two private agents and one bootstrap node using this command:

vagrant up m1 a1 a2 boot

When you are done with the Mesos cluster you can destroy it using:

vagrant destroy -f

B.3 Install Chronos as a Service running in Marathon

You can install Chronos by using the following dcos command. This requires that you install the DC/OS CLI.

dcos package install chronos
[Note]Note

The more recent DC/OS versions include Marathon version 3.0 which has changed the API endpoints. The 1.2 version of Spring Cloud Deployer for Mesos now support this Chronos 3.0 version but it is no longer compatible with older Chronos versions.