Trace Id is missing
Přeskočit na hlavní obsah

Strategie nasazení Kubernetes

Najděte si optimální strategii zavedení Kubernetes pro vaši aplikaci.

Seznámení s možnostmi nasazení Kubernetes

Ať už chcete zrychlit uvádění na trh, vytvářet odolná nasazení bez výpadků, vydávat aplikace a funkce rychleji nebo častěji nebo zvýšit flexibilitu provozu, klíčem k zajištění odolnosti aplikací a infrastruktury je volba správné strategie nasazení Kubernetes. Každá strategie nasazení Kubernetes má své výhody v závislosti na vašich cílech a potřebách.

Jak fungují nasazení Kubernetes

Před implementací strategie nasazení Kubernetes musíte porozumět jednotlivým částem nasazení Kubernetes a způsobu, jak všechny dohromady fungují.

Co je součástí nasazení Kubernetes

Soubor YAML

Vámi popsaný požadovaný stav vašeho clusteru Kubernetes (konfigurace podů), který slouží jako základ pro nasazení Kubernetes.

Pody

Kontejnery, sdílené prostředky a prostředí, která vaše aplikace nebo pracovní postup vyžadují k provozu.

Sada replik

Skupiny stejně nakonfigurovaných podů se označují jako sady replik, které zajišťují, aby vždy byl spuštěný určitý počet podů určitého typu, jak je popsáno v souboru YAML pro nasazení Kubernetes. Pokud některý pod selže, vytvoří se nový.

Kube-controller-manager

Tento proces démon mění aktuální stav clusteru tak, aby odpovídal požadovanému stavu popsanému v souboru YAML, vytváří nové pody a sady replik a aktualizuje nebo odebírá stávající.

Kube-scheduler

Tato funkce určuje způsob nasazení podů a sad replik mezi pracovní uzly a také distribuuje provoz do těchto uzlů.

Zavádění

Proces změny konfigurace clusteru z aktuálního stavu do požadovaného stavu, který ve většině případů probíhá bez výpadků.

Princip fungování zavádění Kubernetes

  • Vytvoříte soubor YAML s popisem konfigurace požadovaného stavu clusteru.
  • Prostřednictvím kubectl, což je rozhraní příkazového řádku Kubernetes, tento soubor YAML použijete na cluster.
  • Kubectl odešle požadavek na kube-apiserver, který požadavek ověří a autorizuje a následně zaznamená změnu do databáze etcd.
  • Proces démon kube-controller-manager průběžně monitoruje nové požadavky v systému a pracuje na přiblížení stavu systému požadovanému stavu, zatímco vytváří sady replik, nasazení a pody.
  • Po spuštění všech kontrolerů funkce kube-scheduler zjistí, že existují pody ve stavu „čekání“, protože se ještě nenaplánovalo jejich spuštění na některém uzlu. Plánovač pro tyto pody najde vhodné uzly, pak naváže komunikaci s kubelety na jednotlivých uzlech, převezme kontrolu nad nasazením a zahájí ho.
Zavedení Kubernetes

Případy použití pro nasazení Kubernetes

Kontejnerizované aplikace a pracovní postupy můžete prostřednictvím nasazení Kubernetes zavádět čtyřmi způsoby. Strategie nasazení Kubernetes, kterou použijete, může zahrnovat jeden nebo několik z těchto případů použití.

Vytvoření

Zavádějte zcela nové sady replik a pody Kubernetes.

Aktualizace

Deklarujte nový požadovaný stav a zavádějte nové pody a sady replik kontrolovaným způsobem.

Vrácení zpět

Nasazení Kubernetes můžete vrátit do předchozího stavu. To je užitečné v případě, že je aktuální stav nestabilní.

Škálování

Využijte možnost zvýšit počet podů a sad replik v nasazení Kubernetes, aniž byste je museli měnit.

Strategie nasazení Kubernetes

Nejvhodnější strategie nasazení Kubernetes pro váš scénář závisí na řadě faktorů: délka výpadků, kterou můžete tolerovat (pokud vůbec), vaše vývojové prostředí, vaše míra jistoty stabilitou nové verze nebo platformy, vaše požadavky na provádění testů a jejich očekávané výstupy, náklady na prostředky a jejich dostupnost a obchodní cíle. Tady jsou čtyři běžné strategie nasazení, které organizace využívají v produkčním prostředí.

Diagram postupného zavádění

Kumulativní

Výchozí metodou zavádění v Kubernetes je kumulativní neboli postupné nasazení. Při tomto nasazení se pomalu nahrazují pody jeden po druhém, aby se zabránilo výpadkům. Kapacita starých podů se vertikálně sníží teprve tehdy, kdy jsou připravené nové pody. Pokud ve vašem nasazení Kubernetes dojde k problémům, můžete ho pozastavit nebo zrušit, aniž byste museli odpojovat celý cluster.

Diagram zavádění typu modrá/zelená

Modrá/zelená

V nasazení typu modrá/zelená vydáte novou verzi (modrá) vaší aplikace nebo pracovního postupu, zatímco je aktuální verze (zelená) stále spuštěná. Díky tomu můžete testovat modrou verzi v produkčním prostředí a uživatelům zpřístupnit pouze stabilní zelenou verzi. Po otestování modrá verze postupně nahradí zelenou verzi.

Diagram zavádění testovacích hodnot

Testovací hodnoty

Vydejte novou verzi nasazení Kubernetes pro malou skupinu zákazníků a umožněte jim ji otestovat. Vedle aktuální verze budete mít jednu sadu replik nové verze a po určité době, kdy nedojde k žádným chybám, vertikálně navýšíte kapacitu nové verze odebráním staré verze.

Diagram testování A/B

Testování A/B

Podobně jako strategie nasazení Kubernetes s testovacími hodnotami i strategie testování A/B cílí na konkrétní skupinu zákazníků. Cílem nasazení s testováním A/B je však zajistit více než jen stabilitu verze – slouží k testování efektivity konkrétní verze při dosahování obchodních cílů. Nová verze se distribuuje uživatelům na základě faktorů, jako jsou soubory cookie, geografická poloha, operační systém a typ zařízení, a často běží vedle aktuální verze. Když se nová verze osvědčí, vertikálně navýší svou kapacitu.

Nástroje pro nasazení Kubernetes

K provedení jakékoli z těchto strategií nasazení Kubernetes můžete použít příkazový řádek nebo soubory YAML, ale implementací služeb a nástrojů pro nasazení Kubernetes, jako jsou tyto, můžete nad clustery a nasazeními získat větší úroveň kontroly.

Azure DevOps

Kompletní dodavatelský řetězec aplikací umožňující automatizovat nasazení Kubernetes. Najděte rovnováhu mezi rychlostí a zabezpečením a doručujte kód rychleji a ve velkém měřítku.

Helm

Opensourcový nástroj pro balení. Instalujte, upgradujte a spravujte aplikace Kubernetes s využitím diagramů, které můžete vytvářet, sdílet, publikovat a spravovat jejich verze.

Azure Kubernetes Service (AKS)

Vysoce dostupná, zabezpečená a plně spravovaná služba Kubernetes. Nasazujte a spravujte kontejnerizované aplikace v cloudu.

Jsme na vás připraveni – vyzkoušejte Kubernetes v Azure zdarma