Configurar la pasarela de entrada de Apigee
Puedes configurar tus pasarelas de entrada en tu overrides.yaml
. Por ejemplo:
Sintaxis
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
Ejemplo
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 es el nombre de la implementación de la pasarela de entrada. Puede ser cualquier nombre que cumpla los siguientes requisitos:
- Tener una longitud máxima de 17 caracteres
- Contener solo caracteres alfanuméricos en minúscula, guiones ("-") o puntos (".").
- Empezar con un carácter alfanumérico
- Terminar con un carácter alfanumérico
Consulta
ingressGateways[].name
en la referencia de la propiedad de configuración. - REPLICAS_MIN y REPLICAS_MAX: número mínimo y máximo de réplicas de la puerta de enlace de entrada de Apigee en su instalación. Consulta
ingressGateways[].replicaCountMin
yingressGateways[].replicaCountMax
en la referencia de la propiedad de configuración. - CPU_COUNT_REQ y MEMORY_REQ: la solicitud de CPU y memoria de cada réplica de la puerta de enlace de entrada de Apigee en tu instalación.
Consulta
ingressGateways[].resources.requests.cpu
yingressGateways[].resources.requests.memory
en la referencia de la propiedad de configuración. - CPU_COUNT_LIMIT y MEMORY_LIMIT: los límites máximos de CPU y memoria de cada réplica de la puerta de enlace de entrada de Apigee en tu instalación.
Consulta
ingressGateways[].resources.limits.cpu
yingressGateways[].resources.limits.memory
en la referencia de la propiedad de configuración. - SVC_ANNOTATIONS_KEY SVC_ANNOTATIONS_VALUE (opcional):
.
Se trata de un par clave-valor que proporciona anotaciones para tu servicio de entrada predeterminado. Tu plataforma en la nube usa anotaciones para ayudarte a configurar tu instalación híbrida. Por ejemplo, puedes definir el tipo de balanceador de carga como interno o externo. Por ejemplo:
ingressGateways: svcAnnotations: networking.gke.io/load-balancer-type: "Internal"
Las anotaciones varían de una plataforma a otra. Consulta la documentación de tu plataforma para ver las anotaciones obligatorias y sugeridas.
ConsultaingressGateways[].svcAnnotations
en la referencia de la propiedad de configuración. - SVC_LOAD_BALANCER_IP (opcional). En las plataformas que admiten la especificación de la dirección IP del balanceador de carga, este se creará con esa dirección IP. En las plataformas que no permiten especificar la dirección IP del balanceador de carga, esta propiedad se ignora.
Consulta
ingressGateways[].svcLoadBalancerIP
en la referencia de la propiedad de configuración.
Aplicar la configuración de la pasarela de entrada de Apigee
Aplica los cambios al ámbito de la organización:
helm upgrade ORG_NAME apigee-org/ \ --namespace apigee \ --atomic \ -f OVERRIDES_FILE.yaml
Tareas de gestión
Estas son algunas de las tareas de gestión habituales de la pasarela de entrada de Apigee:
Escalar la pasarela de entrada de Apigee:
Actualiza las siguientes propiedades en el archivo de anulaciones.
ingressGateways[].replicaCountMax
ingressGateways[].replicaCountMin
Para obtener más información, consulta ingressGateways
en la referencia de propiedades de configuración.
Aplica los cambios:
helm upgrade ORG_NAME apigee-org/ \ --namespace apigee \ --atomic \ -f OVERRIDES_FILE.yaml
Actualizar la asignación de recursos
Actualiza las siguientes propiedades en el archivo de anulaciones.
ingressGateways[].resources.limits.cpu
ingressGateways[].resources.limits.memory
ingressGateways[].resources.requests.cpu
ingressGateways[].resources.requests.memory
Para obtener más información, consulta ingressGateways
en la referencia de propiedades de configuración.
Aplica los cambios:
helm upgrade ORG_NAME apigee-org/ \ --namespace apigee \ --atomic \ -f OVERRIDES_FILE.yaml
Actualizar el servicio de pasarela de entrada de Apigee
Actualiza las siguientes propiedades en el archivo de anulaciones.
ingressGateways[].svcAnnotations
ingressGateways[].svcLoadBalancerIP
Para obtener más información, consulta ingressGateways
en la referencia de propiedades de configuración.
Aplica los cambios:
helm upgrade ORG_NAME apigee-org/ \ --namespace apigee \ --atomic \ -f OVERRIDES_FILE.yaml
Inhabilita el balanceador de carga del servicio de pasarela de entrada de Apigee predeterminado:
Si creas un servicio de Kubernetes personalizado
para tu despliegue de pasarela de entrada, puedes inhabilitar la creación de un balanceador de carga en el servicio de Kubernetes predeterminado. Actualice la propiedad
ingressGateways[].svcType
a ClusterIP
en el archivo de anulaciones. Por ejemplo:
ingressGateways: - name: my-ingress-gateway replicaCountMin: 2 replicaCountMax: 10 svcType: ClusterIP
Aplica los cambios:
helm upgrade ORG_NAME apigee-org/ \ --namespace apigee \ --atomic \ -f OVERRIDES_FILE.yaml
Configurar TLS y mTLS
Consulta Configurar TLS y mTLS en la pasarela de entrada.
Habilitar clientes que no son de la SNI
Consulta Habilitar clientes que no sean SNI ni HTTP.
Instalar pasarelas de entrada de Apigee adicionales
En el archivo overrides.yaml
, puedes añadir varias pasarelas de entrada. La propiedad de configuración ingressGateways
es una matriz. Para obtener más información, consulta ingressGateways en la referencia de propiedades de configuración.
Por ejemplo:
ingressGateways: - name: fruit replicaCountMin: 2 replicaCountMax: 10 - name: meat replicaCountMin: 2 replicaCountMax: 10
Aplica los cambios:
helm upgrade ORG_NAME apigee-org/ \ --namespace apigee \ --atomic \ -f OVERRIDES_FILE.yaml
Asignar hosts virtuales a implementaciones de pasarela de entrada de Apigee
Puedes usar etiquetas de selector para asignar un host virtual a una implementación de gateway de entrada de Apigee. En el ejemplo siguiente, el host virtual spam-vh
está configurado para ejecutarse en la pasarela de entrada meat
, y los otros dos hosts virtuales se ejecutan en la pasarela de entrada fruit
. Las pasarelas de entrada deben etiquetarse correctamente, tal como se explica en Instalar pasarelas adicionales de Cloud 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
Añadir conjuntos de cifrado personalizados a las implementaciones de la pasarela de entrada de Apigee
Puede añadir conjuntos de cifrado personalizados a su implementación de pasarela de entrada de Apigee con la propiedad
virtualhosts.cipherSuites
en su archivo de anulaciones.
Consulta virtualhosts.cipherSuites
para ver las suites de cifrado predeterminadas habilitadas en Apigee Hybrid.
Puede habilitar versiones anteriores de TLS con la propiedad virtualhosts.minTLSProtocolVersion
y añadir conjuntos de cifrado personalizados a su implementación de la puerta de enlace de entrada de Apigee con la propiedad virtualhosts.cipherSuites
en su archivo de anulaciones.
Por ejemplo, para habilitar TLS v.1.1, haz lo siguiente:
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" ...
Personalizar los registros de acceso de Ingress
Puedes personalizar el destino y el formato del registro de acceso de la pasarela de entrada de Apigee con las propiedades de configuración istiod.accessLogFile
y istiod.accessLogFormat
. En el siguiente ejemplo, la salida se enviará a /dev/stdout
,
que es el valor predeterminado de istiod.accessLogFile
:
istiod: accessLogFormat: '{"request_path":"%REQ(X-ENVOY-ORIGINAL-PATH?:PATH)%","status":"%RESPONSE_CODE%"}'
Para inhabilitar el registro de acceso de la puerta de enlace de entrada de Apigee, asigna los valores istiod.accessLogFile
y vacío. Por ejemplo:
istiod: accessLogFile: ''
Preguntas frecuentes
- ¿Cómo funciona esto con mi instalación de Cloud Service Mesh o Istio en otro espacio de nombres?
- Siempre que Apigee esté instalado en un espacio de nombres específico, la pasarela de entrada de Apigee se puede ejecutar junto con una instalación de Cloud Service Mesh o Istio que ya exista en el clúster. La pasarela de entrada de Apigee no almacena ninguna configuración en el servidor de la API, por lo que no habrá ningún conflicto.
- ¿Quién es responsable de actualizar los componentes de la pasarela de entrada de Apigee?
- Apigee se encarga de las actualizaciones de los componentes de la pasarela de entrada de Apigee, que se producen durante las actualizaciones periódicas de Hybrid y los lanzamientos de parches.
- ¿Cómo expongo el puerto 80 en la pasarela de entrada de Apigee?
- La pasarela de entrada de Apigee no admite el puerto 80. Si vas a migrar de Cloud Service Mesh a la pasarela de entrada de Apigee y has seguido las instrucciones de esta publicación de la comunidad para habilitar el puerto 80, no funcionará con la pasarela de entrada de Apigee.