GNU/Linux >> Znalost Linux >  >> Cent OS

Jak nainstalovat Kubernetes Cluster na CentOS 7

Úvod

Malá virtuální prostředí, nazývaná kontejnery , se staly nepostradatelnými pro vývoj a správu aplikací.

Práce na aplikacích v izolovaném kontejneru neovlivňuje hostitelský operační systém. Kontejnery jsou efektivnější než virtuální stroje, protože nepotřebují svůj operační systém.

Kubernetes je platforma s otevřeným zdrojovým kódem, která vám pomáhá nasazovat, škálovat a spravovat zdroje ve více kontejnerech.

Postupujte podle tohoto návodu a naučte se, jak nainstalovat Kubernetes na systém CentOS 7.

Předpoklady

  • Více serverů Linux se systémem CentOS 7 (1 hlavní uzel, více pracovních uzlů)
  • Uživatelský účet v každém systému s funkcí sudo nebo oprávnění root
  • mňam správce balíčků, který je standardně součástí
  • Okno příkazového řádku/terminálu

Kroky pro instalaci Kubernetes na CentOS 7

Chcete-li používat Kubernetes, musíte nainstalovat motor kontejnerů . V současnosti je nejoblíbenějším řešením kontejnerů Docker . Docker musí být nainstalován na CentOS, obě na Master Node a Worker Node.

Krok 1:Konfigurace úložiště Kubernetes

Balíčky Kubernetes nejsou dostupné z oficiálních úložišť CentOS 7. Tento krok je třeba provést na hlavním uzlu a na každém pracovním uzlu, který plánujete použít pro nastavení kontejneru. Zadejte následující příkaz k načtení repozitářů Kubernetes.

cat <<EOF > /etc/yum.repos.d/kubernetes.repo
[kubernetes]
name=Kubernetes
baseurl=https://packages.cloud.google.com/yum/repos/kubernetes-el7-x86_64
enabled=1
gpgcheck=1
repo_gpgcheck=1
gpgkey=https://packages.cloud.google.com/yum/doc/yum-key.gpg https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg
EOF

Krok 2:Nainstalujte kubelet , kubeadm a kubectl

Tyto 3 základní balíčky jsou nutné, abyste mohli používat Kubernetes. Nainstalujte následující balíčky na každý uzel:

sudo yum install -y kubelet kubeadm kubectl
systemctl enable kubelet
systemctl start kubelet

Nyní jste úspěšně nainstalovali Kubernetes, včetně jeho nástrojů a základních balíčků.

Před nasazením clusteru se ujistěte, že jste nastavili názvy hostitelů, nakonfigurovali bránu firewall a nastavení jádra.

Krok 3:Nastavte název hostitele na uzly

Chcete-li každému z vašich uzlů přidělit jedinečný název hostitele, použijte tento příkaz:

sudo hostnamectl set-hostname master-node

nebo

sudo hostnamectl set-hostname worker-node1

V tomto příkladu se nyní hlavní uzel jmenuje master-node, zatímco pracovní uzel se jmenuje worker-node1.

Vytvořte záznam hostitele nebo záznam DNS pro překlad názvu hostitele pro všechny uzly:

sudo vi /etc/hosts

Se záznamem:

192.168.1.10 master.phoenixnap.com master-node
192.168.1.20 node1. phoenixnap.com node1 worker-node

Krok 4:Konfigurace brány firewall

Uzly, kontejnery a pody musí být schopny komunikovat napříč clusterem, aby mohly plnit své funkce. Firewall je v CentOS ve výchozím nastavení na front-endu povolen. Přidejte následující porty zadáním uvedených příkazů.

Na hlavním uzlu zadejte:

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 --permanent --add-port=10255/tcp
sudo firewall-cmd --reload

Pokaždé, když je přidán port, systém to potvrdí zprávou „úspěch“.

Do každého pracovního uzlu zadejte následující příkazy:

sudo firewall-cmd --permanent --add-port=10251/tcp
sudo firewall-cmd --permanent --add-port=10255/tcp
firewall-cmd --reload

Krok 5:Aktualizujte nastavení Iptables

Nastavte net.bridge.bridge-nf-call-iptables na '1' ve vašem konfiguračním souboru sysctl. To zajišťuje, že pakety jsou správně zpracovávány tabulkami IP během filtrování a předávání portů.

cat <<EOF > /etc/sysctl.d/k8s.conf
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
EOF
sysctl --system

Krok 6:Zakažte SELinux

Kontejnery potřebují přístup k hostitelskému souborovému systému. SELinux musí být nastaven do permisivního režimu, který účinně deaktivuje jeho bezpečnostní funkce.

K deaktivaci SELinuxu použijte následující příkazy:

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

Krok 7:Zakažte SWAP

Nakonec musíme vypnout SWAP, aby kubelet fungoval správně:

sudo sed -i '/swap/d' /etc/fstab
sudo swapoff -a

Jak nasadit cluster Kubernetes

Krok 1:Vytvořte cluster pomocí kubeadm

Inicializujte cluster provedením následujícího příkazu:

sudo kubeadm init --pod-network-cidr=10.244.0.0/16

Proces může trvat několik minut v závislosti na rychlosti sítě. Jakmile tento příkaz skončí, zobrazí se zpráva o připojení kubeadm. Poznamenejte si záznam a použijte jej k připojení pracovních uzlů ke clusteru v pozdější fázi.

Krok 2:Správa clusteru jako běžný uživatel

Chcete-li začít používat cluster, musíte jej spustit jako běžný uživatel zadáním:

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

Krok 3:Nastavení sítě podů

Síť podů umožňuje uzlům v klastru komunikovat. Existuje několik dostupných možností sítě Kubernetes. Pomocí následujícího příkazu nainstalujte flanel síťový doplněk pod:

sudo kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml

Pokud se rozhodnete použít flanel, upravte pravidla brány firewall tak, aby povolila provoz pro výchozí port flanelu 8285 .

Krok 4:Zkontrolujte stav clusteru

Zkontrolujte stav uzlů zadáním následujícího příkazu na hlavním serveru:

sudo kubectl get nodes

Jakmile je síť modulu nainstalována, můžete potvrdit, že funguje tak, že zkontrolujete, že modul CoreDNS běží, zadáním:

sudo kubectl get pods --all-namespaces

Krok 5:Připojte pracovní uzel ke clusteru

Jak je uvedeno v Kroku 1 , můžete použít kubeadm join příkaz na každém pracovním uzlu pro jeho připojení ke clusteru.

kubeadm join --discovery-token cfgrty.1234567890jyrfgd --discovery-token-ca-cert-hash sha256:1234..cdef 1.2.3.4:6443

Nahraďte kódy kódy z hlavního serveru. Opakujte tuto akci pro každý pracovní uzel ve vašem clusteru.


Cent OS
  1. Jak nainstalovat Vagrant na CentOS 7

  2. Jak nainstalovat Gitea na CentOS 8

  3. Jak nainstalovat ownCloud na CentOS 8

  1. Jak nainstalovat Memcached na CentOS 8

  2. Jak nainstalovat Nginx na CentOS 7

  3. Jak nainstalovat Apache na CentOS 7

  1. Jak nainstalovat Tomcat 8.5 na CentOS 7

  2. Jak nainstalovat Jenkins na CentOS 7

  3. Jak nainstalovat Tomcat 9 na CentOS 7