Vytváření nasazení v Azure Kubernetes Service na Azure Stack HCI a Windows Serveru

Nasazení odkazuje na objekt Kubernetes, který spravuje výkon a určuje požadované chování podu. Určuje životní cyklus aplikace, včetně podů přiřazených k aplikaci. Poskytuje způsob, jak sdělit požadovaný stav vaší aplikace a kontroler pracuje na změně aktuálního stavu na požadovaný stav.

Nasazení automatizují proces spouštění instancí podů a zajišťují, aby běžely jako definované napříč všemi uzly v clusteru. Správci a it specialisté používají nasazení ke komunikaci, co chtějí z aplikace, a pak Kubernetes provede všechny nezbytné kroky k vytvoření požadovaného stavu aplikace.

Zatímco nasazení definují způsob spouštění aplikací, nezaručují, kde se vaše aplikace nacházejí v clusteru. Pokud například vaše aplikace vyžaduje instanci podu na každém uzlu, budete chtít použít daemonSet. V případě stavových aplikací poskytuje StatefulSet jedinečné identifikátory sítě, trvalé úložiště a seřazené nasazení a škálování.

Objekt nasazení Kubernetes umožňuje:

  • Nasazení sady replik nebo podu
  • Škálování počtu instancí aplikace nahoru nebo dolů
  • Aktualizace každé spuštěné instance aplikace
  • Vrácení všech spuštěných instancí aplikace do jiné verze
  • Pozastavení nebo pokračování nasazení

Další informace najdete v tématu Nasazení Kubernetes.

Vytvoření nasazení

K vytvoření nasazení můžete použít příkazy kubectl apply nebo kubectl create příkazy. Vzhledem k tomu, že se udržuje a monitoruje požadovaný počet podů, jsou po vytvoření nasazení spuštěné a dostupné. Pokud pod selže, Kubernetes okamžitě nasadí repliku podu, aby se v clusteru provedl.

Následující příklad popisuje funkce souboru manifestu nasazení ve formátu YAML.

apiVersion: apps/v1
kind: Deployment
metadata:
  name: nginx
spec:
  replicas: 3
  selector:
    matchLabels:
      app: nginx
  strategy:
    type: Recreate
  template:
    metadata:
      labels:
        app: nginx
    spec:
      containers:
        - image: nginx
          name: nginx
          ports:
            - containerPort: 80

Pokud chcete zobrazit nasazení, sadu replik a pody, spusťte následující příkaz:

kubectl get deployment, replicaset, pod

Aktualizace nasazení

Hlavní výhodou nasazení je automatické aktualizace programu Kubernetes. Bez nasazení byste museli ručně ukončit všechny staré pody, spustit nové verze podů a spustit kontrolu, abyste zjistili, jestli při vytváření podů nedošlo k nějakým problémům. Můžete spustit kubectl describe deployment pořadí, ve kterém se pody zobrazily a odebraly.

Nasazení automatizují proces aktualizace, protože jednoduše aktualizujete šablonu podu nebo požadovaný stav. Nasazení změní stav programu na pozadí akcemi, jako je vytváření nových podů nebo přidělování dalších prostředků, dokud nebude vybraná aktualizace zavedená.

Pokud při nasazení dojde k problémům, Kubernetes se automaticky vrátí zpět na předchozí verzi. Pomocí příkazu se také můžete explicitně vrátit ke konkrétní verzi kubectl rollout undo nebo můžete použít kubectl rollout pause k dočasnému zastavení nasazení.

Strategie aktualizace nasazení

Kubernetes nabízí několik strategií nasazení, abyste je mohli aktualizovat různými způsoby tak, aby vyhovovaly potřebám vašeho prostředí. Mezi tři nejběžnější strategie aktualizací patří:

  • Průběžná aktualizace: Tato aktualizace je postupný proces, který umožňuje aktualizovat systém Kubernetes pouze s menším dopadem na výkon a bez výpadků. Minimalizuje výpadek s náklady na rychlost aktualizace.
  • Rekreační: Tato strategie je proces typu vše nebo nic, který umožňuje aktualizovat všechny aspekty systému najednou s krátkou dobou výpadku. Aktualizuje se rychle, ale způsobuje výpadek.
  • Kanár: Tato strategie je částečný proces aktualizace, který umožňuje otestovat novou verzi programu na skutečných uživatelích bez závazku k úplnému zavedení. Rychle se aktualizuje pro několik vybraných uživatelů s úplným uvedením později.

Další kroky