Este passo explica como configurar o serviço Kubernetes para o gateway de entrada do Apigee. O serviço Kubernetes é necessário para cada implementação de entrada para obter um endereço IP que possa ser exposto. As chamadas de cliente para proxies invocam um nome do anfitrião que é resolvido para este endereço IP.
Opções para serviços Kubernetes para o gateway de entrada do Apigee
Existem duas opções para fornecer um serviço Kubernetes para atribuir o endereço IP…
- Crie um serviço Kubernetes personalizado para cada gateway de entrada do Apigee (recomendado).
 - Use o serviço Kubernetes predefinido.
 
Crie o seu próprio serviço Kubernetes
Para ambientes de produção, o Apigee recomenda que crie um serviço Kubernetes personalizado para cada gateway de entrada.
- O Apigee elimina o serviço predefinido, mas não elimina o serviço Kubernetes personalizado após a limpeza. Por conseguinte, o endereço IP não é libertado após a reinstalação do Apigee hybrid.
 - Para plataformas que não estão no Google Cloud, como o EKS, o AKS e o OpenShift, tem de personalizar o serviço Kubernetes para funcionar com o fornecedor de nuvem. Por conseguinte, é melhor criar um serviço Kubernetes personalizado do que usar o serviço predefinido, porque o Apigee não suporta todas as personalizações do serviço Kubernetes predefinido.
 
Siga estes passos para configurar e encaminhar tráfego para o novo gateway de entrada.
- Crie um serviço do Kubernetes com as etiquetas de seletor de pods necessárias, 
app,ingress_nameeorg. Estas etiquetas já estão presentes nos pods do gateway de entrada do Apigee.Crie um ficheiro de serviço com o seguinte modelo:
apiVersion: v1 kind: Service metadata: name: SERVICE_NAME namespace: apigee spec: ports: - name: status-port port: 15021 protocol: TCP targetPort: 15021 - name: https port: 443 protocol: TCP targetPort: 8443 selector: app: apigee-ingressgateway #required ingress_name: INGRESS_NAME org: ORG_NAME type: LoadBalancer loadBalancerIP: LOAD_BALANCER_IP- SERVICE_NAME é um nome usado para identificar este serviço. Por exemplo,
      
apigee-prod-1. - INGRESS_NAME é o nome desta gateway de entrada do Apigee. Tem de corresponder ao nome
    que indicou para 
ingressGateways.nameno seu ficheirooverrides.yaml. Para mais informações, consulteingressGatewaysna referência de propriedades de configuração. - ORG_NAME é o nome da organização da Apigee. Tem de corresponder ao nome
    que indicou para 
orgno seu ficheirooverrides.yaml. Para mais informações, consulteorgna referência de propriedades de configuração. - LOAD_BALANCER_IP é o endereço IP do balanceador de carga.
        
Se tiver um endereço IP reservado para o seu equilibrador de carga, introduza-o.
Se ainda não tiver um endereço IP reservado, pode usar o endereço IP devolvido pelo serviço de entrada do Apigee predefinido. Use o
EXTERNAL-IPdevolvido pelo seguinte comando:kubectl get svc -n apigee -l app=apigee-ingressgateway
 
O gateway de entrada do Apigee expõe as seguintes portas:
Porta Descrição 443 Tráfego de tempo de execução. 15021 Verificação de funcionamento. status-portexpõe um ponto final/healthz/readyque pode ser usado com verificações de estado do GKE Ingress. - SERVICE_NAME é um nome usado para identificar este serviço. Por exemplo,
      
 - Crie o serviço aplicando o seguinte: 
SERVICE_FILENAME.yamlkubectl apply -f SERVICE_FILENAME.yaml
 - Encontre o IP externo do gateway de entrada do Apigee com o seguinte comando:
  
kubectl get svc -n apigee SERVICE_NAME
O resultado deve ter um aspeto semelhante ao seguinte:
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE apigee-ingressgateway-prod-hybrid-37a39bd LoadBalancer 192.0.2.123 233.252.0.123 15021:32049/TCP,80:31624/TCP,443:30723/TCP 16h
 - 
    Desative o balanceador de carga para o serviço de gateway de entrada do Apigee predefinido:
    
-  Atualize a propriedade 
ingressGateways[].svcTypeparaClusterIPno ficheiro de substituições:ingressGateways: svcType: ClusterIP
 - 
        Aplique as alterações:
        
        
Leme
helm upgrade ORG_NAME apigee-org/ \ --install \ --namespace apigee \ --atomic \ -f overrides.yaml
apigeectl$APIGEECTL_HOME/apigeectl apply -f OVERRIDES_FILE.yaml --org
 
Consulte o artigo Desative o balanceador de carga para o serviço de gateway de entrada do Apigee predefinido para mais informações.
 -  Atualize a propriedade 
 Teste a gateway de entrada fazendo uma chamada de verificação de funcionamento.
curl -H 'User-Agent: GoogleHC/' https://DOMAIN/healthz/ingress -k \ --resolve "DOMAIN:443:INGRESS_IP_ADDRESS"
Onde
- DOMAIN é o domínio que forneceu como nome do anfitrião para o grupo de ambientes que criou em Configuração do projeto e da organização – Passo 3: crie um grupo de ambientes.
 - INGRESS_IP_ADDRESS é o endereço IP de entrada, por exemplo, 
233.252.0.123. 
Em caso de êxito, o comando devolve:
Apigee Ingress is healthy
- Use este endereço IP para atualizar o seu registo DNS (normalmente, um registo 
AouCNAME) no seu registador ou fornecedor de DNS. 
Use o serviço Kubernetes predefinido
Para ambientes de não produção ou para testar o tráfego inicial através do gateway de entrada do Apigee, o Apigee hybrid fornece um serviço Kubernetes predefinido para cada implementação de entrada.
  Pode fazer alterações de configuração limitadas ao serviço predefinido no ficheiro overrides.yaml. Para ver as opções de configuração disponíveis, consulte o artigo Gerir o gateway de entrada do Apigee. Por exemplo, pode adicionar anotações.
Para ambientes de produção, recomendamos que forneça um serviço Kubernetes para entrada. Siga os passos em Crie o seu próprio serviço Kubernetes.
- Encontre o IP externo do serviço de entrada do Apigee predefinido com o seguinte comando:
  
kubectl get svc -n apigee -l app=apigee-ingressgateway
O resultado deve ter um aspeto semelhante ao seguinte:
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE apigee-ingressgateway-prod-hybrid-37a39bd LoadBalancer 192.0.2.123 233.252.0.123 15021:32049/TCP,80:31624/TCP,443:30723/TCP 16h
 Teste a gateway de entrada fazendo uma chamada de verificação de funcionamento.
curl -H 'User-Agent: GoogleHC/' https://DOMAIN/healthz/ingress -k \ --resolve "DOMAIN:443:INGRESS_IP_ADDRESS"
Onde
- DOMAIN é o domínio que forneceu como nome do anfitrião para o grupo de ambientes que criou em Configuração do projeto e da organização – Passo 3: crie um grupo de ambientes.
 - INGRESS_IP_ADDRESS é o endereço IP de entrada, por exemplo, 
233.252.0.123. 
Em caso de êxito, o comando devolve:
Apigee Ingress is healthy
- Use este endereço IP para atualizar o seu registo DNS (normalmente, um registo 
AouCNAME) no seu registador ou fornecedor de DNS.