V tomto článku uvidíme, jak nastavit cluster Kubernetes se 2 pracovními uzly a 1 hlavním uzlem na serverech Ubuntu 18.04 LTS. Použijeme "kubeadm " nástroj pro nastavení klastru. Kubeadm je nástroj vytvořený tak, aby poskytoval "kubeadm init “ a „připojit se ke kubeadm " pro vytváření clusterů Kubernetes. Než přistoupíme k vytváření clusteru, pojďme si ve stručnosti porozumět několika termínům.
- Docker:
Docker je otevřená platforma pro vývoj, odesílání a spouštění aplikací. Docker vám umožňuje oddělit vaše aplikace od vaší infrastruktury, abyste mohli rychle dodávat software. S Dockerem můžete spravovat infrastrukturu stejným způsobem, jakým spravujete své aplikace. - Obrázek:
Obrázek je šablona pouze pro čtení s pokyny pro vytvoření kontejneru Docker. Obrázek je často založen na jiném obrázku s dalšími úpravami - Kontejner:
Kontejner je spustitelná instance obrázku. Pomocí rozhraní Docker API nebo CLI můžete vytvořit, spustit, zastavit, přesunout nebo odstranit kontejner. Kontejner můžete připojit k jedné nebo více sítím, připojit k němu úložiště nebo dokonce vytvořit nový obrázek na základě jeho aktuálního stavu. - Kubernetes:
Kubernetes je open-source systém kontejnerové orchestrace pro automatizaci nasazení, škálování a správy aplikací. - Uzly:
Uzel představuje jeden počítač v klastru.
- Pods:
A je skupina kontejnerů, které jsou nasazeny společně na stejném hostiteli. Je to základní prováděcí jednotka Kubernetes aplikace. - Nasazení:
Nasazení spouští více replik vaší aplikace a automaticky nahradí všechny instance, které selžou nebo přestanou reagovat. Poskytuje deklarativní aktualizace pro Pody a ReplicaSets. - Sada replik:
Zajišťuje, kolik replik podu by mělo být spuštěno. Lze jej považovat za náhradu řadiče replikace.
- Řadič replikace:
Je to supervizor pro dlouhotrvající lusky. Spustí zadaný počet modulů nazývaných repliky a zajistí, že budou neustále běžet.
- Služba:
Jedná se o abstrakci, která definuje logickou sadu modulů a zásady, podle kterých k nim lze přistupovat.
API Server, etcd, Controller Manager &Scheduler jsou komponenty Master a Docker, Kubelet Service a Kubernetes Proxy Service jsou komponenty Worker Node. Tyto komponenty v tomto dokumentu nebudeme rozebírat. Pokud se chcete o těchto komponentách dozvědět, můžete navštívit oficiální stránku Kubernetes zde.
Předpoklady
- 3 servery Ubuntu 18.04 s minimálně 2 GB RAM a 2 procesory.
- Systémový uživatel s přístupem „sudo“ na každém serveru.
Co uděláme
- Nastavte cluster Kubernetes pomocí kubeadm
Nastavení klastru Kubernetes pomocí kubeadm
Tady,
Máme 3 servery Ubuntu 18.04 LTS.
Server 1=uzel1
Server 2=uzel2
Server 3=hlavní
Než přistoupíme k samotné instalaci, změňme název hostitele serverů.
K nastavení názvu hostitele na každém serveru můžete použít následující příkazy. Po provedení následujících příkazů na každém serveru se znovu přihlaste k serverům, aby servery získaly nový název hostitele.
sudo hostnamectl set-hostname "master"
sudo hostnamectl set-hostname "node1"
sudo hostnamectl set-hostname "node2"
Chcete-li vyvolat funkční cluster Kubernets, postupujte podle kroků uvedených níže.
Získejte klíč gpg Docker (Na všech uzlech spusťte následující příkaz) :
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
Přidejte úložiště Docker(Spusťte následující příkaz na všech uzlech ) :
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) \
stabilní“
Získejte klíč Kubernetes gpg(Spusťte následující příkaz na všech uzlech ) :
curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -
Přidejte úložiště Kubernetes(Spusťte následující příkaz na všech uzlech ) :
kočka <deb https://apt.kubernetes.io/ kubernetes-xenial main
EOF
Aktualizujte své balíčky(Spusťte následující příkaz na všech uzlech ) :
aktualizace sudo apt-get
Nainstalujte Docker, kubelet, kubeadm a kubectl(Spusťte následující příkaz na všech uzlech ) :
sudo apt-get install -y docker-ce=18.06.1~ce~3-0~ubuntu kubelet=1.15.7-00 kubeadm=1.15.7-00 kubectl=1.15.7-00
Podržte je v aktuální verzi(Spusťte následující příkaz na všech uzlech ) :
sudo apt-mark hold docker-ce kubelet kubeadm kubectl
Přidejte pravidlo iptables do sysctl.conf (Spusťte následující příkaz na všech uzlech ) :
echo "net.bridge.bridge-nf-call-iptables=1" | sudo tee -a /etc/sysctl.conf
Okamžitě povolit iptables(Spusťte následující příkaz na všech uzlech :
sudo sysctl -p
Na hlavní :
Inicializujte cluster (Následující příkaz proveďte pouze na hlavním uzlu) :
sudo kubeadm init --pod-network-cidr=10.244.0.0/16
Nastavit místní kubeconfig(Následující příkaz spusťte pouze v hlavním uzlu ) :
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config
Použít překrytí sítě Flannel CNI(Následující příkaz spusťte pouze na hlavním uzlu ) :
použít sudo kubectl -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
Na Node1 a Node 2:
Připojte pracovní uzly ke clusteru (Spusťte následující příkaz pouze na Node1 a Node2) :
sudo kubeadm připojit se 172.31.4.161:6443 --token 0y52t6.ffsj8jkjfcl1sq8h \
--discovery-token-ca-cert-hash sha256:7aa182504354e59194707aaa253f6454e5194
Ověřte, že se pracovní uzly úspěšně připojily ke clusteruProveďte následující příkaz na hlavním uzlu ) :
kubectl získat uzly
Závěr:
V tomto článku jsme se naučili nastavit Kubernetes Cluster pomocí nástroje kubeadm. Viděli jsme, jak snadno lze vytvořit cluster, pokud nevynecháte kroky a provedete správnou instalaci.
Instalace Magento E-Commerce Platform s Apache2 a Lets Encrypt na Ubuntu 20.04 Jak nainstalovat software ElkArte Forum na Ubuntu 20.04Ubuntu