Kubernetes : Kubeadm स्थापित करें2023/10/13 |
मल्टी नोड्स Kubernetes क्लस्टर को कॉन्फ़िगर करने के लिए Kubeadm इंस्टॉल करें।
यह उदाहरण निम्न प्रकार से पर्यावरण पर आधारित है।
सिस्टम आवश्यकताओं के लिए, प्रत्येक नोड में अद्वितीय होस्टनाम, मैक पता, Product_uuid होता है।
यदि आपने सामान्य प्रक्रिया के साथ भौतिक मशीन या वर्चुअल मशीन पर ओएस स्थापित किया है तो मैक पता और Product_uuid आम तौर पर पहले से ही अद्वितीय हैं। आप Product_uuid को कमांड [dmidecode -s system-uuid] के साथ देख सकते हैं।
इसके अलावा, यह पर्यावरण के आधार पर Firewalld अक्षम है।
-----------+---------------------------+--------------------------+------------ | | | eth0|10.0.0.30 eth0|10.0.0.51 eth0|10.0.0.52 +----------+-----------+ +-----------+----------+ +-----------+----------+ | [ dlp.srv.world ] | | [ node01.srv.world ] | | [ node02.srv.world ] | | Control Plane | | Worker Node | | Worker Node | +----------------------+ +----------------------+ +----------------------+ |
[1] | सभी नोड्स पर, सिस्टम आवश्यकताओं के लिए सेटिंग्स बदलें। |
[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 ~]#
[root@dlp ~]# echo -e overlay\\nbr_netfilter > /etc/modules-load.d/k8s.conf
dnf -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 # [iptables-legacy] पर स्विच करें Enter to keep the current selection[+], or type selection number: 2 # अक्षम करें [systemd-resolved] (डिफ़ॉल्ट रूप से सक्षम) [root@dlp ~]# systemctl disable --now systemd-resolved
[root@dlp ~]#
vi /etc/NetworkManager/NetworkManager.conf # [main] अनुभाग में जोड़ें [main] dns=default
# परिवर्तन लागू करने के लिए पुनः आरंभ करें [root@dlp ~]# reboot |
[2] | सभी नोड्स पर, आवश्यक पैकेज स्थापित करें। यह उदाहरण कंटेनर रनटाइम के लिए CRI-O का उपयोग करना दिखाता है। |
[root@dlp ~]#
dnf module -y install cri-o:1.25/default
[root@dlp ~]#
systemctl enable --now crio
[root@dlp ~]#
dnf -y install kubernetes-kubeadm kubernetes-node kubernetes-client cri-tools iproute-tc container-selinux
[root@dlp ~]#
vi /etc/kubernetes/kubelet # पंक्ति 5 : परिवर्तन KUBELET_ADDRESS="--address= 0.0.0.0 "
# पंक्ति 8 : टिप्पणी रद्द करें KUBELET_PORT="--port=10250" # पंक्ति 11 : अपने होस्टनाम में बदलें KUBELET_HOSTNAME="--hostname-override= dlp.srv.world "
[root@dlp ~]#
vi /etc/systemd/system/kubelet.service.d/kubeadm.conf # पंक्ति 6 : जोड़ें Environment="KUBELET_EXTRA_ARGS=--cgroup-driver=systemd --container-runtime=remote --container-runtime-endpoint=unix:///var/run/crio/crio.sock "
systemctl enable kubelet
|
[3] | सभी नोड्स पर, यदि SELinux सक्षम है, तो नीति बदलें। |
[root@dlp ~]#
vi k8s.te # नया निर्माण module k8s 1.0; require { type cgroup_t; type iptables_t; class dir ioctl; } #============= iptables_t ============== allow iptables_t cgroup_t:dir ioctl; checkmodule -m -M -o k8s.mod k8s.te [root@dlp ~]# semodule_package --outfile k8s.pp --module k8s.mod [root@dlp ~]# semodule -i k8s.pp |
Sponsored Link |