#!/bin/bash ## ## Script to automate the Kubernetes CentOS client side pieces ## . ctrl-mgr_vars curl https://storage.googleapis.com/kubernetes-release/release/v1.11.2/bin/linux/amd64/kube-controller-manager -o /usr/local/bin/kube-controller-manager chmod 755 /usr/local/bin/kube-controller-manager mkdir -p /var/lib/kubernetes mv kube-controller-manager.kubeconfig /var/lib/kubernetes/ cat > /etc/systemd/system/kube-controller-manager.service << 'EOM' [Unit] Description=Kubernetes Controller Manager Documentation=https://github.com/GoogleCloudPlatform/kubernetes [Service] EnvironmentFile=-/etc/kubernetes/config EnvironmentFile=-/etc/kubernetes/controller-manager #User=kube ExecStart=/usr/local/bin/kube-controller-manager \ $KUBE_LOGTOSTDERR \ $KUBE_LOG_LEVEL \ $KUBE_MASTER \ $KUBE_CONTROLLER_MANAGER_ARGS Restart=on-failure LimitNOFILE=65536 [Install] WantedBy=multi-user.target EOM cat > /etc/kubernetes/controller-manager << 'EOM' ### # The following values are used to configure the kubernetes controller-manager # defaults from config and apiserver should be adequate # Add your own! KUBE_CONTROLLER_MANAGER_ARGS="--address=0.0.0.0 --cluster-cidr=$KUBE_POD_CIDR --cluster-name=kubernetes --cluster-signing-cert-file=/var/lib/kubernetes/ca.pem --cluster-signing-key-file=/var/lib/kubernetes/ca-key.pem --kubeconfig=/var/lib/kubernetes/kube-controller-manager.kubeconfig --leader-elect=true --root-ca-file=/var/lib/kubernetes/ca.pem --service-account-private-key-file=/var/lib/kubernetes/service-account-key.pem --service-cluster-ip-range=10.32.0.0/24 --use-service-account-credentials=true --v=2" EOM systemctl daemon-reload systemctl start kube-controller-manager systemctl enable kube-controller-manager echo "The next step is to create the Kubernetes Scheduler"