Skip to content

Instantly share code, notes, and snippets.

@mnaser
Last active September 4, 2019 23:31
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save mnaser/472826bd87eb399a363aed6d9ed2c5ad to your computer and use it in GitHub Desktop.
Save mnaser/472826bd87eb399a363aed6d9ed2c5ad to your computer and use it in GitHub Desktop.
Kubernetes Bootstrap
#!/bin/bash
cat <<EOF > /etc/kubernetes/kubeadm.conf
--
apiVersion: kubeadm.k8s.io/v1beta2
kind: InitConfiguration
localAPIEndpoint:
bindPort: 16443
---
apiVersion: kubeadm.k8s.io/v1beta2
kind: ClusterConfiguration
controlPlaneEndpoint: "LOAD_BALANCER_DNS:LOAD_BALANCER_PORT"
apiServer:
extraArgs:
oidc-issuer-url: https://accounts.google.com
oidc-username-claim: email
oidc-client-id: 1075333334902-iqnm5nbme0c36eir9gub5m62e6pbkbqe.apps.googleusercontent.com
networking:
podSubnet: 10.244.0.0/16
EOF
kubeadm init --config /etc/kubernetes/kubeadm.conf --upload-certs
#!/bin/bash
set -e
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
cat <<EOF > /etc/yum.repos.d/kubernetes.repo
[kubernetes]
name=Kubernetes
baseurl=https://packages.cloud.google.com/yum/repos/kubernetes-el7-x86_64
enabled=1
gpgcheck=1
repo_gpgcheck=1
gpgkey=https://packages.cloud.google.com/yum/doc/yum-key.gpg https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg
EOF
yum -y install docker-ce docker-ce-cli containerd.io kubelet kubeadm kubectl
mkdir /etc/docker
cat > /etc/docker/daemon.json <<EOF
{
"exec-opts": ["native.cgroupdriver=systemd"],
"log-driver": "json-file",
"log-opts": {
"max-size": "100m"
},
"storage-driver": "overlay2"
}
EOF
systemctl enable --now docker kubelet
systemctl start docker kubelet
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment