Vagrant Deployed Mesos Cluster with Calico

This guide will show you how to use Vagrant to launch a Mesos Cluster with Calico installed and ready to network Docker Containerizer tasks.

1. Install Dependencies

This guide requires a host machine with:

  • VirtualBox to host the virtual machines.
  • Vagrant to install and configure the machines in Virtual Box.
  • curl

1.2 Download the source files

mkdir demo; cd demo
curl -O https://docs.projectcalico.org/master/getting-started/mesos/installation/vagrant-centos/Vagrantfile
curl -O https://docs.projectcalico.org/master/getting-started/mesos/installation/vagrant-centos/calico.service
curl -O https://docs.projectcalico.org/master/getting-started/mesos/installation/vagrant-centos/marathon-lb.service
curl -O https://docs.projectcalico.org/master/getting-started/mesos/installation/vagrant-centos/mesos-dns.service

3. Startup

vagrant up

This starts a two node cluster with the cluster layout described below.

Access the Mesos and Marathon services at the following URLs:

Service URL
Mesos-Master UI http://172.24.197.101:5050
Marathon UI http://172.24.197.101:8080

Cluster Layout

Machine Type OS Hostname IP Address Services
Master Centos calico-01 172.24.197.101 mesos-master
        etcd
        docker
        zookeeper
        marathon
        marathon load-balancer
        calico-node
Agents Centos calico-01 172.24.197.102 mesos-agent
    calico-02 172.24.197.103 docker
        calico-node

4. SSH

To connect to your Vagrant boxes on OSX / Linux, see Vagrant’s SSH command. For Windows, see https://github.com/nickryand/vagrant-multi-putty.

5. Next Steps

With your cluster deployed, you can follow the tutorials on using Calico with Mesos.