Udostępnij za pośrednictwem


Wdrażanie własnej bramy na platformie Kubernetes przy użyciu języka YAML

DOTYCZY: Developer | Premium

W tym artykule opisano kroki wdrażania komponentu bramy własnej usługi Azure API Management w klastrze Kubernetes.

Uwaga

Bramę hostowaną samodzielnie można również wdrożyć w klastrze Azure Arc-enabled Kubernetes jako rozszerzenie klastra.

Wymagania wstępne

Wdrażanie na platformie Kubernetes

Napiwek

Poniższe kroki umożliwiają wdrożenie własnej bramy na platformie Kubernetes i włączenie uwierzytelniania w wystąpieniu usługi API Management przy użyciu tokenu dostępu bramy (klucza uwierzytelniania). Możesz również wdrożyć bramę własną hostowaną na platformie Kubernetes i w wystąpieniu usługi API Management włączyć uwierzytelnianie przy użyciu Microsoft Entra ID.

  1. Wybierz pozycję Bramy w obszarze Wdrażanie i infrastruktura.
  2. Wybierz zasób bramy samodzielnie hostowanej, który chcesz wdrożyć.
  3. Wybierz pozycję Wdrożenie.
  4. W polu tekstowym Token znajduje się token dostępu, który został wygenerowany automatycznie na podstawie domyślnych wartości wygasania i klucza tajnego. W razie potrzeby wybierz wartości w obu kontrolkach, aby wygenerować nowy token.
  5. Wybierz zakładkę Kubernetes w Skrypty wdrażania.
  6. Wybierz link do pliku <gateway-name>.yml i pobierz plik YAML.
  7. Wybierz ikonę kopiowania w prawym dolnym rogu pola tekstowego Wdróż, aby zapisać kubectl polecenia w schowku.
  8. W przypadku korzystania z usługi Azure Kubernetes Service (AKS) uruchom polecenie az aks get-credentials --resource-group <resource-group-name> --name <resource-name> --admin w nowej sesji terminalu.
  9. Uruchom polecenia, aby utworzyć niezbędne obiekty Kubernetes w domyślnej przestrzeni nazw i uruchomić zasobniki bramy samoobsługowej z obrazu kontenera pobranego z Rejestru Artefaktów Microsoft.
    • Pierwszy krok tworzy tajemnicę Kubernetes zawierającą token dostępu wygenerowany w kroku 4. Następnie tworzy wdrożenie platformy Kubernetes dla bramy hostowanej lokalnie, która używa obiektu ConfigMap, która zawiera konfigurację bramy.

Upewnij się, że brama jest uruchomiona

  1. Uruchom następujące polecenie, aby sprawdzić, czy wdrożenie zakończyło się pomyślnie. Tworzenie wszystkich obiektów i inicjalizacja zasobników może zająć trochę czasu.

    kubectl get deployments
    

    Powinna zostać zwrócona

    NAME             READY   UP-TO-DATE   AVAILABLE   AGE
    <gateway-name>   1/1     1            1           18s
    
  2. Uruchom następujące polecenie, aby sprawdzić, czy usługi zostały pomyślnie utworzone. Adresy IP i porty usługi będą inne.

    kubectl get services
    

    Powinno zostać zwrócone

    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. Wróć do witryny Azure Portal i wybierz pozycję Przegląd.

  4. Upewnij się, że Status pokazuje zielony znacznik wyboru, a następnie liczba węzłów jest zgodna z liczbą replik określonych w pliku YAML. Ten stan oznacza, że wdrożone zasobniki własnego, hostowanego lokalnie, gatewaya pomyślnie komunikują się z usługą API Management i mają regularne "heartbeat". Zrzut ekranu przedstawiający stan własnego, hostowanego lokalnie, gatewaya w portalu.

Napiwek

  • Uruchom polecenie kubectl logs deployment/<gateway-name>, aby wyświetlić dzienniki z losowo wybranego zasobnika, gdy istnieje więcej niż jeden.
  • Uruchom polecenie kubectl logs -h , aby uzyskać pełny zestaw opcji poleceń, takich jak wyświetlanie dzienników dla określonego zasobnika lub kontenera.