Fedora 41
Sponsored Link

Kubernetes : Kubeadm स्थापित करें2024/11/06

 

मल्टी नोड्स 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 ~]#
echo -e overlay\\nbr_netfilter > /etc/modules-load.d/k8s.conf
[root@dlp ~]#
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

# स्वैप ऑफ सेटिंग सेट करें

[root@dlp ~]#
touch /etc/systemd/zram-generator.conf
# अक्षम करें [firewalld]

[root@dlp ~]#
systemctl disable --now firewalld
# अक्षम करें [systemd-resolved] (डिफ़ॉल्ट रूप से सक्षम)

[root@dlp ~]#
systemctl disable --now systemd-resolved
[root@dlp ~]#
vi /etc/NetworkManager/NetworkManager.conf
# [main] अनुभाग में जोड़ें

[main]
dns=default
[root@dlp ~]#
unlink /etc/resolv.conf

[root@dlp ~]#
touch /etc/resolv.conf
# परिवर्तन लागू करने के लिए पुनः आरंभ करें

[root@dlp ~]#
reboot

[2] सभी नोड्स पर, आवश्यक पैकेज स्थापित करें।
यह उदाहरण कंटेनर रनटाइम के लिए CRI-O का उपयोग करना दिखाता है।
[root@dlp ~]#
dnf -y install cri-o
[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 ~]#
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;

[root@dlp ~]#
checkmodule -m -M -o k8s.mod k8s.te

[root@dlp ~]#
semodule_package --outfile k8s.pp --module k8s.mod

[root@dlp ~]#
semodule -i k8s.pp

मिलान सामग्री