A partir da versão 1.8 do Apigee Hybrid, o Apigee Hybrid usa o gateway de entrada do Apigee para fornecer o gateway de entrada para o Hybrid.
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. As anotações são usadas pela sua plataforma na nuvem 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 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 com apigeectl.
$APIGEECTL_HOME/apigeectl apply -f overrides/overrides.yaml --org
Tarefas de gestão
Algumas tarefas de gestão comuns para o gateway de entrada do Apigee:
Deixe de fornecer configuração ao ASM
Depois de atualizar para o Apigee hybrid v1.8 e migrar o tráfego para o gateway de entrada do Apigee, pode parar de fornecer a configuração de encaminhamento ao Anthos Service Mesh.
-
Atualize o controlador do Apigee para parar de atualizar os objetos CR do Anthos Service Mesh no servidor da API. No ficheiro de substituições, defina:
ao: args: disableIstioConfigInAPIServer: true - Verifique o estado da implementação com o seguinte comando, uma vez que o comando anterior reiniciou o controlador:
$APIGEECTL_HOME/apigeectl check-ready -f OVERRIDES_FILE
-
Atualize o
virtualhosts. Todos os anfitriões virtuais têm de incluir a etiqueta do seletorappcom o valorapp: apigee-ingressgateway. Com esta alteração, o gateway do Anthos Service Mesh não vai poder ler a configuração de encaminhamento do Apigee.Adicione ou substitua a propriedade
selectorem cada anfitrião virtual da seguinte forma:virtualhosts: - name: ENV_GROUP selector: app: apigee-ingressgateway # required ...Aplique as alterações de configuração:
$APIGEECTL_HOME/apigeectl apply -f OVERRIDES_FILE --settings virtualhosts
Para mais informações, consulte
virtualhosts.selectorna referência da propriedade de configuração.
Aplique as alterações de configuração:
$APIGEECTL_HOME/apigeectl init -f OVERRIDES_FILE
Consulte ao na
referência de propriedades de configuração para ver detalhes.
Dimensionar 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 com apigeectl apply --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 com apigeectl apply --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 com apigeectl apply --org.
Desative o equilibrador 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: ClusterIP
Aplique as alterações com apigeectl apply --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 com apigeectl apply --org.
Segmentar uma entrada do Apigee para um anfitrião virtual
Pode segmentar um gateway de entrada do Apigee etiquetado para um anfitrião virtual específico no ficheiro de substituições.
Esta configuração especifica o gateway de entrada onde o Apigee aplica a configuração do anfitrião virtual. No
exemplo seguinte, o anfitrião virtual spam-vh está configurado para usar
o gateway de entrada etiquetado como meat e os outros dois anfitriões virtuais usam
o 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
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?
- A atualização dos componentes do gateway de entrada do Apigee é da responsabilidade do Apigee e ocorre 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.