Kubernetes : Install Kubeadm2025/05/20 |
|
Configure Multi Nodes Kubernetes Cluster. This example is based on the environment like follows.
For System requirements, each Node has unique Hostname, MAC address, Product_uuid.
+----------------------+ +----------------------+
| [ ctrl.srv.world ] | | [ dlp.srv.world ] |
| Manager Node | | Control Plane |
+-----------+----------+ +-----------+----------+
eth0|10.0.0.25 eth0|10.0.0.30
| |
------------+--------------------------+-----------
| |
eth0|10.0.0.51 eth0|10.0.0.52
+-----------+----------+ +-----------+----------+
| [ node01.srv.world ] | | [ node02.srv.world ] |
| Worker Node#1 | | Worker Node#2 |
+----------------------+ +----------------------+
|
| [1] | On all Kubernetes Cluster Nodes except Manager Node, Change settings for System requirements. |
|
[root@dlp ~]#
cat > /etc/sysctl.d/99-k8s-cri.conf <<EOF net.bridge.bridge-nf-call-iptables=1 net.ipv4.ip_forward=1 net.bridge.bridge-nf-call-ip6tables=1 EOF [root@dlp ~]# sysctl --system
[root@dlp ~]#
modprobe overlay [root@dlp ~]# modprobe br_netfilter [root@dlp ~]# echo -e overlay\\nbr_netfilter > /etc/modules-load.d/k8s.conf
# install from EPEL [root@dlp ~]# dnf --enablerepo=epel -y install iptables-legacy [root@dlp ~]# alternatives --config iptables There are 2 programs which provide 'iptables'. Selection Command ----------------------------------------------- *+ 1 /usr/sbin/iptables-nft 2 /usr/sbin/iptables-legacy # switch to [iptables-legacy] Enter to keep the current selection[+], or type selection number: 2 # set Swap off setting [root@dlp ~]# swapoff -a
[root@dlp ~]#
vi /etc/fstab # comment out the Swap line #/dev/mapper/cs-swap none swap defaults 0 0 |
| [2] | On all Kubernetes Cluster Nodes except Manager Node, Install required packages. This example shows to use CRI-O for container runtime. |
|
[root@dlp ~]#
dnf -y install https://mirror.stream.centos.org/SIGs/9-stream/cloud/x86_64/okd-4.19/Packages/c/cri-o-1.31.3-2.el9s.x86_64.rpm
[root@dlp ~]#
[root@dlp ~]# systemctl enable --now crio
cat <<'EOF' > /etc/yum.repos.d/kubernetes.repo
[kubernetes] name=Kubernetes baseurl=https://pkgs.k8s.io/core:/stable:/v1.31/rpm/ enabled=0 gpgcheck=1 gpgkey=https://pkgs.k8s.io/core:/stable:/v1.31/rpm/repodata/repomd.xml.key EOF
[root@dlp ~]#
[root@dlp ~]# dnf --enablerepo=kubernetes -y install kubeadm kubelet cri-tools iproute-tc container-selinux systemctl enable kubelet
|
| Sponsored Link |
|
|