GNU/Linux >> Znalost Linux >  >> Rocky Linux

Jak nainstalovat Kubernetes Cluster na Rocky Linux 8

Ahoj technici, jak víme, Kubernetes (k8s) je bezplatný a open-source systém pro orchestraci kontejnerů. Používá se pro automatizaci nasazení a správy kontejnerových aplikací. V této příručce se budeme zabývat tím, jak nainstalovat cluster kubernetes na Rocky Linux 8 pomocí kubeadm krok za krokem.

Minimální systémové požadavky pro Kubernetes

  • 2 nebo více vCPU
  • 2 GB RAM nebo více
  • Swap zakázán
  • Alespoň karta NIC
  • Stabilní připojení k internetu
  • Jeden běžný uživatel s právy sudo.

Pro demonstraci používám následující systémy

  • Once Master Node / Control Plane (2 GB RAM, 2vCPU, 1 NIC karta, Minimal Rocky Linux 8 OS)
  • Dva pracovní uzly (2 GB RAM, 2vCPU, 1 síťová karta, minimální operační systém Rocky Linux 8)
  • Název hostitele hlavního uzlu – řídicí uzel (192.168.1.240)
  • Název hostitele pracovních uzlů – worker-node1(192.168.1.241), worker-node2(192.168.1.242)

Bez dalších okolků se pojďme hlouběji ponořit do kroků instalace Kubernetes.

Poznámka:Tyto kroky platí také pro RHEL 8 a AlmaLinux OS.

Krok 1) Nastavte název hostitele a aktualizujte soubor hostitelů

Pomocí příkazu hostnamectl nastavte název hostitele na řídicí uzel a pracovní uzel.

Spustit pod příkazem na řídicím uzlu

$ sudo hostnamectl set-hostname "control-node"$ exec bash

Proveďte následující příkaz na pracovním uzlu1

$ sudo hostnamectl set-hostname "worker-node1"$ exec bash

Pracovní  uzel 2

$ sudo hostnamectl set-hostname "worker-node2"$ exec bash

Přidejte následující položky do souboru /etc/hosts na řídicí a pracovní uzly.

192.168.1.240   control-node192.168.1.241   worker-node1192.168.1.242   worker-node2

Krok 2) Zakažte Swap a nastavte SELinux v permisivním režimu

Vypněte swap, aby kubelet mohl správně fungovat. Spusťte níže uvedené příkazy na všech uzlech, abyste to deaktivovali,

$ sudo swapoff -a$ sudo sed -i '/ swap / s/^\(.*\)$/#\1/g' /etc/fstab

Spusťte příkaz pod sed na všech uzlech a nastavte SELinux do permisivního režimu

$ sudo setenforce 0$ sudo sed -i 's/^SELINUX=enforcing$/SELINUX=permissive/' /etc/selinux/config

Krok 3) Nakonfigurujte pravidla brány firewall pro hlavní a pracovní uzly

V řídicí rovině musí být ve firewallu povoleny následující porty.

Chcete-li povolit výše uvedené porty v řídicí rovině, spusťte

$ sudo firewall-cmd --permanent --add-port=6443/tcp$ sudo firewall-cmd --permanent --add-port=2379-2380/tcp$ sudo firewall-cmd --permanent --add -port=10250/tcp$ sudo firewall-cmd --permanent --add-port=10251/tcp$ sudo firewall-cmd --permanent --add-port=10252/tcp$ sudo firewall-cmd --reload$ sudo modprobe br_netfilter$ sudo sh -c "echo '1'> /proc/sys/net/bridge/bridge-nf-call-iptables"$ sudo sh -c "echo '1'> /proc/sys/net/ipv4/ ip_forward"

Na pracovních uzlech musí být ve firewallu povoleny následující porty

$ sudo firewall-cmd --permanent --add-port=10250/tcp$ sudo firewall-cmd --permanent --add-port=30000-32767/tcp                                                                           mod           cm br_netfilter$ sudo sh -c "echo '1'> /proc/sys/net/bridge/bridge-nf-call-iptables"$ sudo sh -c "echo '1'> /proc/sys/net/ipv4/ip_forward "
."

Krok 4) Nainstalujte Docker na hlavní a pracovní uzly

Nainstalujte Docker na hlavní a pracovní uzly. Zde docker poskytne dobu běhu kontejneru (CRI). Chcete-li nainstalovat nejnovější docker, musíme nejprve povolit jeho úložiště spuštěním následujících příkazů.

$ sudo dnf config-manager --add-repo=https://download.docker.com/linux/centos/docker-ce.repo

Nyní spusťte pod příkazem dnf na všech uzlech a nainstalujte docker-ce (edice komunity docker)

$ sudo dnf nainstalovat docker-ce -y

Výstup

Jakmile je docker a jeho závislosti nainstalovány, spusťte a povolte jeho službu spuštěním následujících příkazů

$ sudo systemctl spustit docker$ sudo systemctl povolit docker

Krok 5) Nainstalujte kubelet, Kubeadm a kubectl

Kubeadm je nástroj, pomocí kterého nainstalujeme cluster Kubernetes. Kubectl je nástroj příkazového řádku používaný k interakci s clusterem Kubernetes. Kubelet je komponenta, která spustí všechny uzly a provede úkoly, jako je spouštění a zastavování modulů nebo kontejnerů.

Chcete-li nainstalovat kubelet, Kubeadm a kubectl na všechny uzly, musíme nejprve povolit úložiště Kubernetes.

Provádějte pod příkazy na hlavním a pracovním uzlu.

$ kočka < 

Po instalaci výše uvedených balíčků povolte službu kubelet na všech uzlech (řídicí a pracovní uzly), spusťte

$ sudo systemctl enable --now kubelet

Krok 6) Nainstalujte Kubernetes Cluster pomocí Kubeadm

Při instalaci clusteru Kubernetes bychom se měli ujistit, že cgroup doby běhu kontejneru (CRI) odpovídá cgroup kubelet. Typicky je v Dockeru cgroup cgroupfs, takže musíme instruovat Kubeadm, aby použil cgroupfs jako cgoup kubelet. To lze provést předáním yaml v příkazu Kubeadm,

Vytvořte soubor kubeadm-config.yaml na řídicí rovině s následujícím obsahem

$ vi kubeadm-config.yaml# kubeadm-config.yamlkind:ClusterConfigurationapiVersion:kubeadm.k8s.io/v1beta3kubernetesVersion:v1.23.4--kind:KubeletConfigurationapiVersion:c.v.8 Driveprebelet.config.> 

Poznámka:Nahraďte verzi Kubernetes podle svého nastavení.

Nyní jsme všichni připraveni nainstalovat (nebo inicializovat cluster), spustit pod příkazem Kubeadm z řídicího uzlu,

$ sudo kubeadm init --config kubeadm-config.yaml

Výstup výše uvedeného příkazu bude vypadat následovně,

Výše uvedený výstup potvrzuje, že cluster byl úspěšně inicializován.

Proveďte následující příkazy, abyste běžnému uživateli umožnili interakci s clusterem, tyto příkazy jsou již na výstupu.

$ mkdir -p $HOME/.kube$ sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config$ sudo chown $(id -u):$(id -g) $HOME /.kube/config$ kubectl získat uzly

Chcete-li uvést uzly do připraveného stavu a povolit službu DNS clusteru (coredns), nainstalujte síťový doplněk pod (CNI – Container Network Interface). Pody začnou vzájemně komunikovat, jakmile je nainstalována síťová reklama pod. V této příručce instaluji calico jako síťový ad-on. Spusťte příkaz kubectl z řídicí roviny.

Použít $ kubectl -f https://docs.projectcalico.org/v3.22/manifests/calico.yaml

Výstup

Po úspěšné instalaci síťového ad-on calico budou připraveny a dostupné řídicí uzel a pody v jmenném prostoru systému kube.

Nyní je dalším krokem připojení pracovních uzlů ke clusteru.

Krok 7) Připojte pracovní uzly ke clusteru

Po úspěšné inicializaci clusteru Kubernetes se ve výstupu zobrazí příkaz pro připojení libovolného pracovního uzlu ke clusteru. Zkopírujte tedy tento příkaz a vložte jej do pracovních uzlů. Takže v mém případě je příkaz,

$ sudo kubeadm připojit se 192.168.1.240:6443 --token jecxxg.ac3d3rpd4a7xbxx4 --discovery-token-ca-cert-hash sha256:1e4fbed060aafc564df4758bc99160aafc564dfc858bc991 

Spusťte výše uvedené příkazy na obou pracovních uzlech.

Ověřte stav obou pracovních uzlů z řídicí roviny, spusťte

 [[[E-mail chráněný] ~] $ Kubectl Získejte přílohy Stav Rolle Věk VerniverControl-uzel Ready Control-Letadlo, Master 49m V1.23.4worker-Node1 Ready  5m18S v1.23.4worker-Node2 Ready  3M57S v1 .23.4[[e-mail chráněný] ~]$

Skvělé, výše uvedený výstup potvrzuje, že se pracovní uzly připojily ke clusteru. To je z této příručky vše, doufám, že vám tato příručka přinesla informace. Sdílejte prosím své dotazy a zpětnou vazbu v sekci komentářů níže.


No
Rocky Linux
  1. Jak nainstalovat MariaDB 10.6 na Rocky Linux 8

  2. Jak nainstalovat Docker na Rocky Linux 8

  3. Jak nainstalovat MariaDB na Rocky Linux 8

  1. Jak nainstalovat Cockpit na Rocky Linux 8

  2. Jak nainstalovat GitLab na Rocky Linux 8

  3. Jak nainstalovat Rocky Linux 8.4

  1. Jak nainstalovat FreeIPA na Rocky Linux 8

  2. Jak nainstalovat Podman na Rocky Linux 8

  3. Jak nainstalovat Flatpak na Rocky Linux 8