Referência: Definições de configuração do Azure Arc do gateway auto-hospedado

APLICA-SE A: Developer | Prémio

Este artigo fornece uma referência para as configurações obrigatórias e opcionais que são usadas para configurar a extensão do Azure Arc para contêiner de gateway auto-hospedado do Gerenciamento de API.

Importante

O gateway auto-hospedado do Gerenciamento de API no Azure Arc está atualmente em visualização. Durante a visualização, a extensão do gateway de Gerenciamento de API está disponível nas seguintes regiões:

  • Ásia (Leste, Sudeste)
  • Austrália (Central, Central 2, Leste e Sudeste)
  • Brasil (Sul e Sudeste)
  • Canadá (Central, Leste)
  • Europa (Norte, Oeste)
  • França (Centro e Sul)
  • Alemanha (Norte e Centro-Oeste)
  • Índia (Central, Sul, Oeste, Jio central & Jio Oeste)
  • Japão (Leste e Oeste)
  • Coreia (Central e Sul)
  • Noruega (Leste e Oeste)
  • África do Sul (Norte e Oeste)
  • Suécia (Central)
  • Suíça (Norte e Oeste)
  • Emirados Árabes Unidos (EAU - Central & Norte)
  • Reino Unido (Reino Unido -Sul)
  • Estados Unidos (EUA - Central, Central EUAP, Leste, Leste 2, Leste 2 EUAP, Centro-Norte, Centro-Sul, Centro-Oeste, Oeste, Oeste 2, Oeste 3)

Integração com API de configuração

A API de Configuração é usada pelo gateway auto-hospedado para se conectar ao Gerenciamento de API do Azure para obter a configuração mais recente e enviar métricas, quando habilitada.

Aqui está uma visão geral de todas as opções de configuração:

Nome Descrição Necessário Predefinição
gateway.configuration.uri Ponto de extremidade de configuração no Gerenciamento de API do Azure para o gateway auto-hospedado. Encontre esse valor no portal do Azure em Implantação de gateways>. Sim N/A
gateway.auth.token Chave de autenticação para autenticar com o serviço de Gerenciamento de API do Azure. Normalmente começa com GatewayKey. Sim N/A
gateway.configuration.backup.enabled Se ativado, armazenará uma cópia de backup da configuração baixada mais recente em um volume de armazenamento false
gateway.configuration.backup.persistentVolumeClaim.accessMode Modo de acesso para o pod de Reivindicação de Volume Persistente (PVC) ReadWriteMany
gateway.configuration.backup.persistentVolumeClaim.size Tamanho da Declaração de Volume Persistente (PVC) a ser criada 50Mi
gateway.configuration.backup.persistentVolumeClaim.storageClassName Nome da classe de armazenamento a ser usado para a Declaração de Volume Persistente (PVC). Quando nenhum valor for atribuído (null), o padrão da plataforma será usado. A classe de armazenamento especificada deve suportar ReadWriteMany o modo de acesso, saber mais sobre os provedores de volume suportados e seus modos de acesso suportados. null

Descoberta entre instâncias e sincronização

Nome Descrição Necessário Predefinição
service.instance.heartbeat.port Porta UDP usada para instâncias de uma implantação de gateway auto-hospedado para enviar pulsações para outras instâncias. Não 4291
service.instance.synchronization.port Porta UDP usada para instâncias de gateway auto-hospedadas para sincronizar a limitação de taxa em várias instâncias. Não 4290

Métricas

Nome Descrição Necessário Predefinição
telemetry.metrics.cloud Indicação se as métricas de emissão devem ou não ser habilitadas para o Azure Monitor. Não true
telemetry.metrics.local Habilite a coleta de métricas locais por meio do StatsD. Valor é uma das seguintes opções: none, statsd. No N/A
telemetry.metrics.localStatsd.endpoint Ponto final StatsD. Sim, se telemetry.metrics.local estiver definido como statsd; caso contrário, não. N/A
telemetry.metrics.localStatsd.sampling Taxa de amostragem de métricas StatsD. O valor deve estar entre 0 e 1, por exemplo, 0,5. No N/A
telemetry.metrics.localStatsd.tagFormat Formato de etiquetagem do exportador StatsD. Valor é uma das seguintes opções: ibrato, dogStatsD, influxDB. No N/A
telemetry.metrics.opentelemetry.enabled Indicação se as métricas de emissão devem ou não ser habilitadas para um coletor OpenTelemetry no Kubernetes. Não false
telemetry.metrics.opentelemetry.collector.uri URI do coletor OpenTelemetry para o qual enviar métricas. Sim, se observability.opentelemetry.enabled estiver definido como true; caso contrário, não. N/A

Registos

Nome Descrição Necessário Predefinição
telemetry.logs.std Habilite o registro em log em um fluxo padrão. Valor é uma das seguintes opções: none, text, json. Não text
telemetry.logs.local Habilite o registro em log local. Valor é uma das seguintes opções: none, auto, localsyslog, rfc5424, journal, , json Não auto
telemetry.logs.localConfig.localsyslog.endpoint Ponto de extremidade para syslogs locais Sim, se telemetry.logs.local estiver definido como localsyslog; caso contrário, não. N/A
telemetry.logs.localConfig.localsyslog.facility Especifica o código do recurso syslog local, por exemplo, 7. No N/A
telemetry.logs.localConfig.rfc5424.endpoint Ponto de extremidade RFC5424. Sim, se telemetry.logs.local estiver definido como rfc5424; caso contrário, não. N/A
telemetry.logs.localConfig.rfc5424.facility Código de instalação por rfc5424, por exemplo, 7 No N/A
telemetry.logs.localConfig.journal.endpoint Ponto final do diário. Sim, se telemetry.logs.local estiver definido como journal; caso contrário, não. N/A

Roteamento de tráfego

Nome Descrição Necessário Predefinição
service.type Tipo de serviço Kubernetes a ser usado para expor o gateway. (docs) Não ClusterIP
service.http.port Porta a ser usada para expor o tráfego HTTP. Não 8080
service.http.nodePort Porta no nó a ser usada para expor o tráfego HTTP. Isso requer NodePort como tipo de serviço. No N/A
service.https.port Porta a ser usada para expor o tráfego HTTPS. Não 8081
service.https.nodePort Porta no nó a ser usada para expor o tráfego HTTPS. Isso requer NodePort como tipo de serviço. No N/A
service.annotations Anotações a serem adicionadas ao serviço Kubernetes para o gateway. No N/A
ingress.annotations Anotações para adicionar ao Kubernetes Ingress para o gateway. (experimental) No N/A
ingress.enabled Indicação se o Kubernetes Ingress deve ou não ser usado. (experimental) Não false
ingress.tls Configuração TLS para Kubernetes Ingress. (experimental) No N/A
ingress.hosts Configuração de hosts para uso no Kubernetes Ingress. (experimental) No N/A

Integrações

O gateway auto-hospedado integra-se com várias outras tecnologias. Esta seção fornece uma visão geral das opções de configuração disponíveis que você pode usar.

Dapr

Nome Descrição Necessário Predefinição
dapr.enabled Indicação se deve ou não ser utilizada a integração Dapr. Não false
dapr.app.id ID do aplicativo a ser usado para integração com Dapr Nenhuma
dapr.config Define qual configuração CRD Dapr deve usar tracing
dapr.logging.level Nível de verbosidade logarítmica do sidecar Dapr info
dapr.logging.useJsonOutput Indicação se o registro em log deve ou não estar no formato JSON true

Azure Monitor

Nome Descrição Necessário Predefinição
monitoring.customResourceId ID do recurso do espaço de trabalho do Azure Log Analytics para o qual enviar logs. No N/A
monitoring.ingestionKey Chave de ingestão para autenticar com o espaço de trabalho do Azure Log Analytics para enviar logs. No N/A
monitoring.workspaceId ID do espaço de trabalho do Azure Log Analytics para o qual enviar logs. No N/A

Imagem & agendamento de carga de trabalho

O Kubernetes é uma poderosa plataforma de orquestração que dá muita flexibilidade no que deve ser implantado e como deve ser agendado.

Esta seção fornece uma visão geral das opções de configuração disponíveis que você pode usar para influenciar a imagem usada, como ela é agendada e configurada para autorrecuperação.

Nome Descrição Necessário Predefinição
replicaCount Número de instâncias do gateway auto-hospedado a serem executados. Não 3
image.repository Imagem a executar. Não mcr.microsoft.com/azure-api-management/gateway
image.pullPolicy Política a ser usada para extrair imagens de contêiner. Não IfNotPresent
image.tag Tag de imagem de contêiner a ser usada. Não A versão do aplicativo da extensão é usada
imagePullSecrets Segredo do Kubernetes a ser usado para autenticação com o registro de contêiner ao extrair a imagem do contêiner. No N/A
probes.readiness.httpGet.path Caminho de URI a ser usado para testes de prontidão do contêiner Não /status-0123456789abcdef
probes.readiness.httpGet.port Porto a utilizar para sondas de vivacidade do contentor Não http
probes.liveness.httpGet.path Caminho de URI a ser usado para sondas de vivacidade do contêiner Não /status-0123456789abcdef
probes.liveness.httpGet.port Porto a utilizar para sondas de vivacidade do contentor Não http
highAvailability.enabled Indicação se o gateway deve ou não ser agendado como altamente disponível no cluster. Não false
highAvailability.disruption.maximumUnavailable Quantidade de cápsulas que podem ficar indisponíveis devido a interrupções voluntárias. Não 25%
highAvailability.podTopologySpread.whenUnsatisfiable Indicação de como os pods devem ser distribuídos pelos nós caso o requisito não possa ser atendido. Saiba mais nos documentos do Kubernetes Não ScheduleAnyway
resources Capacidade de definir recursos de CPU/memória para atribuir ao gateway No N/A
nodeSelector Capacidade de usar seletores para identificar o nó no qual o gateway deve ser executado. No N/A
affinity Afinidade para agendamento de pods (docs) No N/A
tolerations Tolerâncias para agendamento de pods (docs) No N/A

Próximos passos