Como configurar o gateway de entrada da Apigee
É possível configurar os gateways de entrada no overrides.yaml
. Exemplo:
Sintaxe
ingressGateways: - name: INGRESS_NAME replicaCountMin: REPLICAS_MIN replicaCountMax: REPLICAS_MAX resources: requests: cpu: CPU_COUNT_REQ memory: MEMORY_REQ limits: cpu: CPU_COUNT_LIMIT memory: MEMORY_LIMIT svcAnnotations: # optional. See Known issue 243599452. SVC_ANNOTATIONS_KEY: SVC_ANNOTATIONS_VALUE svcLoadBalancerIP: SVC_LOAD_BALANCER_IP # optional
Exemplo
ingressGateways: - name: prod1 replicaCountMin: 2 replicaCountMax: 100 resources: requests: cpu: 1 memory: 1Gi limits: cpu: 2 memory: 2Gi svcAnnotations: # optional. See Known issue 243599452. networking.gke.io/load-balancer-type: "Internal" svcLoadBalancerIP: 198.252.0.123
- INGRESS_NAME é o nome da implantação do gateway de entrada. Pode ser qualquer nome que atenda
aos seguintes requisitos:
- ter um comprimento máximo de 17 caracteres
- conter apenas caracteres alfanuméricos minúsculos, "-" ou ".";
- começar com um caractere alfanumérico;
- terminar com um caractere alfanumérico.
Consulte
ingressGateways[].name
na referência da propriedade de configuração. - REPLICAS_MIN e REPLICAS_MAX: as contagens mínima e máxima de réplicas para o
gateway de entrada da Apigee na instalação. Consulte
ingressGateways[].replicaCountMin
eingressGateways[].replicaCountMax
na referência da propriedade de configuração. - CPU_COUNT_REQ e MEMORY_REQ a solicitação de CPU e memória para cada
réplica do gateway de entrada da Apigee na sua instalação.
Consulte
ingressGateways[].resources.requests.cpu
eingressGateways[].resources.requests.memory
na referência da propriedade de configuração. - CPU_COUNT_LIMIT e MEMORY_LIMIT Os limites máximos de CPU e memória para
cada réplica do gateway de entrada da Apigee na sua instalação.
Consulte
ingressGateways[].resources.limits.cpu
eingressGateways[].resources.limits.memory
na referência da propriedade de configuração. - SVC_ANNOTATIONS_KEY SVC_ANNOTATIONS_VALUE (opcional):
Esse é um par de chave-valor que fornece anotações para o serviço de entrada padrão. A plataforma de nuvem usa anotações para ajudar a configurar a instalação híbrida, por exemplo, definindo o tipo do balanceador de carga como interno ou externo. Por exemplo:
ingressGateways: svcAnnotations: networking.gke.io/load-balancer-type: "Internal"
As anotações variam de acordo com a plataforma. Consulte a documentação da sua plataforma para ver as anotações obrigatórias e sugeridas.
ConsulteingressGateways[].svcAnnotations
na referência da propriedade de configuração. - SVC_LOAD_BALANCER_IP (opcional). Nas plataformas compatíveis com a especificação do endereço IP do balanceador
de carga, o balanceador de carga será criado com esse endereço IP. Nas plataformas que não
permitem especificar o IP do balanceador de carga, essa propriedade é ignorada.
Consulte
ingressGateways[].svcLoadBalancerIP
na referência da propriedade de configuração.
Aplicar a configuração do gateway de entrada da Apigee
Aplique as alterações no escopo da organização:
helm upgrade ORG_NAME apigee-org/ \ --namespace apigee \ --atomic \ -f OVERRIDES_FILE.yaml
Tarefas de gerenciamento
Algumas tarefas de gerenciamento comuns para o gateway de entrada da Apigee:
Como escalonar o gateway de entrada da Apigee:
Atualize as seguintes propriedades no arquivo de substituição.
ingressGateways[].replicaCountMax
ingressGateways[].replicaCountMin
Consulte ingressGateways
na referência de propriedades da configuração para mais detalhes.
Aplique as alterações:
helm upgrade ORG_NAME apigee-org/ \ --namespace apigee \ --atomic \ -f OVERRIDES_FILE.yaml
Atualizando a alocação de recursos
Atualize as seguintes propriedades no arquivo de substituição.
ingressGateways[].resources.limits.cpu
ingressGateways[].resources.limits.memory
ingressGateways[].resources.requests.cpu
ingressGateways[].resources.requests.memory
Consulte ingressGateways
na referência de propriedades da configuração para mais detalhes.
Aplique as alterações:
helm upgrade ORG_NAME apigee-org/ \ --namespace apigee \ --atomic \ -f OVERRIDES_FILE.yaml
Como atualizar o serviço de gateway de entrada da Apigee
Atualize as seguintes propriedades no arquivo de substituição.
ingressGateways[].svcAnnotations
ingressGateways[].svcLoadBalancerIP
Consulte ingressGateways
na referência de propriedades da configuração para mais detalhes.
Aplique as alterações:
helm upgrade ORG_NAME apigee-org/ \ --namespace apigee \ --atomic \ -f OVERRIDES_FILE.yaml
Desative o balanceador de carga para o serviço de gateway de entrada padrão da Apigee:
Se você criar um serviço personalizado do Kubernetes
para a implantação do gateway de entrada, será possível desativar a criação de um balanceador de carga
no serviço padrão do Kubernetes. Atualize a propriedade
ingressGateways[].svcType
para ClusterIP
no arquivo de substituição. Por exemplo:
ingressGateways: - name: my-ingress-gateway replicaCountMin: 2 replicaCountMax: 10 svcType: ClusterIP
Aplique as alterações:
helm upgrade ORG_NAME apigee-org/ \ --namespace apigee \ --atomic \ -f OVERRIDES_FILE.yaml
Configurar TLS e mTLS
Consulte Como configurar o TLS e o mTLS no gateway de entrada.
Como ativar clientes não SNI
Ativar clientes não SNI e HTTP.
Como instalar outros gateways de entrada da Apigee
No arquivo overrides.yaml
, é possível adicionar vários gateways de entrada. A propriedade de configuração ingressGateways
é uma matriz. Para mais informações, consulte
ingressGateways na
referência das propriedades de configuração.
Exemplo:
ingressGateways: - name: fruit replicaCountMin: 2 replicaCountMax: 10 - name: meat replicaCountMin: 2 replicaCountMax: 10
Aplique as alterações:
helm upgrade ORG_NAME apigee-org/ \ --namespace apigee \ --atomic \ -f OVERRIDES_FILE.yaml
Associações de hosts virtuais para implantações do gateway de entrada da Apigee
É possível usar rótulos do seletor para associar um host virtual a uma implantação de gateway de entrada da Apigee. No
exemplo a seguir, o host virtual spam-vh
está configurado para
ser executado no gateway de entrada chamado meat
e os outros dois hosts virtuais são executados
no gateway de entrada fruit
. Os gateways de entrada precisam ser rotulados corretamente, conforme explicado em
Como instalar gateways adicionais do Cloud Service Mesh.
virtualhosts: - name: spam-vh sslCertPath: cert-spam.crt sslKeyPath: cert-spam.key selector: app: apigee-ingressgateway ingress_name: meat - name: banana-vh sslCertPath: cert-banana.crt sslKeyPath: cert-banana.key selector: app: apigee-ingressgateway ingress_name: fruit - name: plum-vh sslCertPath: cert-plum.crt sslKeyPath: cert-plum.key selector: app: apigee-ingressgateway ingress_name: fruit
Como adicionar conjuntos de criptografia personalizados às implantações de gateway de entrada da Apigee
É possível adicionar conjuntos de criptografia personalizados à implantação do gateway de entrada da Apigee com a propriedade
virtualhosts.cipherSuites
no arquivo de substituições.
Consulte virtualhosts.cipherSuites
para os pacotes de criptografia padrão ativados na Apigee híbrida.
É possível ativar versões mais antigas do TLS com a propriedade virtualhosts.minTLSProtocolVersion
e adicionar pacotes de criptografia personalizados à implantação do gateway de entrada da Apigee com a propriedade virtualhosts.cipherSuites
no arquivo de modificações.
Por exemplo, para ativar a TLS v.1.1:
virtualhosts: - name: ENV_GROUP_NAME minTLSProtocolVersion: "1.1" cipherSuites: - "ECDHE-ECDSA-AES128-GCM-SHA256" - "ECDHE-RSA-AES128-GCM-SHA256" - "ECDHE-ECDSA-AES256-GCM-SHA384" - "ECDHE-RSA-AES256-GCM-SHA384" - "ECDHE-ECDSA-CHACHA20-POLY1305" - "ECDHE-RSA-CHACHA20-POLY1305" - "ECDHE-ECDSA-AES128-SHA" - "ECDHE-RSA-AES128-SHA" - "ECDHE-ECDSA-AES256-SHA" - "ECDHE-RSA-AES256-SHA" ...
Personalizar registros de acesso de entrada
É possível personalizar o destino e o formato do registro de acesso do gateway de entrada da Apigee com as
propriedades de configuração
istiod.accessLogFile
e
istiod.accessLogFormat
. No exemplo a seguir, a saída será enviada para /dev/stdout
,
que é o valor padrão de istiod.accessLogFile
:
istiod: accessLogFormat: '{"request_path":"%REQ(X-ENVOY-ORIGINAL-PATH?:PATH)%","status":"%RESPONSE_CODE%"}'
É possível desativar a geração de registros de acesso ao gateway de entrada da Apigee atribuindo
istiod.accessLogFile
e um valor
vazio. Exemplo:
istiod: accessLogFile: ''
Perguntas frequentes
- Como isso funciona com minha instalação atual do Cloud Service Mesh/Istio em outro namespace?
- Desde que a Apigee esteja instalada em um namespace dedicado, o gateway de entrada da Apigee pode ser executado junto de uma instalação do Cloud Service Mesh/Istio no cluster. O gateway de entrada da Apigee não armazena nenhuma configuração no apiserver. Portanto, não haverá conflito.
- Quem é responsável por fazer upgrade dos componentes do gateway de entrada da Apigee?
- A Apigee cuida dos upgrades para os componentes do gateway de entrada da Apigee que acontecem durante upgrades híbridos regulares e versões de patch.
- Como expor a porta 80 no gateway de entrada da Apigee?
- A porta 80 não é compatível com o gateway de entrada da Apigee. Se você estiver migrando do Cloud Service Mesh para o gateway de entrada da Apigee e tiver seguido as instruções na postagem na Comunidade para ativar a porta 80, ela não funcionará com o gateway de entrada da Apigee.