Nasazení kontejneru Windows Serveru v clusteru Azure Kubernetes Service (AKS) pomocí webu Azure Portal
Azure Kubernetes Service (AKS) je spravovaná služba Kubernetes, která umožňuje rychle nasazovat a spravovat clustery. V tomto článku nasadíte cluster AKS, který používá kontejnery Windows Serveru pomocí webu Azure Portal. Do clusteru také nasadíte ukázkovou aplikaci ASP.NET v kontejneru Windows Serveru.
Poznámka:
Pokud chcete začít rychle zřizovat cluster AKS, najdete v tomto článku postup nasazení clusteru s výchozím nastavením pouze pro účely vyhodnocení. Před nasazením clusteru připraveného pro produkční prostředí doporučujeme seznámit se s naší referenční architekturou podle směrného plánu a zvážit, jak je v souladu s vašimi obchodními požadavky.
Než začnete
Tento rychlý start předpokládá základní znalosti konceptů Kubernetes. Další informace najdete v tématu Základní koncepty Kubernetes pro Službu Azure Kubernetes Service (AKS).
- Pokud ještě nemáte předplatné Azure, vytvořte si bezplatný účet Azure před tím, než začnete.
- Pokud azure Cloud Shell neznáte, projděte si přehled služby Azure Cloud Shell.
- Ujistěte se, že identita, kterou používáte k vytvoření clusteru, má odpovídající minimální oprávnění. Další podrobnosti o přístupu a identitě pro AKS najdete v tématu Možnosti přístupu a identit pro Službu Azure Kubernetes Service (AKS).
Vytvoření clusteru AKS
Přihlaste se k portálu Azure.
Na domovské stránce webu Azure Portal vyberte Vytvořit prostředek.
V části Kategorie vyberte Kontejnery>Azure Kubernetes Service (AKS).
Na kartě Základy nakonfigurujte následující nastavení:
- V části Project details (Podrobnosti projektu):
- Předplatné: Vyberte předplatné Azure, které chcete použít pro tento cluster AKS.
- Skupina prostředků: Vyberte Vytvořit nový, zadejte název skupiny prostředků, například myResourceGroup, a pak vyberte OK. I když pro účely testování nebo vyhodnocení můžete vybrat existující skupinu prostředků, doporučujeme vytvořit skupinu prostředků pro dočasné hostování těchto prostředků a vyhnout se ovlivnění produkčních nebo vývojových úloh.
- V části Podrobnosti o clusteru:
Přednastavená konfigurace clusteru: Vyberte vývoj /testování. Další podrobnosti o přednastavených konfiguracích najdete v tématu Přednastavení konfigurace clusteru na webu Azure Portal.
Název clusteru Kubernetes: Zadejte název clusteru, například myAKSCluster.
Oblast: Vyberte oblast, například USA – východ 2.
Zóny dostupnosti: Vyberte Žádné.
Cenová úroveň AKS: Vyberte Free.
Ponechte výchozí hodnoty pro zbývající nastavení a vyberte Další.
- V části Project details (Podrobnosti projektu):
Na kartě Fondy uzlů nakonfigurujte následující nastavení:
Vyberte Přidat fond uzlů a zadejte název fondu uzlů, například npwin. Pro fond uzlů Systému Windows musí být název šest nebo méně znaků.
Režim: Vyberte uživatele.
Skladová položka operačního systému: Vyberte Windows 2022.
Zóny dostupnosti: Vyberte Žádné.
Políčko Povolit spotové instance Azure ponechte nezaškrtnuté.
Velikost uzlu: Vyberte velikost. Na stránce Vybrat velikost virtuálního počítače vyberte D2s_v3 a pak vyberte Vybrat.
Ponechte výchozí hodnoty pro zbývající nastavení a vyberte Přidat.
Výběrem možnosti Zkontrolovat a vytvořit spusťte ověřování v konfiguraci clusteru. Po dokončení ověření vyberte Vytvořit.
Vytvoření clusteru AKS bude trvat několik minut. Po dokončení nasazení přejděte k prostředku tak , že vyberete Přejít k prostředku nebo přejdete do skupiny prostředků clusteru AKS a vyberete prostředek AKS.
Připojení ke clusteru
Ke správě clusterů Kubernetes použijete kubectl, klienta příkazového řádku Kubernetes. kubectl
je už nainstalovaný, pokud používáte Azure Cloud Shell. Pokud se službou Cloud Shell neznáte, projděte si přehled služby Azure Cloud Shell.
Otevřete Cloud Shell tak
>_
, že vyberete tlačítko v horní části stránky webu Azure Portal.Pomocí příkazu nakonfigurujte
kubectl
připojení ke clusteruaz aks get-credentials
Kubernetes. Následující příkaz stáhne přihlašovací údaje a nakonfiguruje rozhraní příkazového řádku Kubernetes tak, aby je používalo.az aks get-credentials --resource-group myResourceGroup --name myAKSCluster
Pomocí příkazu ověřte připojení ke clusteru
kubectl get nodes
, který vrátí seznam uzlů clusteru.kubectl get nodes
Následující ukázkový výstup ukazuje všechny uzly v clusteru. Ujistěte se, že je stav všech uzlů připravený:
NAME STATUS ROLES AGE VERSION aks-agentpool-11741175-vmss000000 Ready agent 8m17s v1.29.9 aks-agentpool-11741175-vmss000001 Ready agent 8m17s v1.29.9 aksnpwin000000 Ready agent 8m17s v1.29.9 aks-userpool-11741175-vmss000000 Ready agent 8m17s v1.29.9 aks-userpool-11741175-vmss000001 Ready agent 8m17s v1.29.9
Nasazení aplikace
Soubor manifestu Kubernetes definuje požadovaný stav clusteru, například které image kontejneru se mají spustit. V tomto rychlém startu pomocí souboru manifestu vytvoříte všechny objekty potřebné ke spuštění ukázkové aplikace ASP.NET v kontejneru Windows Serveru. Tento soubor manifestu zahrnuje nasazení Kubernetes pro ukázkovou aplikaci ASP.NET a externí službu Kubernetes pro přístup k aplikaci z internetu.
Ukázková aplikace ASP.NET je poskytována jako součást ukázek rozhraní .NET Framework a běží v kontejneru Windows Serveru. Soubor manifestu Kubernetes musí definovat selektor uzlu, který vašemu clusteru AKS řekne, aby na uzlu, který může spouštět kontejnery Windows Serveru, spustil pod ukázkové aplikace ASP.NET.
Vytvořte soubor s názvem
sample.yaml
a vložte následující definici YAML.apiVersion: apps/v1 kind: Deployment metadata: name: sample labels: app: sample spec: replicas: 1 template: metadata: name: sample labels: app: sample spec: nodeSelector: "kubernetes.io/os": windows containers: - name: sample image: mcr.microsoft.com/dotnet/framework/samples:aspnetapp resources: limits: cpu: 1 memory: 800M ports: - containerPort: 80 selector: matchLabels: app: sample --- apiVersion: v1 kind: Service metadata: name: sample spec: type: LoadBalancer ports: - protocol: TCP port: 80 selector: app: sample
Rozpis souborů manifestu YAML najdete v tématu Nasazení a manifesty YAML.
Pokud soubor YAML vytvoříte a uložíte místně, můžete soubor manifestu nahrát do výchozího adresáře v CloudShellu tak , že vyberete tlačítko Nahrát/Stáhnout soubory a vyberete soubor z místního systému souborů.
Nasaďte aplikaci pomocí
kubectl apply
příkazu a zadejte název manifestu YAML.kubectl apply -f sample.yaml
Následující ukázkový výstup ukazuje úspěšné vytvoření nasazení a služby:
deployment.apps/sample created service/sample created
Testování aplikace
Když se aplikace spustí, služba Kubernetes zveřejní front-end aplikace na internetu. Dokončení tohoto procesu může trvat několik minut. Občas může zřízení služby trvat déle než několik minut. Povolte zřizování až 10 minut.
Pomocí příkazu zkontrolujte stav nasazených podů
kubectl get pods
. Než budete pokračovat, udělejte všechny podyRunning
.kubectl get pods
Sledujte průběh pomocí
kubectl get service
příkazu s argumentem--watch
.kubectl get service sample --watch
Na začátku výstup zobrazí externí IP adresu ukázkové služby jako čekající:
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE sample LoadBalancer 10.0.37.27 <pending> 80:30572/TCP 6s
Když se externí IP adresa změní z čekání na skutečnou
kubectl
veřejnou IP adresu, použijteCTRL-C
k zastavení procesu sledování.Prohlédněte si ukázkovou aplikaci v akci otevřením webového prohlížeče na externí IP adresu vaší služby.
Odstranění prostředků
Pokud nechcete projít kurzem AKS, měli byste cluster odstranit, abyste se vyhnuli poplatkům za Azure.
Na webu Azure Portal přejděte do své skupiny prostředků.
Vyberte Odstranit skupinu prostředků.
Zadejte název vaší skupiny prostředků, abyste potvrdili odstranění, a vyberte Odstranit.
V potvrzovací dialogovém okně Odstranit vyberte Odstranit.
Poznámka:
Cluster AKS byl vytvořen se spravovanou identitou přiřazenou systémem (výchozí možnost identity použitá v tomto rychlém startu), identita se spravuje platformou a nevyžaduje odebrání.
Další kroky
V tomto rychlém startu jste nasadili cluster Kubernetes a pak jste do něj nasadili ukázkovou aplikaci ASP.NET v kontejneru Windows Serveru. Tato ukázková aplikace slouží jenom pro ukázkové účely a nepředstavuje všechny osvědčené postupy pro aplikace Kubernetes. Pokyny k vytváření úplných řešení pomocí AKS pro produkční prostředí najdete v pokynech k řešení AKS.
Pokud chcete získat další informace o AKS a projít si kompletní příklad nasazení kódu k nasazení, pokračujte kurzem clusteru Kubernetes.
Azure Kubernetes Service