This example runs Oinker-Go on Marathon on DC/OS Vagrant with Cassandra-Mesos and Marathon-LB.
-
Follow the dcos-vagrant setup steps to configure your installation.
-
Use vagrant to deploy a cluster with 1 (large) private agent node and 1 (small) public agent node (requires 9.5 GB free memory):
cp VagrantConfig-1m-1a-1p.yaml VagrantConfig.yaml vagrant up
-
Log into the DC/OS UI with a browser: http://m1.dcos/.
-
Install the DC/OS CLI
curl https://raw.githubusercontent.com/dcos/dcos-vagrant/master/ci/dcos-install-cli.sh | bash
-
Log into DC/OS with the DC/OS CLI:
dcos auth login
Follow the printed instructions to authenticate.
If you were previously logged into a different cluster, you may have to logout first.
-
Install the cassandra package using a low memory, single-node configuration:
dcos package install --options=examples/oinker/pkg-cassandra.json cassandra --package-version=1.0.25-3.0.10 --yes
-
Wait for the Cassandra service to be running and healthy. Check the DC/OS Services UI: http://m1.dcos/#/services/.
The Cassandra service should deploy 1 scheduler task and 1 cassandra node task on private DC/OS nodes. These can be seen on the service detail page. The service won't be marked as healthy or done deploying until both tasks are running and healthy.
For Mesosphere Enterprise DC/OS, follow the instructions to Install Marathon-LB on Mesosphere Enterprise DC/OS.
For open DC/OS, use the following steps to configure and install Marathon-LB:
-
Install the marathon-lb package using a low memory configuration:
dcos package install --options=examples/oinker/pkg-marathon-lb.json marathon-lb --yes
-
Wait for the Marathon-LB service to be running and healthy. Check the DC/OS Services UI: http://m1.dcos/#/services/.
The Marathon-LB service should deploy 1 task on the public DC/OS node. This can be seen on the service detail page.
-
Create the Oinker app:
dcos marathon app add examples/oinker/oinker.json
-
Wait for Marathon to deploy 3 app instances.
dcos marathon app show oinker | jq -r '"\(.tasksHealthy)/\(.tasksRunning)/\(.instances)"'
-
Visit the load-balanced endpoint in a browser: http://oinker.acme.org/