Configurar o gateway de entrada do Apigee
Pode configurar os gateways de entrada no seu overrides.yaml. Por 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 implementação da gateway de entrada. Pode ser qualquer nome que cumpra
os seguintes requisitos:
- Ter um comprimento máximo de 17 carateres
- Contêm apenas carateres alfanuméricos minúsculos, "-" ou "."
- Começar com um caráter alfanumérico
- Terminar com um caráter alfanumérico
Consulte
ingressGateways[].namena referência da propriedade de configuração - REPLICAS_MIN e REPLICAS_MAX O número mínimo e máximo de réplicas para o gateway de entrada do Apigee na sua instalação. Consulte
ingressGateways[].replicaCountMineingressGateways[].replicaCountMaxna referência da propriedade de configuração. - CPU_COUNT_REQ e MEMORY_REQ O pedido de CPU e memória para cada réplica do gateway de entrada do 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 do 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):
Este é um par de chave-valor que fornece anotações para o seu serviço de entrada predefinido. A sua plataforma na nuvem usa anotações para ajudar a configurar a instalação híbrida, por exemplo, definindo o tipo de balanceador de carga como interno ou externo. Por exemplo:
ingressGateways: svcAnnotations: networking.gke.io/load-balancer-type: "Internal"As anotações variam de plataforma para plataforma. Consulte a documentação da sua plataforma para ver as anotações obrigatórias e sugeridas.
ConsulteingressGateways[].svcAnnotationsna referência da propriedade de configuração. - SVC_LOAD_BALANCER_IP (opcional). Em plataformas que suportam a especificação do endereço IP do balanceador de carga, o balanceador de carga é criado com este endereço IP. Em plataformas que não
permitem especificar o endereço IP do equilibrador de carga, esta propriedade é ignorada.
Consulte
ingressGateways[].svcLoadBalancerIPna referência da propriedade de configuração.
Aplique a configuração do gateway de entrada do Apigee
Aplique alterações ao âmbito da organização:
Leme
helm upgrade ORG_NAME apigee-org/ \ --namespace apigee \ --atomic \ -f OVERRIDES_FILE.yaml
apigeectl
$APIGEECTL_HOME/apigeectl apply -f OVERRIDES_FILE.yaml --org
Tarefas de gestão
Algumas tarefas de gestão comuns para o gateway de entrada do Apigee:
Escalar o gateway de entrada do Apigee:
Atualize as seguintes propriedades no ficheiro de substituições.
ingressGateways[].replicaCountMaxingressGateways[].replicaCountMin
Consulte ingressGateways na
referência de propriedades de configuração para ver detalhes.
Aplique as alterações:
Leme
helm upgrade ORG_NAME apigee-org/ \ --namespace apigee \ --atomic \ -f OVERRIDES_FILE.yaml
apigeectl
$APIGEECTL_HOME/apigeectl apply -f OVERRIDES_FILE.yaml --org
Atualização da atribuição de recursos
Atualize as seguintes propriedades no ficheiro de substituições.
ingressGateways[].resources.limits.cpuingressGateways[].resources.limits.memoryingressGateways[].resources.requests.cpuingressGateways[].resources.requests.memory
Consulte ingressGateways na
referência de propriedades de configuração para ver detalhes.
Aplique as alterações:
Leme
helm upgrade ORG_NAME apigee-org/ \ --namespace apigee \ --atomic \ -f OVERRIDES_FILE.yaml
apigeectl
$APIGEECTL_HOME/apigeectl apply -f OVERRIDES_FILE.yaml --org
Atualizar o serviço de gateway de entrada do Apigee
Atualize as seguintes propriedades no ficheiro de substituições.
ingressGateways[].svcAnnotationsingressGateways[].svcLoadBalancerIP
Consulte ingressGateways na
referência de propriedades de configuração para ver detalhes.
Aplique as alterações:
Leme
helm upgrade ORG_NAME apigee-org/ \ --namespace apigee \ --atomic \ -f OVERRIDES_FILE.yaml
apigeectl
$APIGEECTL_HOME/apigeectl apply -f OVERRIDES_FILE.yaml --org
Desative o balanceador de carga para o serviço de gateway de entrada do Apigee predefinido:
Se criar um serviço Kubernetes personalizado
para a implementação do gateway de entrada, pode desativar a criação de um equilibrador de carga no serviço Kubernetes
predefinido. Atualize a propriedade
ingressGateways[].svcType
para ClusterIP no ficheiro de substituições. Por exemplo:
ingressGateways:
- name: my-ingress-gateway
replicaCountMin: 2
replicaCountMax: 10
svcType: ClusterIPAplique as alterações:
Leme
helm upgrade ORG_NAME apigee-org/ \ --namespace apigee \ --atomic \ -f OVERRIDES_FILE.yaml
apigeectl
$APIGEECTL_HOME/apigeectl apply -f OVERRIDES_FILE.yaml --org
Configure o TLS e o mTLS
Consulte o artigo Configurar TLS e mTLS no gateway de entrada.
Ativar clientes não SNI
Consulte o artigo Ative clientes HTTP e não SNI.
Instalar gateways de entrada do Apigee adicionais
No ficheiro overrides.yaml, pode adicionar vários gateways de entrada. A propriedade de configuração ingressGateways é uma matriz. Para mais informações, consulte
ingressGateways na
referência de propriedades de configuração.
Por exemplo:
ingressGateways: - name: fruit replicaCountMin: 2 replicaCountMax: 10 - name: meat replicaCountMin: 2 replicaCountMax: 10
Aplique as alterações:
Leme
helm upgrade ORG_NAME apigee-org/ \ --namespace apigee \ --atomic \ -f OVERRIDES_FILE.yaml
apigeectl
$APIGEECTL_HOME/apigeectl apply -f OVERRIDES_FILE.yaml --org
Mapeamento de anfitriões virtuais para implementações do gateway de entrada do Apigee
Pode usar etiquetas de seletores para mapear um anfitrião virtual para uma implementação de gateway de entrada do Apigee. No exemplo seguinte, o anfitrião virtual spam-vh está configurado para ser executado no gateway de entrada etiquetado como meat, e os outros dois anfitriões virtuais são executados no gateway de entrada fruit. Os gateways de entrada têm de estar etiquetados corretamente, conforme explicado no artigo
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
Adicionar conjuntos de cifras personalizados a implementações de gateway de entrada do Apigee
Pode adicionar conjuntos de cifras personalizados à implementação do gateway de entrada do Apigee com a propriedade
virtualhosts.cipherSuites
no ficheiro de substituições.
Consulte o artigo virtualhosts.cipherSuites para ver os conjuntos de cifras predefinidos ativados no Apigee hybrid.
Pode ativar versões mais antigas do TLS com a propriedade virtualhosts.minTLSProtocolVersion e adicionar conjuntos de cifras personalizados à implementação do gateway de entrada do Apigee com a propriedade virtualhosts.cipherSuites no ficheiro de substituições.
Por exemplo, para ativar o 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" ...
Personalize os registos de acesso do Ingress
Pode personalizar o destino e o formato do registo de acesso do gateway de entrada do Apigee com as propriedades de configuração
istiod.accessLogFile e
istiod.accessLogFormat. No exemplo seguinte, a saída é enviada para /dev/stdout, que é o valor predefinido de istiod.accessLogFile:
istiod:
accessLogFormat: '{"request_path":"%REQ(X-ENVOY-ORIGINAL-PATH?:PATH)%","status":"%RESPONSE_CODE%"}'
Pode desativar o registo de acesso do gateway de entrada do Apigee atribuindo istiod.accessLogFile e um valor vazio. Por exemplo:
istiod: accessLogFile: ''
Perguntas frequentes
- Como é que isto funciona com a minha instalação do Anthos Service Mesh/Istio existente noutro espaço de nomes?
- Desde que o Apigee esteja instalado num espaço de nomes dedicado, o gateway de entrada do Apigee pode ser executado juntamente com uma instalação do Anthos Service Mesh/Istio já existente no cluster. O gateway de entrada do Apigee não armazena nenhuma configuração no apiserver, pelo que não existe nenhum conflito.
- Quem é responsável pela atualização dos componentes do gateway de entrada do Apigee?
- O Apigee cuida das atualizações dos componentes do gateway de entrada do Apigee, que ocorrem durante as atualizações híbridas regulares e os lançamentos de patches.
- Como posso expor a porta 80 no gateway de entrada do Apigee?
- A porta 80 não é suportada pela entrada do gateway do Apigee. Se estiver a migrar do Anthos Service Mesh para o gateway de entrada do Apigee e tiver seguido as instruções no post da comunidade para ativar a porta 80, esta não vai funcionar com o gateway de entrada do Apigee.