mitrakov

Install cluster from the scratch

May 17th, 2020
365
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Bash 1.78 KB | None | 0 0
  1. # Add rpm package
  2. cat <<EOF > /etc/yum.repos.d/kubernetes.repo
  3. [kubernetes]
  4. name=Kubernetes
  5. baseurl=https://packages.cloud.google.com/yum/repos/kubernetes-el7-x86_64
  6. enabled=1
  7. gpgcheck=1
  8. repo_gpgcheck=1
  9. gpgkey=https://packages.cloud.google.com/yum/doc/yum-key.gpg https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg
  10. EOF
  11.  
  12. # Set SELinux in permissive mode (effectively disabling it)
  13. setenforce 0
  14. sed -i 's/^SELINUX=enforcing$/SELINUX=permissive/' /etc/selinux/config
  15.  
  16. # Install kubeadm
  17. sudo yum install -y kubelet kubeadm kubectl
  18. sudo systemctl enable --now kubelet
  19.  
  20. # Make sure that bridge-nf-call-iptables is 1
  21. sysctl net.bridge.bridge-nf-call-iptables # must be 1 (to fix it, run: sysctl net.bridge.bridge-nf-call-iptables=1)
  22.  
  23. # Create cluster
  24. sudo kubeadm init --pod-network-cidr=192.168.0.0/16
  25.  
  26. # In logs, remember the command for adding new nodes
  27. kubeadm join 10.68.108.57:6443 --token r5cw8c.spqdyu7myyjslr2i \
  28.     --discovery-token-ca-cert-hash sha256:dfa1bb016c435d3cc777fa3bf909a70b27ff1e1c1f1cb45b65ac7835dc4ebcf9
  29.  
  30. # Copy admin config to ~.kube directory
  31. mkdir -p $HOME/.kube
  32. sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
  33. sudo chown $(id -u):$(id -g) $HOME/.kube/config
  34.  
  35. # Add network plugin
  36. # Calico:
  37. kubectl apply -f https://docs.projectcalico.org/v3.11/manifests/calico.yaml
  38. # or Weave:
  39. kubectl apply -f "https://cloud.weave.works/k8s/net?k8s-version=$(kubectl version | base64 | tr -d '\n')"
  40.  
  41. # Allow master node to host developer pods
  42. kubectl taint nodes --all node-role.kubernetes.io/master-
  43.  
  44. # Allow k8s to pull images from a private repository
  45. kubectl create secret docker-registry myregistrykey --docker-server=https://index.docker.io/v1/ --docker-username=mitrakov --docker-password=12345
  46.  
  47. # Check it
  48. kubectl get pods --all-namespaces
Add Comment
Please, Sign In to add comment