blob: bcf57d999b6fc377c18b0ed300ced992bb169713 [file] [log] [blame]
Simon Pasquiera4e38252017-04-28 11:14:29 +02001#!/bin/bash -x
2exec > >(tee -i /tmp/"$(basename "$0" .sh)"_"$(date '+%Y-%m-%d_%H-%M-%S')".log) 2>&1
3
4# Create and distribute SSL certificates for services using salt state
5salt "*" state.sls salt
6
7# Install keepalived
8salt -C 'I@keepalived:cluster' state.sls keepalived -b 1
9
10# Install haproxy
11salt -C 'I@haproxy:proxy' state.sls haproxy
12salt -C 'I@haproxy:proxy' service.status haproxy
13
14# Install docker
15salt -C 'I@docker:host' state.sls docker.host
16salt -C 'I@docker:host' cmd.run "docker ps"
17
18# Install etcd
19salt -C 'I@etcd:server' state.sls etcd.server.service
20salt -C 'I@etcd:server' cmd.run "etcdctl cluster-health"
21
22# Install Kubernetes and Calico
23salt -C 'I@kubernetes:master' state.sls kubernetes.master.kube-addons
24salt -C 'I@kubernetes:pool' state.sls kubernetes.pool
25salt -C 'I@kubernetes:pool' cmd.run "calicoctl node status"
26salt -C 'I@kubernetes:pool' cmd.run "calicoctl get ippool"
27
28# Setup NAT for Calico
29salt -C 'I@kubernetes:master' state.sls etcd.server.setup
30
31# Run whole master to check consistency
32salt -C 'I@kubernetes:master' state.sls kubernetes exclude=kubernetes.master.setup
33
34# Register addons
35salt -C 'I@kubernetes:master' --subset 1 state.sls kubernetes.master.setup
36
37# Nginx needs to be configured
38salt -C 'I@nginx:server' state.sls nginx