-
-
Save gitlabbin/360ab9e584a357066e85551b26ba8d8d to your computer and use it in GitHub Desktop.
Revisions
-
onuryilmaz revised this gist
Sep 21, 2017 . 1 changed file with 13 additions and 0 deletions.There are no files selected for viewing
This file contains hidden or 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 charactersOriginal file line number Diff line number Diff line change @@ -1,3 +1,15 @@ # Install Docker * Download all dependencies from by following the documentation https://docs.docker.com/engine/installation/linux/docker-ce/centos/#install-using-the-repository ``` yumdownloader --resolve yum-utils device-mapper-persistent-data lvm2 yumdownloader --resolve docker-ce ``` * Copy to master node and install afterwards: ``` yum install -y *.rpm ``` # On master and nodes ## Pull images form internet access laptop @@ -116,6 +128,7 @@ sysctl -p ## Download kubernetes rpms ``` yumdownloader --resolve ebtables ethtool iproute iptables libmnl libnetfilter_conntrack libnfnetlink socat tcp_wrappers-libs wget https://packages.cloud.google.com/yum/pool/e6aef7b2b7d9e5bd4db1e5747ebbc9f1f97bbfb8c7817ad68028565ca263a672-kubectl-1.6.0.x86_64.rpm wget https://packages.cloud.google.com/yum/pool/af8567f1ba6f8dc1d43b60702d45c02aca88607b0e721d76897e70f6a6e53115-kubelet-1.6.0.x86_64.rpm wget https://packages.cloud.google.com/yum/pool/e7a4403227dd24036f3b0615663a371c4e07a95be5fee53505e647fd8ae58aa6-kubernetes-cni-0.5.1.x86_64.rpm -
onuryilmaz revised this gist
Sep 21, 2017 . 1 changed file with 3 additions and 1 deletion.There are no files selected for viewing
This file contains hidden or 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 charactersOriginal file line number Diff line number Diff line change @@ -217,5 +217,7 @@ kubeadm join --token <token> <master-ip> # Trick and tips ``` curl -LO https://storage.googleapis.com/kubernetes-release/release/v1.7.0/bin/linux/amd64/kubectl chmod +x ./kubectl sudo mv ./kubectl /usr/local/bin/kubectl ``` -
onuryilmaz revised this gist
Sep 21, 2017 . 1 changed file with 4 additions and 4 deletions.There are no files selected for viewing
This file contains hidden or 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 charactersOriginal file line number Diff line number Diff line change @@ -116,10 +116,10 @@ sysctl -p ## Download kubernetes rpms ``` wget https://packages.cloud.google.com/yum/pool/e6aef7b2b7d9e5bd4db1e5747ebbc9f1f97bbfb8c7817ad68028565ca263a672-kubectl-1.6.0.x86_64.rpm wget https://packages.cloud.google.com/yum/pool/af8567f1ba6f8dc1d43b60702d45c02aca88607b0e721d76897e70f6a6e53115-kubelet-1.6.0.x86_64.rpm wget https://packages.cloud.google.com/yum/pool/e7a4403227dd24036f3b0615663a371c4e07a95be5fee53505e647fd8ae58aa6-kubernetes-cni-0.5.1.x86_64.rpm wget https://packages.cloud.google.com/yum/pool/5116fa4b73c700823cfc76b3cedff6622f2fbd0a3d2fa09bce6d93329771e291-kubeadm-1.6.0.x86_64.rpm ``` ## Copy kubernetes rpms to the remote server -
onuryilmaz revised this gist
Sep 21, 2017 . 1 changed file with 38 additions and 36 deletions.There are no files selected for viewing
This file contains hidden or 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 charactersOriginal file line number Diff line number Diff line change @@ -26,25 +26,25 @@ docker pull weaveworks/weave-kube:2.0.4 ## Save docker images to tarball ``` docker save gcr.io/google_containers/kube-apiserver-amd64:v1.6.0 > kube-apiserver-amd64:v1.6.0.tar docker save gcr.io/google_containers/kube-controller-manager-amd64:v1.6.0 > kube-controller-manager-amd64:v1.6.0.tar docker save gcr.io/google_containers/kube-proxy-amd64:v1.6.0 > kube-proxy-amd64:v1.6.0.tar docker save gcr.io/google_containers/kube-scheduler-amd64:v1.6.0 > kube-scheduler-amd64:v1.6.0.tar docker save gcr.io/google_containers/kubernetes-dashboard-amd64:v1.6.0 > kubernetes-dashboard-amd64:v1.6.0.tar docker save gcr.io/google_containers/etcd-amd64:3.0.17 > etcd-amd64:3.0.17.tar docker save gcr.io/google_containers/k8s-dns-kube-dns-amd64:1.14.1 > k8s-dns-kube-dns-amd64:1.14.1.tar docker save gcr.io/google_containers/k8s-dns-dnsmasq-nanny-amd64:1.14.1 > k8s-dns-dnsmasq-nanny-amd64:1.14.1.tar docker save gcr.io/google_containers/k8s-dns-sidecar-amd64:1.14.1 > k8s-dns-sidecar-amd64:1.14.1.tar docker save quay.io/coreos/flannel:v0.7.1-amd64 > flannel:v0.7.1-amd64.tar docker save gcr.io/google_containers/pause-amd64:3.0 > gcr.io/google_containers/pause-amd64:3.0.tar docker save gcr.io/kubernetes-helm/tiller:v2.3.0 > gcr.io/kubernetes-helm/tiller:v2.3.0.tar docker save registry > registry.tar docker save busybox > busybox.tar docker save weaveworks/weave-npc:2.0.4 > weave-npc:2.0.4.tar docker save weaveworks/weave-kube:2.0.4 > weave-kube:2.0.4.tar * docker save gcr.io/google-containers/kube-addon-manager:v6.1 > kube-addon-manager:v6.1.tar * docker save gcr.io/google_containers/exechealthz-amd64:1.2 > exechealthz-amd64:1.2.tar * docker save gcr.io/google_containers/kube-discovery-amd64:1.0 > kube-discovery-amd64:1.0.tar ``` ## Copy docker images tarball to the remote server @@ -68,23 +68,25 @@ systemctl enable docker && systemctl start docker ## Load docker images on remote server ``` docker load < kube-apiserver-amd64:v1.6.0.tar docker load < kube-controller-manager-amd64:v1.6.0.tar docker load < kube-proxy-amd64:v1.6.0.tar docker load < kube-scheduler-amd64:v1.6.0.tar docker load < kubernetes-dashboard-amd64:v1.6.0.tar docker load < etcd-amd64:3.0.17.tar docker load < k8s-dns-kube-dns-amd64:1.14.1.tar docker load < k8s-dns-dnsmasq-nanny-amd64:1.14.1.tar docker load < k8s-dns-sidecar-amd64:1.14.1.tar docker load < flannel:v0.7.1-amd64.tar docker load < gcr.io/google_containers/pause-amd64:3.0.tar docker load < gcr.io/kubernetes-helm/tiller:v2.3.0.tar docker load < registry.tar docker load < busybox.tar docker load < weave-npc:2.0.4.tar docker load < weave-kube:2.0.4.tar * docker load < kube-addon-manager:v6.1.tar * docker load < exechealthz-amd64:1.2.tar * docker load < kube-discovery-amd64:1.0.tar ``` ## For Centos7, enable sysctl configuration -
onuryilmaz revised this gist
Sep 21, 2017 . 1 changed file with 38 additions and 39 deletions.There are no files selected for viewing
This file contains hidden or 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 charactersOriginal file line number Diff line number Diff line change @@ -2,50 +2,49 @@ ## Pull images form internet access laptop ``` docker pull gcr.io/google_containers/kube-apiserver-amd64:v1.6.0 docker pull gcr.io/google_containers/kube-controller-manager-amd64:v1.6.0 docker pull gcr.io/google_containers/kube-proxy-amd64:v1.6.0 docker pull gcr.io/google_containers/kube-scheduler-amd64:v1.6.0 docker pull gcr.io/google_containers/kubernetes-dashboard-amd64:v1.6.0 docker pull gcr.io/google_containers/etcd-amd64:3.0.17 docker pull gcr.io/google_containers/k8s-dns-kube-dns-amd64:1.14.1 docker pull gcr.io/google_containers/k8s-dns-dnsmasq-nanny-amd64:1.14.1 docker pull gcr.io/google_containers/k8s-dns-sidecar-amd64:1.14.1 docker pull quay.io/coreos/flannel:v0.7.1-amd64 docker pull gcr.io/google_containers/pause-amd64:3.0 docker pull gcr.io/kubernetes-helm/tiller:v2.3.0 docker pull registry docker pull busybox docker pull weaveworks/weave-npc:2.0.4 docker pull weaveworks/weave-kube:2.0.4 * docker pull gcr.io/google-containers/kube-addon-manager:v6.1 * docker pull gcr.io/google_containers/exechealthz-amd64:1.2 * docker pull gcr.io/google_containers/kube-discovery-amd64:1.0 ``` ## Save docker images to tarball ``` docker save gcr.io/google_containers/kube-apiserver-amd64:v1.6.0 docker save gcr.io/google_containers/kube-controller-manager-amd64:v1.6.0 docker save gcr.io/google_containers/kube-proxy-amd64:v1.6.0 docker save gcr.io/google_containers/kube-scheduler-amd64:v1.6.0 docker save gcr.io/google_containers/kubernetes-dashboard-amd64:v1.6.0 docker save gcr.io/google_containers/etcd-amd64:3.0.17 docker save gcr.io/google_containers/k8s-dns-kube-dns-amd64:1.14.1 docker save gcr.io/google_containers/k8s-dns-dnsmasq-nanny-amd64:1.14.1 docker save gcr.io/google_containers/k8s-dns-sidecar-amd64:1.14.1 docker save quay.io/coreos/flannel:v0.7.1-amd64 docker save gcr.io/google_containers/pause-amd64:3.0 docker save gcr.io/kubernetes-helm/tiller:v2.3.0 docker save registry docker save busybox docker save weaveworks/weave-npc:2.0.4 docker save weaveworks/weave-kube:2.0.4 * docker save gcr.io/google-containers/kube-addon-manager:v6.1 * docker save gcr.io/google_containers/exechealthz-amd64:1.2 * docker save gcr.io/google_containers/kube-discovery-amd64:1.0 ``` ## Copy docker images tarball to the remote server -
onuryilmaz revised this gist
Sep 21, 2017 . 1 changed file with 19 additions and 14 deletions.There are no files selected for viewing
This file contains hidden or 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 charactersOriginal file line number Diff line number Diff line change @@ -2,23 +2,28 @@ ## Pull images form internet access laptop ``` * docker pull gcr.io/google_containers/kube-apiserver-amd64:v1.6.0 * docker pull gcr.io/google_containers/kube-controller-manager-amd64:v1.6.0 * docker pull gcr.io/google_containers/kube-proxy-amd64:v1.6.0 * docker pull gcr.io/google_containers/kube-scheduler-amd64:v1.6.0 * docker pull gcr.io/google_containers/kubernetes-dashboard-amd64:v1.6.0 * docker pull gcr.io/google_containers/etcd-amd64:3.0.17 * docker pull gcr.io/google_containers/k8s-dns-kube-dns-amd64:1.14.1 * docker pull gcr.io/google_containers/k8s-dns-dnsmasq-nanny-amd64:1.14.1 * docker pull gcr.io/google_containers/k8s-dns-sidecar-amd64:1.14.1 * docker pull quay.io/coreos/flannel:v0.7.1-amd64 * docker pull gcr.io/google_containers/pause-amd64:3.0 * docker pull gcr.io/kubernetes-helm/tiller:v2.3.0 * docker pull registry * docker pull busybox * docker pull weaveworks/weave-npc:2.0.4 * docker pull weaveworks/weave-kube:2.0.4 docker pull gcr.io/google_containers/kubedns-amd64:1.9 docker pull gcr.io/google_containers/dnsmasq-metrics-amd64:1.0 docker pull gcr.io/google-containers/kube-addon-manager:v6.1 docker pull gcr.io/google_containers/exechealthz-amd64:1.2 docker pull gcr.io/google_containers/kube-discovery-amd64:1.0 ``` ## Save docker images to tarball -
JG² revised this gist
Jan 12, 2017 . 1 changed file with 0 additions and 16 deletions.There are no files selected for viewing
This file contains hidden or 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 charactersOriginal file line number Diff line number Diff line change @@ -1,19 +1,3 @@ # On master and nodes ## Pull images form internet access laptop -
JG² revised this gist
Jan 12, 2017 . 1 changed file with 190 additions and 66 deletions.There are no files selected for viewing
This file contains hidden or 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 charactersOriginal file line number Diff line number Diff line change @@ -1,107 +1,231 @@ lvcreate -L 200G -n lv_BNPPFCIP vg_apps mkfs.ext4 /dev/vg_apps/lv_BNPPFCIP mkdir -p /apps/BNPPFCIP/Kubernetes mkdir -p /apps/BNPPFCIP/docker mount /dev/vg_apps/lv_BNPPFCIP /apps/BNPPFCIP echo "/dev/vg_apps/lv_BNPPFCIP /apps/BNPPFCIP ext4 defaults 1 2" >> /etc/fstab mkdir -p /apps/BNPPFCIP/docker/var/lib/docker scp -r . [email protected]:/apps/BNPPFCIP/Kubernetes/ cd /apps/BNPPFCIP/Kubernetes/docker-rpm/ yum install -y *.rpm systemctl enable docker && systemctl start docker cd /apps/BNPPFCIP/Kubernetes/kube-images # On master and nodes ## Pull images form internet access laptop ``` docker pull gcr.io/google_containers/kube-apiserver-amd64:v1.5.0 docker pull gcr.io/google_containers/kube-controller-manager-amd64:v1.5.0 docker pull gcr.io/google_containers/kube-proxy-amd64:v1.5.0 docker pull gcr.io/google_containers/kube-scheduler-amd64:v1.5.0 docker pull weaveworks/weave-npc:1.8.2 docker pull weaveworks/weave-kube:1.8.2 docker pull gcr.io/google_containers/kubernetes-dashboard-amd64:v1.5.0 docker pull gcr.io/google-containers/kube-addon-manager:v6.1 docker pull gcr.io/google_containers/etcd-amd64:3.0.14-kubeadm docker pull gcr.io/google_containers/kubedns-amd64:1.9 docker pull gcr.io/google_containers/dnsmasq-metrics-amd64:1.0 docker pull gcr.io/google_containers/kubedns-amd64:1.8 docker pull gcr.io/google_containers/kube-dnsmasq-amd64:1.4 docker pull gcr.io/google_containers/kube-discovery-amd64:1.0 docker pull quay.io/coreos/flannel-git:v0.6.1-28-g5dde68d-amd64 docker pull gcr.io/google_containers/exechealthz-amd64:1.2 docker pull gcr.io/google_containers/pause-amd64:3.0 ``` ## Save docker images to tarball ``` docker save gcr.io/google_containers/kube-apiserver-amd64:v1.5.0 > kube-apiserver-amd64_v1.5.0.tar docker save gcr.io/google_containers/kube-controller-manager-amd64:v1.5.0 > kube-controller-manager-amd64_v1.5.0.tar docker save gcr.io/google_containers/kube-proxy-amd64:v1.5.0 > kube-proxy-amd64_v1.5.0.tar docker save gcr.io/google_containers/kube-scheduler-amd64:v1.5.0 > kube-scheduler-amd64_v1.5.0.tar docker save weaveworks/weave-npc:1.8.2 > weave-npc_1.8.2.tar docker save weaveworks/weave-kube:1.8.2 > weave-kube_1.8.2.tar docker save gcr.io/google_containers/kubernetes-dashboard-amd64:v1.5.0 > kubernetes-dashboard-amd64_v1.5.0.tar docker save gcr.io/google-containers/kube-addon-manager:v6.1 > kube-addon-manager_v6.1.tar docker save gcr.io/google_containers/etcd-amd64:3.0.14-kubeadm > etcd-amd64_3.0.14-kubeadm.tar docker save gcr.io/google_containers/kubedns-amd64:1.9 > kubedns-amd64_1.9.tar docker save gcr.io/google_containers/dnsmasq-metrics-amd64:1.0 > dnsmasq-metrics-amd64_1.0.tar docker save gcr.io/google_containers/kubedns-amd64:1.8 > kubedns-amd64_1.8.tar docker save gcr.io/google_containers/kube-dnsmasq-amd64:1.4 > kube-dnsmasq-amd64_1.4.tar docker save gcr.io/google_containers/kube-discovery-amd64:1.0 > kube-discovery-amd64_1.0.tar docker save quay.io/coreos/flannel-git:v0.6.1-28-g5dde68d-amd64 > flannel-git_v0.6.1-28-g5dde68d-amd64.tar docker save gcr.io/google_containers/exechealthz-amd64:1.2 > exechealthz-amd64_1.2.tar docker save gcr.io/google_containers/pause-amd64:3.0 > pause-amd64_3.0.tar ``` ## Copy docker images tarball to the remote server ``` scp <folder_with_images>/*.tar <user>@<server>:<path>/<to>/<remote>/<folder> ``` ## Ensure docker is started ``` systemctl status docker ``` ### In case docker is not started ``` systemctl enable docker && systemctl start docker ``` ## Load docker images on remote server ``` docker load < kube-apiserver-amd64_v1.5.0.tar docker load < kube-controller-manager-amd64_v1.5.0.tar docker load < kube-proxy-amd64_v1.5.0.tar docker load < kube-scheduler-amd64_v1.5.0.tar docker load < weave-npc_1.8.2.tar docker load < weave-kube_1.8.2.tar docker load < kubernetes-dashboard-amd64_v1.5.0.tar docker load < kube-addon-manager_v6.1.tar docker load < etcd-amd64_3.0.14-kubeadm.tar docker load < kubedns-amd64_1.9.tar docker load < dnsmasq-metrics-amd64_1.0.tar docker load < kubedns-amd64_1.8.tar docker load < kube-dnsmasq-amd64_1.4.tar docker load < kube-discovery-amd64_1.0.tar docker load < flannel-git_v0.6.1-28-g5dde68d-amd64.tar docker load < exechealthz-amd64_1.2.tar docker load < pause-amd64_3.0.tar ``` ## For Centos7, enable sysctl configuration ### edit `/etc/sysctl.conf` ``` vi /etc/sysctl.conf ``` ### modify `net.ipv4.ip_forward = 0` to `net.ipv4.ip_forward = 1` ## Append ``` net.bridge.bridge-nf-call-iptables = 1 net.bridge.bridge-nf-call-ip6tables = 1 ``` ### Reload properties ``` sysctl -p ``` ## Download kubernetes rpms ``` wget https://packages.cloud.google.com/yum/pool/93af9d0fbd67365fa5bf3f85e3d36060138a62ab77e133e35f6cadc1fdc15299-kubectl-1.5.1-0.x86_64.rpm wget https://packages.cloud.google.com/yum/pool/8a299eb1db946b2bdf01c5d5c58ef959e7a9d9a0dd706e570028ebb14d48c42e-kubelet-1.5.1-0.x86_64.rpm wget https://packages.cloud.google.com/yum/pool/567600102f687e0f27bd1fd3d8211ec1cb12e71742221526bb4e14a412f4fdb5-kubernetes-cni-0.3.0.1-0.07a8a2.x86_64.rpm wget https://packages.cloud.google.com/yum/pool/5612db97409141d7fd839e734d9ad3864dcc16a630b2a91c312589a0a0d960d0-kubeadm-1.6.0-0.alpha.0.2074.a092d8e0f95f52.x86_64.rpm ``` ## Copy kubernetes rpms to the remote server ``` scp <folder_with_rpms>/*.rpm <user>@<server>:<path>/<to>/<remote>/<folder> ``` ## Install kubernetes tools ``` yum install -y *.rpm systemctl enable kubelet && systemctl start kubelet ``` # On master ## Kubeadm installation Follow instruction from https://kubernetes.io/docs/getting-started-guides/kubeadm/ (Starting from (2/4) Initializing your master) ### initalization ``` kubeadm init ... [kubeadm] WARNING: kubeadm is in alpha, please do not use it for production clusters. [preflight] Running pre-flight checks [init] Using Kubernetes version: v1.5.1 [tokens] Generated token: "064158.548b9ddb1d3fad3e" [certificates] Generated Certificate Authority key and certificate. [certificates] Generated API Server key and certificate [certificates] Generated Service Account signing keys [certificates] Created keys and certificates in "/etc/kubernetes/pki" [kubeconfig] Wrote KubeConfig file to disk: "/etc/kubernetes/kubelet.conf" [kubeconfig] Wrote KubeConfig file to disk: "/etc/kubernetes/admin.conf" [apiclient] Created API client, waiting for the control plane to become ready [apiclient] All control plane components are healthy after 61.317580 seconds [apiclient] Waiting for at least one node to register and become ready [apiclient] First node is ready after 6.556101 seconds [apiclient] Creating a test deployment [apiclient] Test deployment succeeded [token-discovery] Created the kube-discovery deployment, waiting for it to become ready [token-discovery] kube-discovery is ready after 6.020980 seconds [addons] Created essential addon: kube-proxy [addons] Created essential addon: kube-dns Your Kubernetes master has initialized successfully! You should now deploy a pod network to the cluster. Run "kubectl apply -f [podnetwork].yaml" with one of the options listed at: http://kubernetes.io/docs/admin/addons/ You can now join any number of machines by running the following on each node: kubeadm join --token=<token> <master-ip> # Copy the previous line ... ``` ### Network configuration #### Download weave plugin configuration (with internet) ``` wget https://git.io/weave-kube mv weave-kube weave-kube.yml ``` #### Copy weave plugin configuration ``` scp <folder_with_weave_yml>/weave-kube.yml <user>@<server>:<path>/<to>/<remote>/<folder> ``` #### Apply plugin ``` kubectl apply -f <folder_with_weave_yml>/weave-kube.yml ``` #### Fix kube-proxy problem ``` kubectl -n kube-system get ds -l "component=kube-proxy" -o json | jq ".items[0].spec.template.spec.containers[0].command |= .+ [\"--proxy-mode=userspace\"]" | kubectl apply -f - && kubectl -n kube-system delete pods -l "component=kube-proxy" ``` # On Node kubeadm join --token <token> <master-ip> # Trick and tips ``` wget https://storage.googleapis.com/kubernetes-release/release/v1.4.6/kubernetes-client-linux-amd64.tar.gz ``` -
JG² created this gist
Jan 12, 2017 .There are no files selected for viewing
This file contains hidden or 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 charactersOriginal file line number Diff line number Diff line change @@ -0,0 +1,107 @@ docker load < dnsmasq-metrics-amd64_1.0.tar docker load < etcd-amd64_3.0.14-kubeadm.tar docker load < exechealthz-amd64_1.2.tar docker load < flannel-git_v0.6.1-28-g5dde68d-amd64.tar docker load < kube-addon-manager_v6.1.tar docker load < kube-apiserver-amd64_v1.5.0.tar docker load < kube-controller-manager-amd64_v1.5.0.tar docker load < kube-discovery-amd64_1.0.tar docker load < kubedns-amd64_1.8.tar docker load < kubedns-amd64_1.9.tar docker load < kube-dnsmasq-amd64_1.4.tar docker load < kube-proxy-amd64_v1.5.0.tar docker load < kubernetes-dashboard-amd64_v1.5.0.tar docker load < kube-scheduler-amd64_v1.5.0.tar docker load < pause-amd64_3.0.tar docker load < weave-kube_1.8.2.tar docker load < weave-npc_1.8.2.tar vi /etc/sysctl.conf modify net.ipv4.ip_forward = 0 to net.ipv4.ip_forward = 1 add net.bridge.bridge-nf-call-iptables = 1 net.bridge.bridge-nf-call-ip6tables = 1 sysctl -p cd /apps/BNPPFCIP/Kubernetes/kube-rpm/ yum install -y *.rpm systemctl enable kubelet && systemctl start kubelet docker pull gcr.io/google_containers/etcd-amd64:3.0.14-kubeadm docker pull gcr.io/google_containers/kube-controller-manager-amd64:v1.5.0 docker pull gcr.io/google_containers/kube-apiserver-amd64:v1.5.0 docker pull gcr.io/google_containers/kube-scheduler-amd64:v1.5.0 docker pull gcr.io/google_containers/kube-proxy-amd64:v1.5.0 docker pull gcr.io/google_containers/dnsmasq-metrics-amd64:1.0 docker pull gcr.io/google_containers/kube-discovery-amd64:1.0 docker pull gcr.io/google_containers/kubedns-amd64:1.9 docker pull quay.io/coreos/flannel-git:v0.6.1-28-g5dde68d-amd64 docker pull weaveworks/weave-npc:1.8.2 docker save gcr.io/google_containers/kubernetes-dashboard-amd64:v1.5.0 > kubernetes-dashboard-amd64_v1.5.0.tar docker save gcr.io/google-containers/kube-addon-manager:v6.1 > kube-addon-manager_v6.1.tar docker save gcr.io/google_containers/kubedns-amd64:1.8 > kubedns-amd64_1.8.tar docker save gcr.io/google_containers/kube-dnsmasq-amd64:1.4 > kube-dnsmasq-amd64_1.4.tar docker save gcr.io/google_containers/exechealthz-amd64:1.2 > exechealthz-amd64_1.2.tar docker save gcr.io/google_containers/pause-amd64:3.0 > pause-amd64_3.0.tar docker save gcr.io/google_containers/kube-scheduler-amd64:v1.5.0 > kube-scheduler-amd64_v1.5.0.tar docker save gcr.io/google_containers/etcd-amd64:3.0.14-kubeadm > etcd-amd64_3.0.14-kubeadm.tar docker save gcr.io/google_containers/kube-controller-manager-amd64:v1.5.0 > kube-controller-manager-amd64_v1.5.0.tar docker save gcr.io/google_containers/kube-apiserver-amd64:v1.5.0 > kube-apiserver-amd64_v1.5.0.tar docker save gcr.io/google_containers/kube-proxy-amd64:v1.5.0 > kube-proxy-amd64_v1.5.0.tar docker save gcr.io/google_containers/dnsmasq-metrics-amd64:1.0 > dnsmasq-metrics-amd64_1.0.tar docker save gcr.io/google_containers/kube-discovery-amd64:1.0 > kube-discovery-amd64_1.0.tar docker save quay.io/coreos/flannel-git:v0.6.1-28-g5dde68d-amd64 > flannel-git_v0.6.1-28-g5dde68d-amd64.tar docker save gcr.io/google_containers/kubedns-amd64:1.9 > kubedns-amd64_1.9.tar docker save weaveworks/weave-npc:1.8.2 > weave-npc_1.8.2.tar docker save weaveworks/weave-kube:1.8.2 > weave-kube_1.8.2.tar wget https://packages.cloud.google.com/yum/pool/93af9d0fbd67365fa5bf3f85e3d36060138a62ab77e133e35f6cadc1fdc15299-kubectl-1.5.1-0.x86_64.rpm wget https://packages.cloud.google.com/yum/pool/8a299eb1db946b2bdf01c5d5c58ef959e7a9d9a0dd706e570028ebb14d48c42e-kubelet-1.5.1-0.x86_64.rpm wget https://packages.cloud.google.com/yum/pool/567600102f687e0f27bd1fd3d8211ec1cb12e71742221526bb4e14a412f4fdb5-kubernetes-cni-0.3.0.1-0.07a8a2.x86_64.rpm wget https://packages.cloud.google.com/yum/pool/5612db97409141d7fd839e734d9ad3864dcc16a630b2a91c312589a0a0d960d0-kubeadm-1.6.0-0.alpha.0.2074.a092d8e0f95f52.x86_64.rpm wget https://storage.googleapis.com/kubernetes-release/release/v1.4.6/kubernetes-client-linux-amd64.tar.gz wget https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml Update net-conf.json: | { "Network": "10.244.0.0/16", To net-conf.json: | { "Network": "10.10.0.0/16", kubectl -n kube-system get ds -l "component=kube-proxy" -o json | jq ".items[0].spec.template.spec.containers[0].command |= .+ [\"--proxy-mode=userspace\"]" | kubectl apply -f - && kubectl -n kube-system delete pods -l "component=kube-proxy" ## All nodes scp kube-images/*.tar [email protected]:/apps/BNPPFCIP/Kubernetes/kube-images scp kube-rpm/*.rpm [email protected]:/apps/BNPPFCIP/Kubernetes/kube-rpm yum install -y *.rpm systemctl enable kubelet.service && systemctl start kubelet.service ## On Master kubeadm init --pod-network-cidr=10.10.0.0/16 kubectl apply -f flannel/kube-flannel.yml kubectl apply -f weave-net/weave-kube.yml ## On Minions kubeadm join --token <token> <master-ip>