Snabbstart: Distribuera ett program till ett nytt Azure Kubernetes Service (AKS) automatiskt kluster från en kodlagringsplats

Gäller för: ✔️ AKS Automatic

Använd automatiserade distributioner för att skapa och distribuera ett program från en kodlagringsplats till ett nytt eller befintligt AKS-automatiskt kluster. Automatiserade distributioner förenklar processen med att konfigurera ett arbetsflöde för GitHub åtgärd för att skapa och distribuera din kod. När du är ansluten startar varje ny commit pipelinen. Automatiserade distributioner bygger på draft.sh. När du skapar ett nytt distributionsarbetsflöde kan du använda en befintlig Dockerfile, generera en Dockerfile, använda befintliga Kubernetes-manifest eller generera Kubernetes-manifest. De genererade manifesten skapas med bästa praxis för säkerhet och återhämtning i åtanke. AKS Automatic innehåller även ett serviceavtal för poddberedskap som garanterar att 99,9% av kvalificerade poddberedskapsåtgärder slutförs inom 5 minuter, vilket garanterar tillförlitlig, självläkande infrastruktur för dina applikationer.

I den här snabbstarten lär du dig att:

  • Anslut till en kodlagringsplats.
  • Containerisera ditt program.
  • Konfigurera Kubernetes-manifest.
  • Skapa ett AKS-automatiskt kluster.
  • Distribuera programmet via en pull-begäran.

Innan du börjar

Viktigt!

Från och med AKS 1.36 aktiverar nya AKS Automatic-kluster som standard Kubernetes Gateway API via tillägget för programroutning i stället för Managed NGINX ingress via tillägget för programroutning på grund av den upstreama avvecklingen av Ingress NGINX.

Befintliga automatiska kluster påverkas inte men bör påbörja migreringen till Kubernetes Gateway-API:et via tillägget för programdirigering.

Begränsningar

Följande begränsningar gäller för AKS automatiska kluster:

  • AKS Automatic är allmänt tillgängligt i följande regioner: australiaeast, austriaeast, belgiumcentral, brazilsouth, canadacentral, centralindia, centralus, chilecentral, denmarkeast, eastasia, eastus, eastus2, francecentral, germanywestcentral, indonesiacentral, israelcentral, italynorth, japaneast, japanwest, koreacentral, malaysiawest, mexicocentral, newzealandnorth, northeurope, norwayeast, polandcentral, southafricanorth, southcentralus, southeastasia, spaincentral, swedencentral, switzerlandnorth, uaenorth, uksouth, westeurope, westus2, westus3.
    • Nya AUTOMATISKA AKS-kluster aktiverar som standard hanterade systemnodpooler och LocalDNS. Du kan inte skapa AKS Automatic-kluster utan hanterade systemnodpooler i någon region.
  • Det automatiska AKS-klustret har nodnedlåsning av resursgrupper förkonfigurerat, vilket inte tillåter ändringar i resursgruppen MC_, vilket förhindrar virtuella nätverkslänkar i standardzonen Private DNS. För scenarier mellan virtuella nätverk eller anpassade DNS-scenarier använder du anpassat nätverk och privat DNS genom att följa Skapa ett privat Azure Kubernetes Service (AKS) Automatiskt kluster i ett anpassat virtuellt nätverk.
  • Azure CLI version 2.86.0 eller senare krävs. Kör kommandot för att hitta versionen az --version . Om du behöver installera eller uppgradera, se Installera Azure CLI.
  • Följande tillägg stöds inte:
  • Windows-noder stöds inte.
  • Migrering mellan AKS-bas-SKU och automatisk SKU stöds inte.
  • Migreringar mellan AKS-automatiska kluster utan hanterade systemnodpooler och AKS Automatiska kluster med hanterade systemnodpooler stöds inte.

Hämta programmets källkod

Om du vill distribuera ett program från en kodlagringsplats börjar du på startsidan Azure.

Skärmbild som visar hur du väljer

  1. Sök efter Kubernetes-tjänster i det övre sökfältet.
  2. Välj Kubernetes-tjänster i sökresultaten.
  3. Välj knappen Skapa och välj Distribuera program.

Ansluta till källkodslagringsplatsen

Skapa och automatiserat distributionsarbetsflöde och auktorisera det för att ansluta till den önskade källkodslagringsplatsen.

  1. På fliken Grundläggande väljer du Distribuera ditt program.
  2. Under Project information väljer du Subscription, Resource Group och Region.
  3. Under Databasinformation anger du ett namn för arbetsflödet och väljer sedan Authorize access för att ansluta till önskad GitHub lagringsplats.
  4. Välj lagringsplats och gren.
  5. Välj knappen Nästa.

Välj containeravbildningskonfigurationen

För att göra ett program redo för Kubernetes måste du skapa det i en containeravbildning och lagras i ett containerregister. Du använder en Dockerfile för att ge instruktioner om hur du skapar containeravbildningen. Om källkodslagringsplatsen inte redan har en Dockerfile kan automatiserade distributioner generera en åt dig, annars kan du använda en befintlig Dockerfile.

Använd Automatiserade distributioner för att generera en Dockerfile för många språk och ramverk som Go, C#, Node.js, Python, Java, Gradle, Clojure, PHP, Ruby, Erlang, Swift och Rust. Språkstöd bygger på vad som är tillgängligt i draft.sh.

  1. Välj Autocontainerize (generera Dockerfile) för containerkonfigurationen.
  2. Välj platsen där den genererade Dockerfile ska sparas på lagringsplatsen.
  3. Välj programmiljön i listan över språk och ramverk som stöds.
  4. Ange applikationsporten.
  5. Välj en befintlig Azure Container Registry eller skapa en ny. Det här registret används för att lagra den byggda programbilden. Kubelet-identiteten för AKS Automatic-klustret ges AcrPull behörigheter i det registret.

Välj Kubernetes-manifestkonfigurationen

Ett program som körs på Kubernetes består av många primitiva Kubernetes-komponenter. Dessa komponenter beskriver vilken containeravbildning som ska användas, hur många repliker som ska köras, om det krävs en offentlig IP-adress för att exponera programmet osv. Mer information finns i den officiella Kubernetes-dokumentationen. Om din källkodslagringsplats inte redan har de grundläggande Kubernetes-manifesten att distribuera kan automatiserade distributioner generera dem åt dig, annars kan du använda en uppsättning befintliga manifest. Du kan också välja ett befintligt Helm-diagram.

Använd Automatiserade distributioner för att generera en uppsättning grundläggande Kubernetes-manifestfiler för att få igång ditt program. För närvarande skapar automatiserade distributioner en Deployment, en Serviceoch en ConfigMap.

De genererade manifesten är utformade för att tillämpa rekommendationer för distributionsskydd, till exempel:

Så här genererar du Kubernetes-manifest:

  1. Välj Generera programdistributionsfiler för distributionsalternativen.
  2. Ange applikationsporten. Den här porten används på den genererade Service.
  3. Välj platsen där du vill spara de genererade Kubernetes-manifesten på lagringsplatsen.
  4. Välj knappen Nästa.

Välj var du vill distribuera programmet

Om du inte redan har ett kluster kan du skapa ett nytt AKS-automatiskt kluster som en del av den här distributionen.

  1. Välj Skapa automatiskt Kubernetes-kluster för klusterkonfigurationen.
  2. Ange ett klusternamn.
  3. Välj underhållsschemat för automatisk uppgradering eller låt standardinställningen vara markerad.
  4. Ange kubernetes-namnområdet där programmet distribueras.
  5. Välj övervaknings- och loggningsnivå eller låt standardvärdet vara valt.
  6. Välj knappen Nästa.

Granska konfiguration och distribution

Granska konfigurationen för kluster-, program- och Kubernetes-manifesten och välj sedan Distribuera. Det tar några minuter att skapa ett kluster, navigera inte bort från distributionssidan.

Skärmbild som visar Distribution av programmet.

  1. Ett nytt AKS-automatiskt kluster skapas eller ett befintligt har konfigurerats.
  2. Ett containerregister skapas eller så konfigureras ett befintligt med klustret.
  3. Federerade autentiseringsuppgifter skapas så att arbetsflödet för GitHub åtgärd kan distribueras till klustret.
  4. En pull-begäran skapas på kodlagringsplatsen med alla genererade filer och arbetsflödet.

Granska och sammanfoga pull-begäran

När distributionen lyckas väljer du knappen Visa pull-begäran för att visa information om den genererade pull-begäran på kodlagringsplatsen.

Skärmbild av pull-begäran på GitHub.

  1. Granska ändringarna under Filer har ändrats och gör önskade ändringar.
  2. Välj Koppla pull-begäran för att sammanfoga ändringarna till din kodlagringsplats.

När ändringen sammanfogas kör GitHub Actions-arbetsflödet som bygger din applikation till en containeravbildning, lagrar den i Azure Container Registry och distribuerar den på klustret.

Skärmbild som visar ett GitHub Actions-arbetsflöde som pågår.

Kontrollera de distribuerade resurserna

När pipelinen har slutförts kan du granska den skapade Kubernetes Service på Azure-portalen genom att välja Tjänster och ingresser under Kubernetes-resurser tjänstmeny.

Skärmbild av fönstret Tjänster och ingresser.

Om du väljer den externa IP-adressen bör du öppna en ny webbläsarsida med det program som körs.

Skärmbild som visar contoso Air-programmet som körs.

Ta bort resurser

När du är klar med klustret kan du ta bort det för att undvika Azure avgifter.

  1. I Azure-portalen går du till resursgruppen.
  2. Välj Ta bort resursgrupp.
  3. Ange namnet på resursgruppen för att bekräfta borttagningen och välj Ta bort.
  4. I dialogrutan Ta bort bekräftelse väljer du Ta bort.

Nästa steg

I den här snabbstarten distribuerade du ett program till ett Kubernetes-kluster med hjälp av AKS Automatic och konfigurerade en ci/CD-pipeline (kontinuerlig integrering/kontinuerlig distribution) från en kodlagringsplats.

Om du vill veta mer om AKS Automatic fortsätter du till introduktionen.