DC/OS Deployment

Introduction

Every system operator always dreaming an infrastructure management tool like DCOS, makes job easier and more spare time.
As you know, mesosphere.com released it as Open Source project on 2016/04/19.
So I tried it the first time.
This post reords my steps followed the official guide.
In this example, all my node is running CentOS7(with yum -y update), I used 6 nodes(1 deploy, 1 master, 4 compute), and if you want master node High-Availability, 8 nodes(1 deploy, 3 master, 4 compute) is recommended.
After deployment, the deploy node can be destroyed, so it can be a temporary vm.

System Requirements

Please read system-requirements carefully.
First time, I encountered an issue. It’s a shell script in the progress of deployment, to change the storage-driver to overlayfs.
I don’t know why if run with this -H fd://, docker daemon can not get started.

$ sudo mkdir -p /etc/systemd/system/docker.service.d && sudo tee /etc/systemd/system/docker.service.d/override.conf <<- EOF
[Service]
ExecStart=
ExecStart=/usr/bin/docker daemon --storage-driver=overlay -H fd://
EOF
  • CentOS Linux release 7.2.1511 (Core)
  • Linux 3.10.0-327.13.1.el7.x86_64
  • docker 1.9.xx

So I upgraded docker to v1.11.0

Deployment Progress

change storage-driver from devicemapper to overlayfs

docker official docs of storage driver

service docker stop
# remove '-H fd://'
sed -ie "/DOCKER_STORAGE_OPTIONS/s/=.*/='--storage-driver=overlay'/" /etc/sysconfig/docker-storage
service docker start
# check if storage-driver is overlay
docker info

Download & Start the DC/OS installer

curl -O https://downloads.dcos.io/dcos/EarlyAccess/dcos_generate_config.sh
bash dcos_generate_config.sh --web -v

Launch the DC/OS web installer in your browser at: http://<bootstrap-node-public-ip>:9000.

Follow this GUI DC/OS Installation Guide.

Uninstall DC/OS

bash dcos_generate_config.sh --uninstall

Authentication opt-out

authentication-opt-out
If you are performing a custom advanced installation, you may opt out of Auth0-based authentication by adding the following directive to genconf/config.yaml (note that the quotes are currently required):

oauth_enabled: 'false'

On AWS, when creating a stack, at the Specify Details step, you may choose to set the OAuthEnabled option to false to disable authentication for the DC/OS installation.

The same option is not currently available when installing DC/OS through the Azure Marketplace, but will be added in a future release along with other options to customize authentication.

Resources

ELrepo
dcos on github
configure-your-cluster

All right, it’s show time