Apigee Hybrid te permite administrar las API de forma local o en Google Cloud o mediante una combinación de ambas:
Administra todas tus API en un solo lugar |
Apigee Hybrid te ayuda a administrar las API internas y externas con Google Cloud. Un sistema de administración de API unificado te permite ofrecer a tus desarrolladores, socios y clientes una experiencia coherente del programa de API. |
Aborda la seguridad y el cumplimiento |
Si tus consideraciones de cumplimiento y seguridad hacen que la implementación local sea obligatoria para tus aplicaciones, con una puerta de enlace híbrida de nivel empresarial, puedes alojar y administrar el plano de entorno de ejecución híbrido de Apigee en tus instalaciones. Puedes administrar y controlar el entorno de ejecución, lo que te permite aprovechar la infraestructura actual de cumplimiento, administración y seguridad. |
Fomenta tu estrategia de múltiples nubes |
Balancear el costo y el rendimiento puede ayudarte a obtener a una estrategia híbrida. Con independencia de si estás explorando diferentes proveedores de servicios en la nube o ya elegiste una estrategia híbrida, la plataforma de administración de las API debería brindarte la flexibilidad que necesitas. Aloja y administra puertas de enlace híbridas de nivel empresarial en tu centro de datos, en Google Cloud Platform o en ambos. |
Si quieres obtener más información sobre el híbrido, haz lo siguiente:
|
Si estás listo para la instalación híbrida:
|
Programas de API en un mundo híbrido
Apigee Hybrid consta de un plano de administración que mantiene Google y un plano de entorno de ejecución que instalas en Kubernetes de manera local o en Google Cloud. Ambos aviones usan los servicios de Google Cloud Platform, como se muestra en la siguiente imagen:
Como puedes ver, el híbrido consiste de los siguientes elementos primarios:
- Plano de administración ejecutado por Apigee: Un conjunto de servicios alojados en la nube y mantenidos por Google En estos servicios, se incluyen la IU, la API de Management y las estadísticas.
Plano de entorno de ejecución administrado por el cliente: un conjunto de servicios de entorno de ejecución de contenedores que configuras y mantienes en tu propio clúster de Kubernetes. Todo el tráfico de API se transfiere y se procesa en el plano del entorno de ejecución.
Administras el entorno de ejecución en contenedores en tu clúster de Kubernetes para lograr una mayor agilidad con lanzamientos en etapas, ajuste de escala automático y otros beneficios operativos de contenedores.
- Google Cloud Platform: un conjunto de servicios de Cloud alojados en Google.
Un aspecto clave sobre el híbrido es que todo el tráfico de API se procesa dentro de los límites de tu red y bajo tu control, a la vez que los servicios de administración como la IU y las estadísticas de API se ejecutan en la nube y Google las mantiene. Para obtener más información, consulta ¿Dónde se almacenan tus datos?
En el siguiente video, se brinda información detallada sobre la arquitectura híbrida:
Información sobre el plano de entorno de ejecución
El plano de entorno de ejecución es un conjunto de servicios de entorno de ejecución en contenedores que configuras y mantienes en tu propio clúster de Kubernetes. Todo el tráfico de la API pasa y se procesa dentro del plano del entorno de ejecución. El plano de entorno de ejecución incluye los siguientes componentes principales:
El plano de entorno de ejecución se ejecuta en un clúster de Kubernetes que te pertenece y que mantienes.
En la siguiente imagen, se muestran los servicios principales que se ejecutan en el plano de entorno de ejecución:
Para obtener información general sobre los componentes del entorno de ejecución, consulta las siguientes secciones. Además, consulta la Descripción general de la configuración del servicio del entorno de ejecución.
En las siguientes secciones, se describe con más detalle cada uno de estos servicios principales del plano de entorno de ejecución.
Message Processors
Los Message Processors (MP) híbridos proporcionan el procesamiento de solicitudes a la API y la ejecución de políticas en el plano de entorno de ejecución. Los MP cargan todos los proxies, recursos, servidores de destino, certificados y almacenes de claves implementados desde el almacenamiento local. Configura un controlador de Ingress de Istio para exponer los MP a las solicitudes que provienen de fuera del clúster.
Sincronizador
El sincronizador recupera datos de configuración sobre un entorno de API del plano de administración y los propaga en el plano de entorno de ejecución. Estos datos descargados también se llaman contratos y se almacenan en el sistema de archivos local.
El sincronizador sondea periódicamente el servidor de administración para encontrar cambios y descarga una nueva configuración cada vez que se detectan cambios. Los datos de configuración se recuperan y se almacenan de forma local como un archivo JSON en el sistema de archivos local, en el que los Message Processor pueden acceder a ellos.
Los datos de configuración descargados permiten que el plano del entorno de ejecución funcione independientemente del plano de administración. Con el contrato, los Message Processors del plano de entorno de ejecución usan los datos almacenados localmente como su configuración. Si se interrumpe la conexión entre el plano de administración y el entorno de ejecución, los servicios en este plano seguirán funcionando.
Los datos de configuración que descarga el sincronizador incluyen lo siguiente:
- Paquetes de proxy e implementaciones de flujo compartido
- Hooks de flujo
- Información del entorno
- Recursos compartidos de las API
- Definiciones de servidor de destino
- Configuración de TLS
- Nombres de mapas de clave-valor (KVM)
- Máscaras de datos
Almacén de datos de Cassandra
Apache Cassandra es el almacén de datos del entorno de ejecución que proporciona persistencia de datos para el plano de entorno de ejecución.
Cassandra es un sistema de datos distribuido que proporciona persistencia de datos en el plano del entorno de ejecución. Implementa la base de datos de Cassandra como un grupo de nodos StatefulSet en tu clúster de Kubernetes. Cuando ubicas estas entidades cerca de los servicios de procesamiento del entorno de ejecución, ayudas a admitir los requisitos de seguridad y alta escalabilidad.
La base de datos de Cassandra almacena información sobre las siguientes entidades:
- Sistema de administración de claves (KMS)
- Mapa de clave-valor (KVM)
- Caché de respuesta
- OAuth
- Cuotas
API de Management para datos de entorno de ejecución (MART)
En el plano de entorno de ejecución Cassandra almacena los datos que pertenecen a tu organización y a los que se accede durante las llamadas a la API del entorno de ejecución.
Estos datos incluyen lo siguiente:
- Opciones de configuración de la aplicación
- Datos del sistema de administración de claves (KMS)
- Caché
- Mapas de claves-valores (KVM)
- Productos de API
- Apps de desarrolladores
Para acceder a esos datos y actualizarlos, por ejemplo, para agregar una KVM nueva o quitar un entorno, puedes usar la IU híbrida de Apigee o las API de Apigee. El servidor MART (API de Management para datos de entorno de ejecución) procesa las llamadas a la API en el almacén de datos del entorno de ejecución.
En esta sección, se describe la función que MART ejecuta cuando llamas a las API de Apigee para acceder al almacén de datos de entorno de ejecución.
Qué es MART | Para llamar a una API de Apigee, envía una solicitud autenticada al servidor de administración (MS) en el plano de administración. MS autentica y autoriza la solicitud y, luego, reenvía la solicitud a MART en el plano de entorno de ejecución. Se adjunta a esa solicitud un token que el MS generó con una cuenta de servicio preconfigurada. MART recibe la solicitud, la autentica y la autoriza, y, luego, realiza la validación de la empresa. Por ejemplo, si la app forma parte de un producto de API, MART garantiza que se trate de una solicitud válida. Después de determinar la validez de una solicitud, MART la procesa. Cassandra almacena los datos del entorno de ejecución que procesa MART, es decir que después de todo, es un almacén de datos de entorno de ejecución. MART podría leer datos de Cassandra o actualizarlos, según el tipo de solicitud. Al igual que la mayoría de los servicios híbridos, MART no tiene estado: no conserva su propio estado en el entorno de ejecución. |
Qué no es MART | Aunque MART expone un puerto a la nube pública, no debes llamar a MART directamente. (El puerto debe estar expuesto para que MART pueda recibir llamadas de MS a través de una cuenta de servicio). Además, MART no recibe llamadas de entorno de ejecución de tus clientes a sus proxies de API. El controlador de entrada controla esas llamadas y las enruta a los procesadores de mensajes de tu clúster. |
Cabe destacar que MART y los procesadores de mensajes tienen acceso al mismo almacén de datos de entorno de ejecución (Cassandra), que es la forma en que se comparten los datos, como KMS, KVM y memorias caché.
En la siguiente imagen, se muestra el flujo de una llamada a la API de Apigee:
UDCA
El agente universal de recopilación de datos (UDCA) es un servicio que se ejecuta dentro del Pod de recopilación de datos en el plano del entorno de ejecución que extrae datos de depuración, estadísticas y estado de implementación, y los envía a la UAP.
Para obtener más información, consulta Recopilación de datos de depuración, estadísticas y estado de implementación.
Información sobre el plano de administración
El plano de administración se ejecuta en Google Cloud. Incluye servicios administrativos, como los siguientes:
- IU híbrida de Apigee: Proporciona una IU para que los desarrolladores creen y también implementen proxies de API, configuren políticas, creen productos de API, así como apps para desarrolladores. Los administradores pueden usar la IU híbrida de Apigee para supervisar el estado de implementación.
- API de Apigee: Proporciona una interfaz programática para administrar la organización y los entornos.
- Plataforma unificada de Analytics (UAP): recibe y procesa datos de estadísticas y de estado de implementación desde el plano de entorno de ejecución.
En la siguiente imagen, se muestran los servicios principales que se ejecutan en el plano de administración:
Acerca de los servicios de Google Cloud
En la siguiente tabla, se describen los servicios clave de Google Cloud que aprovecha el entorno híbrido:
Servicio de Google Cloud | Descripción |
---|---|
Identity | La autenticación de la cuenta de usuario usa cuentas de Google Cloud. La autorización usa cuentas de servicio de Google Cloud. |
Funciones | La administración de acceso para híbridos usa el motor de funciones de Google, IAM y admite las funciones predeterminadas de Apigee. |
Resource Hierarchy | Los recursos se organizan en proyectos de Google Cloud (vinculados a organizaciones de Apigee). |
Stackdriver | Proporciona análisis de datos de registros y métricas. |
Tipos de usuarios
Apigee identificó los siguientes tipos principales de usuarios híbridos:
Función | Responsabilidades y tareas comunes | Áreas de interés |
---|---|---|
Operadores/administradores del sistema |
|
|
Desarrolladores |
|
|
Ventajas
Apigee Hybrid tiene las siguientes ventajas:
- Mayor agilidad
- Debido a que el híbrido se entrega y se ejecuta en contenedores, puedes lograr lanzamientos en etapas, ajuste de escala automático y otros beneficios operativos de un sistema en contenedores.