Поделиться через


Развертывание самостоятельно размещенного шлюза Azure API Management для Azure Kubernetes Service

ОБЛАСТЬ ПРИМЕНЕНИЯ: Разработчик | Премия

В этой статье приведены инструкции по развертыванию компонента локального шлюза управления API Azure в службе Azure Kubernetes (AKS). Сведения о развертывании самостоятельно размещенного шлюза в кластере Kubernetes см. в статье о развертывании с помощью файла YAML развертывания или с Helm.

Примечание.

Также можно развернуть локальный шлюз в кластере Kubernetes с поддержкой Azure Arc в качестве расширения кластера.

Предварительные условия

Развертывание локального шлюза в AKS

  1. Выберите Gateways (Шлюзы) в разделе Deployment and infrastructure (Развертывание и инфраструктура).

  2. Выберите ресурс локального шлюза, который нужно развернуть.

  3. Выберите Deployment.

  4. Новый маркер в текстовом поле Token (Маркер) был создан автоматически с использованием значений Expiry (Срок действия) и Secret Key (Ключ секрета) по умолчанию. При необходимости измените одно или оба значения и нажмите кнопку Generate (Создать), чтобы создать токен.

  5. Убедитесь, что в разделе Deployment scripts (Скрипты развертывания) выбран вариант Kubernetes.

  6. Выберите ссылку <gateway-name>.yml рядом с Развертыванием, чтобы скачать файл.

  7. При необходимости измените config.service.endpoint, сопоставления портов и имя контейнера в .yml-файле.

  8. В зависимости от ситуации может потребоваться изменить тип службы.

    • Значение по умолчанию LoadBalancer указывает на внешний балансировщик нагрузки.
    • Вы можете использовать внутренний балансировщик нагрузки, чтобы доступ к локальному шлюзу могли получить только внутренние пользователи.
    • В следующем примере используется NodePort.
  9. Выберите значок копирования, расположенный справа от текстового поля Deploy, чтобы скопировать команду kubectl в буфер обмена.

  10. Вставьте команду в окно терминала (или командной строки). Команда предполагает, что скачанный файл среды находится в текущем каталоге.

    kubectl apply -f <gateway-name>.yaml
    
  11. Выполните команду . Команда указывает кластеру AKS сделать следующее:

    • запустить контейнер с использованием образа локального шлюза, скачанного из Microsoft Container Registry;
    • настроить контейнер для доступа к портам HTTP (8080) и HTTPS (443).
  12. Выполните следующую команду, чтобы проверить, запущен ли модуль pod шлюза. Это имя модуля pod является примером.

    kubectl get pods
    NAME                                   READY     STATUS    RESTARTS   AGE
    contoso-apim-gateway-59f5fb94c-s9stz   1/1       Running   0          1m
    
  13. Выполните следующую команду, чтобы проверить, запущена ли служба шлюза. Имя службы и IP-адреса являются примерами.

    kubectl get services
    NAME             TYPE        CLUSTER-IP      EXTERNAL-IP   PORT(S)                      AGE
    contosogateway   NodePort    10.110.230.87   <none>        80:32504/TCP,443:30043/TCP   1m
    
  14. Перейдите в портал Azure и убедитесь, что развернутый узел шлюза сообщает о состоянии работоспособности.

Совет

kubectl logs <gateway-pod-name> Используйте команду для просмотра моментального снимка локального журнала шлюза.