Partilhar via


Implante o gateway auto-hospedado no Kubernetes com o Helm

APLICA-SE A: Developer | Prémio

O Helm é uma ferramenta de empacotamento de código aberto que ajuda você a instalar e gerenciar o ciclo de vida dos aplicativos Kubernetes. Ele permite que você gerencie gráficos do Kubernetes, que são pacotes de recursos do Kubernetes pré-configurados.

Este artigo fornece as etapas para implantar o componente de gateway auto-hospedado do Gerenciamento de API do Azure em um cluster do Kubernetes usando o Helm.

Importante

O suporte para imagens de contêiner de gateway auto-hospedado do Azure API Management versão 0 e versão 1 termina em 1º de outubro de 2023, juntamente com sua API de Configuração v1 correspondente. Use nosso guia de migração para usar o gateway auto-hospedado v2.0.0 ou superior com a API de configuração v2. Saiba mais em nossa documentação de substituição

Nota

Você também pode implantar o gateway auto-hospedado em um cluster Kubernetes habilitado para Azure Arc como uma extensão de cluster.

Pré-requisitos

  • Crie um cluster Kubernetes ou tenha acesso a um existente.

    Gorjeta

    Os clusters de nó único funcionam bem para fins de desenvolvimento e avaliação. Use clusters de vários nós certificados pelo Kubernetes no local ou na nuvem para cargas de trabalho de produção.

Adicionando o repositório Helm

  1. Adicione o Gerenciamento de API do Azure como um novo repositório Helm.

    helm repo add azure-apim-gateway https://azure.github.io/api-management-self-hosted-gateway/helm-charts/
    
  2. Atualize o repositório para buscar os gráficos Helm mais recentes.

    helm repo update
    
  3. Verifique a configuração do Helm listando todos os gráficos disponíveis.

    $ helm search repo azure-apim-gateway
    NAME                                            CHART VERSION   APP VERSION     DESCRIPTION
    azure-apim-gateway/azure-api-management-gateway 1.0.0           2.0.0           A Helm chart to deploy an Azure API Management ...
    

Implantar o gateway auto-hospedado no Kubernetes

  1. Selecione Gateways em Implantação e infraestrutura.

  2. Selecione o recurso de gateway auto-hospedado que você pretende implantar.

  3. Selecione Implantação.

  4. Um novo token na caixa de texto Token foi gerado automaticamente para você usando os valores padrão de Expiração e Chave Secreta. Ajuste um ou ambos, se desejado, e selecione Gerar para criar um novo token.

  5. Tome nota do seu Token e URL de Configuração

  6. Instalar o gateway auto-hospedado usando o gráfico Helm

    helm install azure-api-management-gateway \
                 --set gateway.configuration.uri='<your configuration url>' \
                 --set gateway.auth.key='<your token>' \
                 azure-apim-gateway/azure-api-management-gateway
    
  7. Execute o comando. O comando instrui seu cluster Kubernetes a:

    • Baixe a imagem do gateway auto-hospedado do Microsoft Container Registry e execute-o como um contêiner.
    • Configure o contêiner para expor portas HTTP (8080) e HTTPS (8081).

    Importante

    Por padrão, o gateway está usando um serviço ClusterIP e só é exposto dentro do cluster. Você pode alterar isso especificando o tipo de serviço Kubernetes durante a instalação.

    Por exemplo, você pode expô-lo por meio de um balanceador de carga adicionando --set service.type=LoadBalancer

  8. Execute o seguinte comando para verificar se o pod de gateway está em execução. O nome do seu pod será diferente.

    kubectl get pods
    NAME                                           READY     STATUS    RESTARTS   AGE
    azure-api-management-gateway-59f5fb94c-s9stz   1/1       Running   0          1m
    
  9. Execute o seguinte comando para verificar se o serviço de gateway está em execução. O nome do serviço e os endereços IP serão diferentes.

    kubectl get services
    NAME                           TYPE        CLUSTER-IP      EXTERNAL-IP   PORT(S)               AGE
    azure-api-management-gateway   ClusterIP   10.0.229.55     <none>        8080/TCP,8081/TCP     1m
    
  10. Retorne ao portal do Azure e confirme se o nó do gateway implantado está relatando o status íntegro.

Gorjeta

Use kubectl logs <gateway-pod-name> o comando para exibir um instantâneo do log de gateway auto-hospedado.

Próximos passos