- v1.15 (última)
- v1.14
- v1.13
- Lista de versiones admitidas
- v1.12
- v1.11
- v1.10
- v1.9
- v1.8
- v1.7
- Versión 1.6
- v1.5
- Versión 1.4
- Versión 1.3
- v1.2
- v1.1
Versiones compatibles:
Versiones no compatibles:
En este paso se explica cómo configurar el servicio de Kubernetes para tu pasarela de entrada de Apigee. El servicio de Kubernetes es necesario para que cada implementación de entrada obtenga una dirección IP que se pueda exponer. Las llamadas de clientes a proxies invocarán un nombre de host que se resolverá en esta dirección IP.
Opciones de servicios de Kubernetes para tu pasarela de entrada de Apigee
Hay dos opciones para proporcionar un servicio de Kubernetes que asigne la dirección IP ...
- Crea un servicio de Kubernetes personalizado para cada pasarela de entrada de Apigee (opción recomendada).
- Usa el servicio de Kubernetes predeterminado.
Crear tu propio servicio de Kubernetes
En los entornos de producción, Apigee recomienda crear un servicio de Kubernetes personalizado para cada pasarela de entrada.
- Apigee elimina el servicio predeterminado, pero no el servicio de Kubernetes personalizado al limpiar. Por lo tanto, la dirección IP no se liberará al reinstalar Apigee hybrid.
- En las plataformas que no están en Google Cloud, como EKS, AKS y OpenShift, debes personalizar el servicio de Kubernetes para que funcione con el proveedor de servicios en la nube. Por lo tanto, es mejor crear un servicio de Kubernetes personalizado que usar el servicio predeterminado, ya que Apigee no admite todas las personalizaciones del servicio de Kubernetes predeterminado.
Sigue estos pasos para configurar y enrutar el tráfico a la nueva pasarela de entrada.
- Crea un servicio de Kubernetes con las etiquetas de selector de pods necesarias:
app
,ingress_name
yorg
. Estas etiquetas ya están presentes en los pods de la pasarela de entrada de Apigee.Crea un archivo de servicio con la siguiente plantilla:
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 es un nombre que se usa para identificar este servicio. Por ejemplo,
apigee-prod-1
. - INGRESS_NAME es el nombre de esta pasarela de entrada de Apigee. Debe coincidir con el nombre que haya proporcionado para
ingressGateways.name
en su archivooverrides.yaml
. Para obtener más información, consultaingressGateways
en la referencia de propiedades de configuración. - ORG_NAME es el nombre de la organización de Apigee. Debe coincidir con el nombre que haya proporcionado para
org
en su archivooverrides.yaml
. Para obtener más información, consultaorg
en la referencia de propiedades de configuración. - LOAD_BALANCER_IP es la dirección IP del balanceador de carga.
Si tienes una dirección IP reservada para tu balanceador de carga, introdúcela.
Si aún no tienes una dirección IP reservada, puedes usar la que devuelve el servicio de entrada predeterminado de Apigee. Usa el
EXTERNAL-IP
devuelto por el siguiente comando:kubectl get svc -n apigee -l app=apigee-ingressgateway
La pasarela de entrada de Apigee expone los siguientes puertos:
Puerto Descripción 443 Tráfico en tiempo de ejecución. 15021 Comprobación del estado. status-port
expone un endpoint/healthz/ready
que se puede usar con las comprobaciones de estado de GKE Ingress. - SERVICE_NAME es un nombre que se usa para identificar este servicio. Por ejemplo,
- Crea el servicio aplicando el
SERVICE_FILENAME.yaml
:kubectl apply -f SERVICE_FILENAME.yaml
- Busca la IP externa de la pasarela de entrada de Apigee con el siguiente comando:
kubectl get svc -n apigee SERVICE_NAME
La salida debería tener un aspecto similar a este:
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
-
También puedes inhabilitar el balanceador de carga para el servicio de pasarela de entrada predeterminado de Apigee:
- Asigna el valor
ClusterIP
a la propiedadingressGateways[].svcType
en el archivo de anulaciones para evitar que se cree un balanceador de carga predeterminado.ingressGateways: svcType: ClusterIP
-
Aplica los cambios ejecutando
apigeectl apply -f overrides.yaml --org
.${APIGEECTL_HOME}/apigeectl apply --org -f ${HYBRID_FILES}/overrides/overrides.yaml
Para obtener más información, consulte Inhabilitar el balanceador de carga del servicio de puerta de enlace de entrada de Apigee predeterminado.
- Asigna el valor
Prueba la pasarela de entrada haciendo una llamada de comprobación del estado.
curl -H 'User-Agent: GoogleHC/' https://DOMAIN/healthz/ingress -k \ --resolve "DOMAIN:443:INGRESS_IP_ADDRESS"
Dónde
- DOMAIN es el dominio que has proporcionado como nombre de host del grupo de entorno que has creado en el Paso 3: Crea un grupo de entorno de la sección "Configuración del proyecto y de la organización".
- INGRESS_IP_ADDRESS es la dirección IP de entrada, por ejemplo,
233.252.0.123
.
Si la acción se realiza correctamente, el comando mostrará lo siguiente:
Apigee Ingress is healthy
- Usa esta dirección IP para actualizar tu registro DNS (normalmente, un registro
A
oCNAME
) en tu registrador o proveedor de DNS.
Usar el servicio de Kubernetes predeterminado
En entornos que no son de producción o para probar el tráfico inicial a través de la puerta de enlace de entrada de Apigee, Apigee hybrid proporciona un servicio de Kubernetes predeterminado para cada despliegue de entrada.
Puedes hacer cambios de configuración limitados en el servicio predeterminado en tu archivo overrides.yaml
. Para ver las opciones de configuración disponibles, consulta Gestionar la puerta de enlace de entrada de Apigee. Por ejemplo, puedes añadir anotaciones.
En los entornos de producción, se recomienda que proporcione un servicio de Kubernetes para el tráfico de entrada. Sigue los pasos que se indican en Crear tu propio servicio de Kubernetes.
- Busca la IP externa del servicio de entrada predeterminado de Apigee con el siguiente comando:
kubectl get svc -n apigee -l app=apigee-ingressgateway
La salida debería tener un aspecto similar a este:
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
Prueba la pasarela de entrada haciendo una llamada de comprobación del estado.
curl -H 'User-Agent: GoogleHC/' https://DOMAIN/healthz/ingress -k \ --resolve "DOMAIN:443:INGRESS_IP_ADDRESS"
Dónde
- DOMAIN es el dominio que has proporcionado como nombre de host del grupo de entorno que has creado en el Paso 3: Crea un grupo de entorno de la sección "Configuración del proyecto y de la organización".
- INGRESS_IP_ADDRESS es la dirección IP de entrada, por ejemplo,
233.252.0.123
.
Si la acción se realiza correctamente, el comando mostrará lo siguiente:
Apigee Ingress is healthy
- Usa esta dirección IP para actualizar tu registro DNS (normalmente, un registro
A
oCNAME
) en tu registrador o proveedor de DNS.