A partir da versão 1.8 da Apigee híbrida, a Apigee híbrida usa o gateway de entrada da Apigee para fornecer o gateway de entrada para sua instalação híbrida.
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.
SVC_ANNOTATIONS_KEY: SVC_ANNOTATIONS_VALUE
svcLoadBalancerIP: SVC_LOAD_BALANCER_IP # optionalExemplo
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[].namena 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[].replicaCountMineingressGateways[].replicaCountMaxna 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.cpueingressGateways[].resources.requests.memoryna 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.cpueingressGateways[].resources.limits.memoryna 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. As anotações são usadas pela sua plataforma de nuvem para ajudar a configurar sua instalação híbrida, por exemplo, definindo o tipo de balanceador de carga como interno ou externo. 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 anotações obrigatórias e sugeridas.
ConsulteingressGateways[].svcAnnotationsna 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[].svcLoadBalancerIPna referência da propriedade de configuração.
Aplicar a configuração do gateway de entrada da Apigee
Aplique mudanças no escopo da organização com apigeectl.
$APIGEECTL_HOME/apigeectl apply -f overrides/overrides.yaml --org
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[].replicaCountMaxingressGateways[].replicaCountMin
Consulte ingressGateways na referência de propriedades da configuração para mais detalhes.
Aplique as mudanças com apigeectl apply --org.
Atualizando a alocação de recursos
Atualize as seguintes propriedades no arquivo de substituição.
ingressGateways[].resources.limits.cpuingressGateways[].resources.limits.memoryingressGateways[].resources.requests.cpuingressGateways[].resources.requests.memory
Consulte ingressGateways na referência de propriedades da configuração para mais detalhes.
Aplique as mudanças com apigeectl apply --org.
Como atualizar o serviço de gateway de entrada da Apigee
Atualize as seguintes propriedades no arquivo de substituição.
ingressGateways[].svcAnnotationsingressGateways[].svcLoadBalancerIP
Consulte ingressGateways na referência de propriedades da configuração para mais detalhes.
Aplique as mudanças com apigeectl apply --org.
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. Exemplo:
ingressGateways: - name: my-ingress-gateway replicaCountMin: 2 replicaCountMax: 10 svcType: ClusterIP
Aplique as mudanças com apigeectl apply --org.
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 mudanças com apigeectl apply --org.
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 Anthos 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 Anthos 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 Anthos 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?
- O upgrade dos componentes do gateway de entrada da Apigee é feito pela Apigee e acontece durante upgrades híbridos regulares e versões de patches.
- 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 Anthos Service Mesh para o gateway de entrada da Apigee e tiver seguido as instruções na postagem da comunidade para ativar a porta 80, ela não funcionará com o gateway de entrada da Apigee.