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 # 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 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[].name
na 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[].replicaCountMin
eingressGateways[].replicaCountMax
na 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.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 do 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):
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[].svcAnnotations
na 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[].svcLoadBalancerIP
na 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 seletorapp
com 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
selector
em 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.selector
na 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[].replicaCountMax
ingressGateways[].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.cpu
ingressGateways[].resources.limits.memory
ingressGateways[].resources.requests.cpu
ingressGateways[].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[].svcAnnotations
ingressGateways[].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.