筹备工作1:

装置docker,省去不表。

筹备工作2:

咱们须要禁用swap,swapoff -a查看uuid,确保集群内惟一。sudo cat /sys/class/dmi/id/product_uuidsudo netstat -ntlp |grep -E '6443|23[79,80]|1025[0,1,2]' 查看这些端口是否被占用,如果被占用,请手动开释

装置kubectl:

1. curl -sSL https://dl.k8s.io/release/v1.20.3/bin/linux/amd64/kubeadm > /usr/bin/kubeadm 2. chmod a+rx /usr/bin/kubeadm3. kubeadm version

下载k8s:

1.  wget -q https://dl.k8s.io/v1.11.3/kubernetes-server-linux-amd64.tar.gz2.  ls kubernetes/server/bin/ | grep -E 'kubeadm|kubelet|kubectl'3.  mv kubernetes/server/bin/kube{adm,ctl,let} /usr/bin/

配置kubectl:

1.  cat <<'EOF' > /etc/systemd/system/kubelet.service    [Unit]    Description=kubelet: The Kubernetes Agent    Documentation=http://kubernetes.io/docs/    [Service]    ExecStart=/usr/bin/kubelet    Restart=always    StartLimitInterval=0    RestartSec=10    [Install]    WantedBy=multi-user.target    EOF2. mkdir -p /etc/systemd/system/kubelet.service.d3. cat <<'EOF' > /etc/systemd/system/kubelet.service.d/kubeadm.conf    [Service]    Environment="KUBELET_KUBECONFIG_ARGS=--bootstrap-kubeconfig=/etc/kubernetes/bootstrap-kubelet.conf --kubeconfig=/etc/kubernetes/kubelet.conf"    Environment="KUBELET_CONFIG_ARGS=--config=/var/lib/kubelet/config.yaml"    EnvironmentFile=-/var/lib/kubelet/kubeadm-flags.env    EnvironmentFile=-/etc/default/kubelet    ExecStart=    ExecStart=/usr/bin/kubelet $KUBELET_KUBECONFIG_ARGS $KUBELET_CONFIG_ARGS $KUBELET_KUBEADM_ARGS $KUBELET_EXTRA_ARGS    EOF    4.systemctl enable kubelet

装置前置依赖:

 wget https://github.com/kubernetes-sigs/cri-tools/releases/download/v1.11.1/crictl-v1.11.1-linux-amd64.tar.gz tar zxvf crictl-v1.11.1-linux-amd64.tar.gz mv crictl /usr/bin/       yum -y install socat conntrack-tools

筹备好装置网络插件的配置文件:

1.  wget https://docs.projectcalico.org/manifests/calico.yaml2.  vi calico.yaml3.  批改 CALICO_IPV4POOL_CIDR 的 value 为 10.244.0.0/16

初始化集群:

1.  kubeadm init --pod-network-cidr=10.244.0.0/162.  mkdir -p $HOME/.kube \    sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config \    sudo chown $(id -u):$(id -g) $HOME/.kube/config3.  kubectl apply -f calico.yaml

如无意外,至此功败垂成