- 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:
Un entorno proporciona un contexto aislado o un "entorno aislado" para ejecutar proxies de API. En una misma organización, puedes crear varios entornos.
El siguiente código muestra un ejemplo de configuración de anulación en el que se definen varios entornos.
namespace: my-namespace org: my-organization ... envs: - name: test serviceAccountPaths: synchronizer: "your_keypath/synchronizer-manager-service-account.json udca: "your_keypath/analytic-agent-service-account.json - name: prod serviceAccountPaths: synchronizer: "your_keypath/synchronizer-manager-service-account.json udca: "your_keypath/analytic-agent-service-account.json ...
Supongamos que un proxy con la ruta base /foo1
se despliega en el entorno test. Puedes llamar al proxy de esta forma:
curl -k https://api.example.com/foo1
Cuando esta llamada llega al ingress, este sabe que debe enviarla al procesador de mensajes asociado al entorno test
, que gestiona la solicitud.
Del mismo modo, si foo1
también se ha implementado en el entorno prod
, puedes hacer una solicitud proxy como esta al alias de host apiprod.mydomain.net
:
curl -k https://apiprod.example.com/foo1
La llamada se enruta a través del ingreso al MP asociado a ese host.
Antipatrón: despliega todos tus proxies en un entorno híbrido.
Práctica recomendada: Crea varios entornos y despliega un número limitado de proxies en cada uno.
Limitar el número de implementaciones de proxy
En el caso de los entornos híbridos, el hecho de que muchos entornos puedan compartir los mismos hosts virtuales definidos en los grupos de entornos significa que debes pensar detenidamente cómo gestionas tus implementaciones de proxy en un entorno concreto. En los entornos híbridos, lo más recomendable es crear varios entornos y desplegar un número limitado de proxies en cada uno.
¿Cuántos proxies debes implementar en un entorno? No hay una respuesta concreta a esta pregunta, pero en la siguiente tabla se ofrecen directrices generales sobre por qué es recomendable limitar el número de proxies desplegados en cada entorno y qué debes tener en cuenta al gestionar los despliegues de proxies:
Problema que debes tener en cuenta | Descripción |
---|---|
Tiempo de arranque del procesador de mensajes | Existe una correlación directa entre el tiempo que tarda en iniciarse un procesador de mensajes y el número de proxies implementados en ese procesador. En un entorno de Kubernetes con escalado automático, un aumento del tiempo de arranque puede ser un problema. Cuantos más proxies se implementen en el MP, más tiempo tardará en iniciarse si necesita escalarse o recrearse. |
Rendimiento de escalado | Si tienes varios proxies desplegados en un entorno y uno de ellos recibe mucho tráfico, de forma que se escala automáticamente con frecuencia, todos los proxies de ese entorno se escalarán con él. El efecto en el rendimiento de escalar varios proxies con un solo proxy de alto tráfico puede ser un problema. |
Vecino ruidoso | Si tienes varios proxies desplegados en el mismo entorno y uno de ellos falla, todos los proxies del entorno se desactivarán mientras se reinician los MPs. Si limitas el número de proxies implementados en un entorno, minimizas el impacto de un fallo de un solo proxy. |
Grupos de entorno y hosts virtuales
Los grupos de entornos le permiten agrupar entornos. Los entornos de cada grupo comparten los mismos nombres de host. Puedes agrupar los entornos por función, por dirección de nombre de host, por región (si implementas una instalación híbrida multirregión) o por cualquier otra métrica que elijas.
Como el enrutamiento se gestiona mediante la combinación de nombres de host de grupos de entornos, rutas base de proxies de API y entornos, cada host virtual solo necesita enumerar el nombre del grupo de entornos y los certificados adecuados.
En el siguiente código se muestra un ejemplo de configuración de anulación en el que se definen varios hosts virtuales. Ten en cuenta que el nombre de los virtualhosts debe ser el nombre de los grupos de entornos.
gcp: region: us-central1 projectID: hybrid-example k8sCluster: name: apigee-hybrid region: us-central1 org: hybrid-example instanceID: "my_hybrid_example" virtualhosts: - name: group-1 # the name of an environment group sslCertPath: ./certs/keystore.pem sslKeyPath: ./certs/keystore.key virtualhosts: - name: group-2 sslCertPath: ./certs/keystore.pem sslKeyPath: ./certs/keystore.key ...
Recursos adicionales
- Acerca de los entornos y los grupos de entornos
- Gestionar entornos
- Gestionar grupos de entornos
- Referencia de la propiedad de configuración
- Configurar hosts virtuales