Migrace do služby Azure Kubernetes Service (AKS)

Tento průvodce vám pomůže naplánovat a provést úspěšnou migraci do služby Azure Kubernetes Service (AKS), která obsahuje podrobnosti o aktuální doporučené konfiguraci AKS. I když se tento článek nezabývá všemi scénáři, obsahuje odkazy na podrobnější informace o plánování úspěšné migrace.

V tomto článku shrnujeme podrobnosti o migraci pro:

  • Kontejnerizace aplikací prostřednictvím služby Azure Migrate
  • AKS se službou Azure Load Balancer (Standard) a škálovacími sadami virtuálních počítačů
  • Existující připojené služby Azure
  • Zajištění platných kvót
  • Vysoká dostupnost a kontinuita podnikových procesů
  • Důležité informace o bezstavových aplikacích
  • Důležité informace o stavových aplikacích
  • Nasazení konfigurace clusteru

Poznámka:

V závislosti na vašem scénáři vám můžou s migrací pomoct následující opensourcové nástroje:

Než začnete

  • Ujistěte se, že vaše cílová verze Kubernetes je v podporovaném okně pro AKS. Starší verze nemusí být v podporovaném rozsahu a vyžadují upgrade verze pro podporu AKS. Další informace najdete v tématu Podporované verze Kubernetes v AKS.
  • Pokud migrujete na novější verzi Kubernetes, projděte si zásady podpory pro verzi Kubernetes a nerovnoměrnou distribuci verzí.

Důležitým postupem, který byste měli zahrnout jako součást procesu migrace, je pamatovat na to, že dodržujete běžně používané vzory nasazení a testování. Testování aplikace před nasazením je důležitým krokem k zajištění jeho kvality, funkčnosti a kompatibility s cílovým prostředím. Může vám pomoct identifikovat a opravit všechny chyby, chyby nebo problémy, které můžou ovlivnit výkon, zabezpečení nebo použitelnost aplikace nebo základní infrastruktury.

Použití služby Azure Migrate k migraci aplikací do AKS

Azure Migrate nabízí jednotnou platformu pro posouzení a migraci na místní servery Azure, infrastrukturu, aplikace a data. Pro AKS můžete použít Azure Migrate pro následující úlohy:

AKS s Load Balancerem úrovně Standard a škálovacími sadami virtuálních počítačů

AKS je spravovaná služba nabízející jedinečné funkce s nižší režií na správu. Vzhledem k tomu, že AKS je spravovaná služba, musíte vybrat ze sady oblastí podporovaných službou AKS. Během přechodu z existujícího clusteru na AKS do AKS možná budete muset upravit stávající aplikace, aby byly v pořádku v řídicí rovině spravované službou AKS.

Doporučujeme používat clustery AKS zálohované škálovacími sadami virtuálních počítačů a nástrojem pro vyrovnávání zatížení (Standard), abyste měli jistotu, že získáte následující funkce:

Clustery AKS podporované skupinami dostupnosti virtuálních počítačů nemají podporu pro řadu těchto funkcí.

Vytvoření clusteru AKS se službou Load Balancer (Standard) a škálovacími sadami virtuálních počítačů

Následující příklad vytvoří cluster AKS s fondem s jedním uzlem zálohovaným škálovací sadou virtuálních počítačů. Umožňuje automatické škálování clusteru ve fondu uzlů pro cluster a nastaví minimálně jeden a maximálně tři uzly.

  1. Pomocí příkazu vytvořte skupinu az group create prostředků.

    az group create --name myResourceGroup --location eastus
    
  2. Pomocí příkazu vytvořte cluster az aks create AKS.

    az aks create \
        --resource-group myResourceGroup \
        --name myAKSCluster \
        --node-count 1 \
        --vm-set-type VirtualMachineScaleSets \
        --load-balancer-sku standard \
        --enable-cluster-autoscaler \
        --min-count 1 \
        --max-count 3 \
        --generate-ssh-keys
    

Existující připojené služby Azure

Při migraci clusterů jste možná připojili externí služby Azure. I když následující služby nevyžadují rekreační prostředky, vyžadují aktualizaci připojení z předchozího na nové clustery, aby zachovaly funkčnost:

  • Azure Container Registry
  • Azure Log Analytics
  • Azure Application Insights
  • Azure Traffic Manager
  • Účet služby Azure Storage
  • Externí databáze

Zajištění platných kvót

Vzhledem k tomu, že během migrace se do vašeho předplatného nasazují další virtuální počítače, měli byste ověřit, jestli jsou pro tyto prostředky dostatečné kvóty a limity. V případě potřeby požádejte o navýšení kvóty vCPU.

Možná budete muset požádat o navýšení kvót sítě, abyste zajistili, že nevyčerpáte IP adresy. Další informace najdete v tématu Sítě a rozsahy IP adres pro AKS.

Další informace najdete v tématu Omezení předplatného a služeb Azure. Pokud chcete zkontrolovat aktuální kvóty, přejděte na webu Azure Portal do okna Předplatná, vyberte své předplatné a pak vyberte Využití a kvóty.

Vysoká dostupnost a kontinuita podnikových procesů

Pokud vaše aplikace nedokáže zpracovat výpadky, je potřeba dodržovat osvědčené postupy pro scénáře migrace s vysokou dostupností. Přečtěte si další informace o osvědčených postupech pro komplexní plánování kontinuity podnikových procesů, zotavení po havárii a maximalizaci doby provozu ve službě Azure Kubernetes Service (AKS).

U složitých aplikací obvykle migrujete v průběhu času místo všech najednou, což znamená, že stará a nová prostředí můžou potřebovat komunikovat přes síť. Aplikace, které dříve používaly ClusterIP ke komunikaci služby, můžou být muset být vystaveny jako typ LoadBalancer a zabezpečeny odpovídajícím způsobem.

K dokončení migrace chcete nasměrovat klienty na nové služby, které běží v AKS. Doporučujeme přesměrovat provoz aktualizací DNS tak, aby odkazoval na nástroj pro vyrovnávání zatížení, který se nachází před clusterem AKS.

Azure Traffic Manager může zákazníky nasměrovat na požadovaný cluster Kubernetes a instanci aplikace. Traffic Manager je nástroj pro vyrovnávání zatížení provozu založený na DNS, který může distribuovat síťový provoz napříč oblastmi. Pokud chcete dosáhnout co nejlepšího výkonu a redundance, nasměrujte veškerý provoz aplikací přes Traffic Manager před tím, než přejdete do clusteru AKS.

V nasazení s více clustery by se zákazníci měli připojit k názvu DNS Traffic Manageru, který odkazuje na služby v každém clusteru AKS. Definujte tyto služby pomocí koncových bodů Traffic Manageru. Každý koncový bod je IP adresa nástroje pro vyrovnávání zatížení služby. Pomocí této konfigurace můžete směrovat síťový provoz z koncového bodu Traffic Manageru v jedné oblasti do koncového bodu v jiné oblasti.

AKS s Traffic Managerem

Azure Front Door je další možností směrování provozu pro clustery AKS. Pomocí služby Azure Front Door můžete definovat, spravovat a monitorovat globální směrování webového provozu optimalizací nejlepšího výkonu a okamžitého globálního převzetí služeb při selhání pro zajištění vysoké dostupnosti.

Důležité informace o bezstavových aplikacích

Migrace bezstavových aplikací zahrnuje následující kroky:

  1. Použijte definice prostředků (YAML nebo Helm) na nový cluster.
  2. Ujistěte se, že všechno funguje podle očekávání.
  3. Přesměrujte provoz a aktivujte nový cluster.

Důležité informace o stavových aplikacích

Pečlivě naplánujte migraci stavových aplikací, abyste se vyhnuli ztrátě nebo neočekávaným výpadkům dat.

Soubory Azure

Na rozdíl od disků je možné službu Azure Files připojit k více hostitelům současně. V clusteru AKS vám Azure a Kubernetes nebrání v vytváření podu, který cluster AKS stále používá. Pokud chcete zabránit ztrátě dat a neočekávanému chování, ujistěte se, že clustery nezapisují do stejných souborů současně.

Pokud vaše aplikace může hostovat více replik, které odkazují na stejnou sdílenou složku, postupujte podle kroků bezstavové migrace a nasaďte definice YAML do nového clusteru.

Pokud ne, možný přístup k migraci zahrnuje následující kroky:

  1. Ověřte, že aplikace funguje správně.
  2. Nasměrujte živý provoz na nový cluster AKS.
  3. Odpojte starý cluster.

Pokud chcete začít s prázdnou sdílenou složkou a vytvořit kopii zdrojových dat, můžete k migraci dat použít az storage file copy příkaz.

Migrace trvalých svazků

Pokud migrujete existující trvalé svazky do AKS, obecně postupujte takto:

  1. Zápisy do aplikace se zapisují do stavu nečinnosti.
    • Tento krok je volitelný a vyžaduje výpadek.
  2. Pořiďte snímky disků.
  3. Ze snímků vytvořte nové spravované disky.
  4. Vytváření trvalých svazků v AKS
  5. Aktualizujte specifikace podů tak, aby používaly existující svazky místo PersistentVolumeClaims (statické zřizování).
  6. Nasaďte aplikaci do AKS.
  7. Ověřte, že aplikace funguje správně.
  8. Nasměrujte živý provoz na nový cluster AKS.

Důležité

Pokud se rozhodnete nepsat zápisy do stavu nečinnosti, musíte replikovat data do nového nasazení. V opačném případě zmeškáte data zapsaná po pořízení snímků disku.

Následující opensourcové nástroje vám můžou pomoct vytvářet spravované disky a migrovat svazky mezi clustery Kubernetes:

  • Kopírování disků Azure CLI kopíruje a převádí disky napříč skupinami prostředků a oblastmi Azure.
  • Rozšíření Azure Kube CLI vytvoří výčet svazků ACS Kubernetes a migruje je do clusteru AKS.

Nasazení konfigurace clusteru

Doporučujeme použít stávající kanál kontinuální integrace a průběžného doručování k nasazení známé dobré konfigurace do AKS. Azure Pipelines můžete použít k sestavení a nasazení aplikací do AKS. Naklonujte stávající úlohy nasazení a ujistěte se, že kubeconfig odkazuje na nový cluster AKS.

Pokud to není možné, exportujte definice prostředků z existujícího clusteru Kubernetes a pak je použijte pro AKS. K exportu objektů můžete použít kubectl . Příklad:

kubectl get deployment -o yaml > deployments.yaml

Nezapomeňte zkontrolovat výstup a odebrat všechna nepotřebná živá datová pole.

Přesun existujících prostředků do jiné oblasti

Možná budete chtít přesunout cluster AKS do jiné oblasti podporované službou AKS. Doporučujeme vytvořit nový cluster v jiné oblasti a pak nasadit prostředky a aplikace do nového clusteru.

Pokud máte v clusteru AKS spuštěné nějaké služby, musíte tyto služby nainstalovat a nakonfigurovat v clusteru v nové oblasti.

V tomto článku jsme shrnuli podrobnosti o migraci pro:

  • Kontejnerizace aplikací prostřednictvím služby Azure Migrate
  • AKS se službou Load Balancer (Standard) a škálovacími sadami virtuálních počítačů
  • Existující připojené služby Azure
  • Zajištění platných kvót
  • Vysoká dostupnost a kontinuita podnikových procesů
  • Důležité informace o bezstavových aplikacích
  • Důležité informace o stavových aplikacích
  • Nasazení konfigurace clusteru