Distribuera en lokalt installerad gateway till Kubernetes med YAML

GÄLLER FÖR: Utvecklare | Premium

Den här artikeln beskriver stegen för att distribuera den lokala gatewaykomponenten i Azure API Management till ett Kubernetes-kluster.

Viktigt!

Stöd för azure API Management med egen värdbaserad gateway version 0 och version 1-containeravbildningar upphör den 1 oktober 2023, tillsammans med motsvarande Konfigurations-API v1. Använd vår migreringsguide för att använda lokalt installerad gateway v2.0.0 eller senare med Configuration API v2. Läs mer i vår utfasningsdokumentation

Kommentar

Du kan också distribuera en lokalt installerad gateway till ett Azure Arc-aktiverat Kubernetes-kluster som ett klustertillägg.

Förutsättningar

Distribuera till Kubernetes

Dricks

Följande steg distribuerar den lokalt installerade gatewayen till Kubernetes och aktiverar autentisering till API Management-instansen med hjälp av en gatewayåtkomsttoken (autentiseringsnyckel). Du kan också distribuera den lokalt installerade gatewayen till Kubernetes och aktivera autentisering till API Management-instansen med hjälp av Microsoft Entra-ID.

  1. Välj Gatewayer under Distribution och infrastruktur.
  2. Välj den gatewayresurs med egen värd som du vill distribuera.
  3. Välj Distribution.
  4. En åtkomsttoken i textrutan Token genererades automatiskt åt dig, baserat på standardvärdena för förfallo - och hemlighetsnyckeln . Om det behövs väljer du värden i endera eller båda kontrollerna för att generera en ny token.
  5. Välj fliken Kubernetes under Distributionsskript.
  6. <Välj länken gateway-name>.yml file och ladda ned YAML-filen.
  7. Välj kopieringsikonen i det nedre högra hörnet i textrutan Distribuera för att spara kubectl kommandona i Urklipp.
  8. När du använder Azure Kubernetes Service (AKS) kör du az aks get-credentials --resource-group <resource-group-name> --name <resource-name> --admin i en ny terminalsession.
  9. Kör kommandona för att skapa nödvändiga Kubernetes-objekt i standardnamnområdet och starta gatewaypoddar med egen värd från containeravbildningen som laddats ned från Microsofts artefaktregister.
    • Det första steget skapar en Kubernetes-hemlighet som innehåller åtkomsttoken som genererades i steg 4. Därefter skapar den en Kubernetes-distribution för den lokalt installerade gatewayen som använder en ConfigMap med konfigurationen av gatewayen.

Bekräfta att gatewayen körs

  1. Kör följande kommando för att kontrollera om distributionen lyckades. Det kan ta lite tid innan alla objekt skapas och att poddarna initieras.

    kubectl get deployments
    

    Den bör returnera

    NAME             READY   UP-TO-DATE   AVAILABLE   AGE
    <gateway-name>   1/1     1            1           18s
    
  2. Kör följande kommando för att kontrollera om tjänsterna har skapats. Dina tjänst-IP-adresser och portar kommer att vara olika.

    kubectl get services
    

    Den bör returnera

    NAME                                TYPE           CLUSTER-IP      EXTERNAL-IP   PORT(S)                      AGE
    <gateway-name>-live-traffic         ClusterIP      None            <none>        4290/UDP,4291/UDP   9m1s
    <gateway-name>-instance-discovery   LoadBalancer   10.99.236.168   <pending>     80:31620/TCP,443:30456/TCP   9m1s
    
  3. Gå tillbaka till Azure-portalen och välj Översikt.

  4. Bekräfta att Status visar en grön bockmarkering följt av ett nodantal som matchar antalet repliker som anges i YAML-filen. Den här statusen innebär att de distribuerade lokala gatewaypoddarna kommunicerar med API Management-tjänsten och har ett regelbundet "pulsslag". Skärmbild som visar status för en lokalt installerad gateway i portalen.

Dricks

  • kubectl logs deployment/<gateway-name> Kör kommandot för att visa loggar från en slumpmässigt vald podd om det finns fler än en.
  • Kör kubectl logs -h för en fullständig uppsättning kommandoalternativ, till exempel hur du visar loggar för en specifik podd eller container.

Nästa steg