Referência: Configurações de configuração do gateway self-hosted do Azure Arc

APLICA-SE A: Desenvolvedor, Premium

Este artigo fornece uma referência para as configurações necessárias e opcionais para configurar a extensão Azure Arc para o container de gateway auto-hospedado de API Management.

Importante

Atualmente, o gateway auto-hospedado do Gerenciamento de API no Azure Arc está em versão prévia. Durante a versão prévia, a extensão de gateway do 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 (Central e Sul)
  • Alemanha (Norte e Centro-Oeste)
  • Índia (Centro, Sul, Oeste, Jio Central e 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 e Norte)
  • Reino Unido (UK – Sul)
  • Estados Unidos (EUA – Central, EUA Central, Leste, Leste 2, Leste 2 EUAP, Centro-Norte, Centro-Sul, Centro-Oeste, Oeste, Oeste 2, Oeste 3)

Integração da API de configuração

O gateway auto-hospedado usa a API de Configuração para se conectar ao Gerenciamento de API do Azure, obtendo a configuração mais recente e enviando métricas, quando ativado.

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

Nome Descrição Obrigatório Default
gateway.configuration.uri Endpoint de configuração no Gerenciamento de API do Azure para o gateway auto-hospedado. Encontre esse valor no portal do Azure emDeploy de Gateways>. Yes N/A
gateway.auth.token Chave de autenticação para autenticação com o serviço Gerenciamento de API do Azure. Normalmente, começa com GatewayKey. Yes N/A
gateway.configuration.backup.enabled Se ativado, armazena uma cópia de backup da configuração mais recente baixada em um volume de armazenamento. No false
gateway.configuration.backup.persistentVolumeClaim.accessMode Modo de acesso para o pod de Reivindicação de Volume Persistente (PVC). No ReadWriteMany
gateway.configuration.backup.persistentVolumeClaim.size Tamanho da Reivindicação de Volume Persistente (PVC) a ser criada. No 50Mi
gateway.configuration.backup.persistentVolumeClaim.storageClassName Nome da classe de armazenamento a usar para a Reivindicação de Volume Persistente (PVC). Quando você não atribui um valor (null), a plataforma usa o padrão. A classe de armazenamento especificada deve suportar ReadWriteMany modo de acesso. Saiba mais sobre os provedores de volume suportados e seus modos de acesso suportados. No null

Descoberta e sincronização entre instâncias

Nome Descrição Obrigatório Default
service.instance.heartbeat.port Porta UDP que as instâncias de uma implantação de gateway auto-hospedada usam para enviar batimentos cardíacos para outras instâncias. No 4291
service.instance.synchronization.port Porta UDP que instâncias de gateway auto-hospedadas usam para sincronizar limitação de taxa entre múltiplas instâncias. No 4290

Métricas

Nome Descrição Obrigatório Default
telemetry.metrics.cloud Indique se é necessário ativar métricas de emissão no Azure Monitor. No true
telemetry.metrics.local Permita 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 Endpoint StatsD. Sim, se telemetry.metrics.local for definido para statsd; caso contrário, não. N/A
telemetry.metrics.localStatsd.sampling Métricas StatsD sobre taxa de amostragem. O valor deve estar entre 0 e 1, por exemplo, 0,5. No N/A
telemetry.metrics.localStatsd.tagFormat Formato de marcaçãode exportador do StatsD. Valor é uma das seguintes opções: librato, dogStatsD, influxDB. No N/A
telemetry.metrics.opentelemetry.enabled Indicar se deve ativar métricas de emissão para um coletor OpenTelemetry no Kubernetes. No false
telemetry.metrics.opentelemetry.collector.uri URI do coletor OpenTelemetry para enviar métricas. Sim, se observability.opentelemetry.enabled for definido para true; caso contrário, não. N/A

Logs

Nome Descrição Obrigatório Default
telemetry.logs.std Ative o registro em um fluxo padrão. Valor é uma das seguintes opções: none, text, json. No text
telemetry.logs.local Ative o registro local. Valor é uma das seguintes opções: none, auto, localsyslog, rfc5424, journal, json No auto
telemetry.logs.localConfig.localsyslog.endpoint Endpoint 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 local de facilitação de syslog, por exemplo, 7. No N/A
telemetry.logs.localConfig.rfc5424.endpoint Endpoint RFC5424. Sim, se telemetry.logs.local estiver definido como rfc5424; caso contrário, não. N/A
telemetry.logs.localConfig.rfc5424.facility Código da instalação conforme o rfc5424, por exemplo, 7 No N/A
telemetry.logs.localConfig.journal.endpoint Endpoint 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 Obrigatório Default
service.type Tipo de serviço Kubernetes para usar para expor o gateway. (Tipos de serviço Kubernetes) No ClusterIP
service.http.port Porta para usar na exposição de tráfego HTTP. No 8080
service.http.nodePort Porta no nó para usar na exposição do tráfego HTTP. Essa configuração exige NodePort como o tipo de serviço. No N/A
service.https.port Porta para usar e expor tráfego HTTPS. No 8081
service.https.nodePort Porta no nó para usar na exposição do tráfego HTTPS. Essa configuração exige NodePort como o tipo de serviço. No N/A
service.annotations Anotações para adicionar ao serviço Kubernetes para o gateway. No N/A
ingress.annotations Anotações para adicionar ao Kubernetes Ingress para o gateway. (suporte experimental ao Kubernetes Ingress) No N/A
ingress.enabled Indique se deve ou não usar o Kubernetes Ingress. (suporte experimental ao Kubernetes Ingress) No false
ingress.tls Configuração TLS para Kubernetes Ingress. (suporte experimental ao Kubernetes Ingress) No N/A
ingress.hosts Configuração dos hosts a serem usados para o Kubernetes Ingress. (suporte experimental ao Kubernetes Ingress) No N/A

Integrations

O gateway autohospedado integra-se a várias outras tecnologias. Esta seção oferece uma visão geral das opções de configuração que você pode usar.

Dapr

Nome Descrição Obrigatório Default
dapr.enabled Indica se deve usar integração com Dapr. No false
dapr.app.id ID de aplicação para usar na integração com Dapr. No None
dapr.config Define qual Configuração CRD o Dapr deve usar. No tracing
dapr.logging.level Nível de verbosidade logarítmica do sidecar Dapr. No info
dapr.logging.useJsonOutput Indica se o registro está em formato JSON. No true

Azure Monitor

Nome Descrição Obrigatório Default
monitoring.customResourceId ID de recurso do workspace do Azure Log Analytics para enviar logs. No N/A
monitoring.ingestionKey Chave de ingestão para autenticação 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 enviar logs. No N/A

Escalonamento de imagem e carga de trabalho

Kubernetes é uma poderosa plataforma de orquestração que oferece muita flexibilidade sobre o que deve ser implantado e como deve ser agendado.

Esta seção oferece uma visão geral das opções de configuração disponíveis que você pode usar para influenciar a imagem utilizada, como ela é programada e configurada para se auto-regenerar.

Nome Descrição Obrigatório Default
replicaCount Número de instâncias do gateway auto-hospedado para rodar. No 3
image.repository Imagem para rodar. No mcr.microsoft.com/azure-api-management/gateway
image.pullPolicy Política para usar na extração de imagens de contêineres. No IfNotPresent
image.tag Tag de imagem de contêiner para usar. No A versão do aplicativo da extensão é usada
imagePullSecrets Segredo do Kubernetes para usar na autenticação com o registro de contêineres ao puxar a imagem do contêiner. No N/A
probes.readiness.httpGet.path Caminho URI para usar nas sondas de prontidão do contêiner No /status-0123456789abcdef
probes.readiness.httpGet.port Porta para uso em sondas de vivacidade do contêiner No http
probes.liveness.httpGet.path Caminho URI a ser usado para sondas de vivacidade do contêiner No /status-0123456789abcdef
probes.liveness.httpGet.port Porta para uso em sondas de vivacidade do contêiner No http
highAvailability.enabled Indicar se o gateway deve ser agendado ou não altamente disponível no cluster. No false
highAvailability.disruption.maximumUnavailable Quantidade de pods que podem ficar indisponíveis devido a interrupções voluntárias. No 25%
highAvailability.podTopologySpread.whenUnsatisfiable Indicação de como os pods devem ser distribuídos entre os nós caso o requisito não seja atendido. Saiba mais na documentação do Kubernetes No 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ó onde o gateway deve operar. No N/A
affinity Affinity for pod scheduling (Kubernetes node affinity) No N/A
tolerations Tolerâncias para escalonamento de pods (contaminações e tolerâncias de Kubernetes) No N/A