Kubernetes(zkráceně K8s) je open-source systém používaný ke správě a nasazení kontejnerizovaných aplikací v počítačové síti. Kubernetes se stala populární a výkonnou platformou pro správu kontejnerů, původně vyvinutou společností Google a v současnosti spravovanou velkou komunitou vývojářů.
Mezi hlavní funkce Kubernetes patří
-
Správa kontejnerů : Kubernetes umožňuje zabalit aplikace a jejich prostředky do souborů containers. Containers poskytují odlehčené prostředí a zajišťují konzistentní běh aplikací na jakémkoli systému.
-
Automated Deployment : Kubernetes umožňuje automatizované nasazení a snadnou škálovatelnost aplikací a služeb. Můžete zadat požadavky na zdroje, počet instancí a Kubernetes automaticky udržovat požadovaný stav.
-
Správa zdrojů : K8s spravuje zdroje serveru, jako je CPU, paměť a úložiště, aby bylo zajištěno, že aplikace nespotřebovávají nadměrné zdroje a vzájemně se neovlivňují.
-
Automatické zotavení a odolnost proti chybám : Kubernetes pomáhá aplikacím automaticky se zotavovat po selhání. Pokud nová verze narazí na problémy, může se automaticky vrátit k předchozí verzi aplikace.
-
Load Balancing and Traffic Distribution : Kubernetes poskytuje mechanismy pro rovnoměrné rozložení provozu mezi instancemi aplikací na různých serverech nodes. To zlepšuje výkon a zajišťuje škálovatelnost.
-
Configuration and Secrets Management : Kubernetes umožňuje bezpečně spravovat konfiguraci aplikací a tajné informace pomocí funkcí, jako jsou K8s Secrets a ConfigMaps.
Operační mechanismy Kubernetes zahrnují
-
Nodes: Servery nebo jednotlivé počítače v síti jsou označovány jako " nodes." Existují dva typy nodes in Kubernetes: Master Node a Worker Node. Hlavní uzel spravuje a řídí celý systém, zatímco pracovní uzel spouští containers a aplikace.
-
Pods: Pod je nejmenší rozmístitelná jednotka v Kubernetes. Pod může obsahovat jeden nebo více containers, ale sdílejí stejné síťové úložiště a životní cyklus. To usnadňuje komunikaci mezi containers uvnitř modulu.
-
Controller: Kontroléry jsou součásti, které spravují a udržují repliky pods. Typy řadičů zahrnují ReplicaSet(zajištění správného počtu pods a v případě potřeby restartování), Deployment(správa verzí a aktualizací aplikací) a StatefulSet(pro nasazení stavových aplikací).
-
Service: Služby jsou mechanismem pro vyrovnávání zátěže a distribuci provozu do pods. Služby usnadňují aplikacím přístup pods, aniž by musely znát jejich konkrétní umístění.
-
Kubelet a Kube Proxy: Kubelet je komponenta běžící na každém pracovním uzlu, zodpovědná za správu pods na tomto uzlu. Kube Proxy je síťový proxy pro připojení k pods.
Výsledkem je Kubernetes automatizace nasazení a správy kontejnerových aplikací, což snižuje čas a úsilí potřebné k údržbě složitých systémů.