Last active
January 16, 2020 05:58
-
-
Save vaayne/4293370532a308fd01cfa59417e9d01e to your computer and use it in GitHub Desktop.
Kubeadm master init
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/sh | |
echo "Init env" | |
curl https://gist.githubusercontent.com/Vaayne/043226626c1e7987613b9b5e7ea7bbaa/raw/b64f6c1c47e7f7aa2ec25431583259eea8bcde86/kubeadm_init_install.sh -o install.sh | |
sh install.sh | |
echo "Kubeadm init" | |
kubeadm init | |
echo "make kubectl usable" | |
mkdir -p $HOME/.kube | |
cp -i /etc/kubernetes/admin.conf $HOME/.kube/config | |
chown $(id -u):$(id -g) $HOME/.kube/config | |
echo "Install pod network add-on" | |
kubectl apply -f https://docs.projectcalico.org/v3.11/manifests/calico.yaml | |
# Disable Control plane node isolation | |
kubectl taint nodes --all node-role.kubernetes.io/master- | |
# Install Helm | |
curl https://raw.githubusercontent.com/helm/helm/master/scripts/get-helm-3 > get_helm.sh | |
chmod 700 get_helm.sh | |
./get_helm.sh | |
helm init | |
# add helm stable repo | |
helm repo add stable https://kubernetes-charts.storage.googleapis.com | |
helm repo update | |
# Install nginx ingress on master node | |
helm install nginx-ingress stable/nginx-ingress \ | |
-n kube-system \ | |
--set controller.hostNetwork=true \ | |
--set controller.nodeSelector."node-role\\.kubernetes\\.io/master"="" | |
# Install cert manager by helm | |
kubectl create namespace cert-manager | |
kubectl apply -f https://github.com/jetstack/cert-manager/releases/download/v0.12.0/cert-manager.yaml | |
helm repo add jetstack https://charts.jetstack.io | |
helm repo update | |
helm install \ | |
cert-manager \ | |
--namespace cert-manager \ | |
--version v0.12.0 \ | |
jetstack/cert-manager |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment