[root@vms4X ~]# cat /etc/hosts 127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6 192.168.26.41 vms41.rhce.cc vms41 192.168.26.42 vms42.rhce.cc vms42 [root@vms4X ~]#
[root@vms4X ~]# swapoff -a ; sed -i '/fstab/d' /etc/fstab [root@vms4X ~]#
[root@vms4X ~]# rm -rf /etc/yum.repos.d/* ; wget ftp://ftp.rhce.cc/k8s/* -P /etc/yum.repos.d/ [root@vms4X ~]# yum clean all [root@vms4X ~]#
[root@vms4X ~]# yum install docker-ce -y
[root@vms4X ~]# systemctl enable docker --now
cat > /etc/docker/daemon.json <<EOF
{
"registry-mirrors": ["https://frz7i079.mirror.aliyuncs.com"],
"exec-opts": ["native.cgroupdriver=systemd"]
}
EOF[root@vms4X ~]# systemctl restart docker
[root@vms41 ~]# tar zxf cri-dockerd-0.2.1.amd64.tgz [root@vms41 ~]# cp cri-dockerd/cri-dockerd /usr/bin/ [root@vms41 ~]# scp /usr/bin/cri-dockerd vms42:/usr/bin/ root@vms42's password: cri-dockerd 100% 50MB 117.2MB/s 00:00 [root@vms41 ~]#
cat <<EOF > /etc/sysctl.d/k8s.conf net.bridge.bridge-nf-call-ip6tables = 1 net.bridge.bridge-nf-call-iptables = 1 net.ipv4.ip_forward = 1 EOF
[root@vms4X ~]# sysctl -p /etc/sysctl.d/k8s.conf [root@vms4X ~]#
[root@vms41 ~]# cat /usr/lib/systemd/system/cri-docker.service [Unit] Description=CRI Interface for Docker Application Container Engine Documentation=https://docs.mirantis.com After=network-online.target firewalld.service docker.service Wants=network-online.target Requires=cri-docker.socket [Service] Type=notify ExecStart=/usr/bin/cri-dockerd --network-plugin=cni --pod-infra-container-image=registry.aliyuncs.com/google_containers/pause:3.7 ExecReload=/bin/kill -s HUP $MAINPID TimeoutSec=0 RestartSec=2 Restart=always StartLimitBurst=3 StartLimitInterval=60s LimitNOFILE=infinity LimitNPROC=infinity LimitCORE=infinity TasksMax=infinity Delegate=yes KillMode=process [Install] WantedBy=multi-user.target [root@vms41 ~]#
[root@vms41 ~]# cat /usr/lib/systemd/system/cri-docker.socket [Unit] Description=CRI Docker Socket for the API PartOf=cri-docker.service [Socket] ListenStream=%t/cri-dockerd.sock SocketMode=0660 SocketUser=root SocketGroup=docker [Install] WantedBy=sockets.target [root@vms41 ~]#
[root@vms41 ~]# scp /usr/lib/systemd/system/cri-docker.socket /usr/lib/systemd/system/cri-docker.service vms42:/usr/lib/systemd/system/ root@vms42's password: cri-docker.socket 100% 204 103.1KB/s 00:00 cri-docker.service 100% 605 822.7KB/s 00:00 [root@vms41 ~]#
[root@vms41 ~]# systemctl daemon-reload ; systemctl enable cri-docker --now Created symlink from /etc/systemd/system/multi-user.target.wants/cri-docker.service to /usr/lib/systemd/system/cri-docker.service. [root@vms41 ~]# [root@vms4X ~]# systemctl is-active cri-docker active [root@vms4X ~]#
[root@vms41 ~]#yum list --showduplicates kubeadm --disableexcludes=kubernetes
[root@vms4X ~]#yum install -y kubelet-1.24.1-0 kubeadm-1.24.1-0 kubectl-1.24.1-0 --disableexcludes=kubernetes [root@vms4X ~]#
[root@vms4X ~]# systemctl enable kubelet --now Created symlink from /etc/systemd/system/multi-user.target.wants/kubelet.service to /usr/lib/systemd/system/kubelet.service. [root@vms4X ~]#
[root@vms41 ~]# systemctl is-active kubelet activating [root@vms41 ~]#
[root@vms41 ~]# kubeadm init --image-repository registry.aliyuncs.com/google_containers --kubernetes-version=v1.24.1 --pod-network-cidr=10.244.0.0/16 --cri-socket /var/run/cri-dockerd.sock
[root@vms41 ~]# mkdir -p $HOME/.kube [root@vms41 ~]# sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config [root@vms41 ~]# sudo chown $(id -u):$(id -g) $HOME/.kube/config [root@vms41 ~]#
[root@vms42 ~]# kubeadm join 192.168.26.41:6443 --token l05cgf.kj5dvy5heki3jixt --discovery-token-ca-cert-hash sha256:07c1765ff4ac6eb2e54ed69fa57ca1afc728e825a6d4a11a83c96ff60ea545cd --cri-socket /var/run/cri-dockerd.sock [root@vms42 ~]#
[root@vms41 ~]# kubectl get nodes NAME STATUS ROLES AGE VERSION vms41.rhce.cc NotReady control-plane 4m12s v1.24.1 vms42.rhce.cc NotReady <none> 13s v1.24.1 [root@vms41 ~]#
[root@vms41 ~]# kubectl apply -f calico.yaml [root@vms41 ~]#
[root@vms41 ~]# kubectl get nodes NAME STATUS ROLES AGE VERSION vms41.rhce.cc Ready control-plane 11m v1.24.1 vms42.rhce.cc Ready <none> 7m20s v1.24.1 [root@vms41 ~]# [root@vms41 ~]# kubectl get nodes -o wide NAME STATUS ROLES AGE VERSION INTERNAL-IP EXTERNAL-IP OS-IMAGE KERNEL-VERSION CONTAINER-RUNTIME vms41.rhce.cc Ready control-plane 11m v1.24.1 192.168.26.41 <none> CentOS Linux 7 (Core) 3.10.0-693.el7.x86_64 docker://20.10.17 vms42.rhce.cc Ready <none> 7m23s v1.24.1 192.168.26.42 <none> CentOS Linux 7 (Core) 3.10.0-693.el7.x86_64 docker://20.10.17 [root@vms41 ~]#
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/70003733/viewspace-2907598/ ,如需转载,请注明出处,否则将追究法律责任。