- 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 esta sección se describe el sincronizador.
Información general sobre el sincronizador
En Apigee hybrid, la tarea principal del sincronizador es sondear y descargar los contratos de tiempo de ejecución que proporciona el plano de gestión. La información comunicada por contrato incluye proxies de API, productos de API, cachés y hosts virtuales. De forma predeterminada, Synchronizer almacena los datos de configuración del entorno en la base de datos de Cassandra.
Se espera que las instancias de sincronizador que se ejecutan en el plano de tiempo de ejecución sondeen el plano de gestión de forma periódica, descarguen los contratos y los pongan a disposición de las instancias de tiempo de ejecución locales.
Un sincronizador puede admitir muchos procesadores de mensajes implementados en el mismo pod.
Habilitar el acceso del sincronizador
Debe conceder el permiso Sincronizador para descargar artefactos de Apigee, como paquetes de proxy y recursos del plano de gestión. Debes llamar a una API de Apigee para autorizar al sincronizador a extraer artefactos del plano de gestión al plano de ejecución.
- Asegúrate de que has habilitado la API Apigee tal como se explica en los pasos de configuración de Google Cloud. Para obtener más información, consulta Habilitar APIs.
- Busca la clave de cuenta de servicio de Google Cloud con permiso de escritura (un archivo JSON) que descargaste en la sección Crear cuentas de servicio y credenciales. La cuenta de servicio tiene el rol Administrador de la organización de Apigee y se llama "apigee-org-admin". Si no has creado esta cuenta de servicio anteriormente, debes hacerlo antes de continuar.
- Usa la clave de la cuenta de servicio de administrador de la organización de Apigee para generar un token de acceso OAuth 2.0.
Este token es necesario para autenticar las APIs de Apigee.
Usa gcloud para obtener un token de acceso de OAuth 2.0. Para ello, pasa el archivo JSON de las credenciales de la cuenta de servicio que descargaste mediante la variable de entorno
GOOGLE_APPLICATION_CREDENTIALS
:export GOOGLE_APPLICATION_CREDENTIALS=your_sa_credentials_file.json
gcloud auth application-default print-access-token
Se devuelve un token de OAuth 2.0.
Para obtener más información, consulta gcloud beta auth application-default print-access-token.
- Copia el token de OAuth 2.0 devuelto y guárdalo en una variable, como
TOKEN
. Por ejemplo:export TOKEN=ya29....Ts13inj3LrqMJlztwygtM
- Llama a la API setSyncAuthorization para habilitar los permisos necesarios para Synchronizer:
Sin residencia de datos
curl -X POST -H "Authorization: Bearer $TOKEN" \ -H "Content-Type:application/json" \ "https://apigee.googleapis.com/v1/organizations/YOUR_ORG_NAME:setSyncAuthorization" \ -d '{"identities":["serviceAccount:SYNCHRONIZER_MANAGER_SERVICE_ACCOUNT_NAME"]}'
Donde:
YOUR_ORG_NAME
: nombre de la organización híbrida.SYNCHRONIZER_MANAGER_SERVICE_ACCOUNT_NAME
: el nombre de una cuenta de servicio con el rol Administrador del sincronizador de Apigee. El nombre tiene el formato de una dirección de correo electrónico. Por ejemplo:my-synchronizer-manager-service_account@my_project_id.iam.gserviceaccount.com
Ejemplo:
curl -X POST -H "Authorization: Bearer $TOKEN" \ -H "Content-Type:application/json" \ "https://apigee.googleapis.com/v1/organizations/my_org:setSyncAuthorization" \ -d '{"identities":["serviceAccount:my-synchronizer-manager-service_account@my_project_id.iam.gserviceaccount.com"]}'
Residencia de datos
curl -X POST -H "Authorization: Bearer $TOKEN" \ -H "Content-Type:application/json" \ "https://CONTROL_PLANE_LOCATION-apigee.googleapis.com/v1/organizations/YOUR_ORG_NAME:setSyncAuthorization" \ -d '{"identities":["serviceAccount:SYNCHRONIZER_MANAGER_SERVICE_ACCOUNT_NAME"]}'
Donde:
YOUR_ORG_NAME
: nombre de la organización híbrida.CONTROL_PLANE_LOCATION
: la ubicación de los datos del plano de control si tu instalación híbrida usa la residencia de datos. Es la ubicación en la que se almacena el contenido principal del cliente, como los paquetes proxy. Para ver una lista, consulta Regiones disponibles del plano de control de la API de Apigee.SYNCHRONIZER_MANAGER_SERVICE_ACCOUNT_NAME
: el nombre de una cuenta de servicio con el rol Administrador del sincronizador de Apigee. El nombre tiene el formato de una dirección de correo electrónico. Por ejemplo:my-synchronizer-manager-service_account@my_project_id.iam.gserviceaccount.com
Ejemplo:
curl -X POST -H "Authorization: Bearer $TOKEN" \ -H "Content-Type:application/json" \ "https://us-apigee.googleapis.com/v1/organizations/my_org:setSyncAuthorization" \ -d '{"identities":["serviceAccount:my-synchronizer-manager-service_account@my_project_id.iam.gserviceaccount.com"]}'
Para obtener más información sobre esta API, consulta la API setSyncAuthorization.
- Para verificar que se ha configurado la cuenta de servicio, llama a la siguiente API para obtener una lista de cuentas de servicio:
Sin residencia de datos
curl -X POST -H "Authorization: Bearer $TOKEN" \ -H "Content-Type:application/json" \ "https://apigee.googleapis.com/v1/organizations/your_org_name:getSyncAuthorization" \ -d ''
Residencia de datos
curl -X POST -H "Authorization: Bearer $TOKEN" \ -H "Content-Type:application/json" \ "https://CONTROL_PLANE_LOCATION-apigee.googleapis.com/v1/organizations/your_org_name:getSyncAuthorization" \ -d ''
El resultado es similar al siguiente:
{ "identities":[ "serviceAccount:my-synchronizer-manager-service_account@my_project_id.iam.gserviceaccount.com" ], "etag":"BwWJgyS8I4w=" }