En este paso, crearás una organización de Apigee.
Para crear una organización nueva y aprovisionarla, haz lo siguiente:
-
En la línea de comandos, obtén tus credenciales de autenticación de
gcloud
con el siguiente comando:Linux/MacOS
export TOKEN=$(gcloud auth print-access-token)
Para verificar que tu token se haya propagado, usa
echo
, como se muestra en el siguiente ejemplo:echo $TOKEN
Se debería mostrar tu token como una string codificada.
Windows
for /f "tokens=*" %a in ('gcloud auth print-access-token') do set TOKEN=%a
Para verificar que tu token se haya propagado, usa
echo
, como se muestra en el siguiente ejemplo:echo %TOKEN%
Se debería mostrar tu token como una string codificada.
-
En el Paso 1, creaste la variable de entorno
PROJECT_ID
. Agrega estas variables de entorno:Linux/MacOS
export ORG_NAME=$PROJECT_ID
export ANALYTICS_REGION="ANALYTICS_REGION"
export RUNTIMETYPE=HYBRID
Windows
set ORG_NAME=$PROJECT_ID
set ANALYTICS_REGION="ANALYTICS_REGION"
set RUNTIMETYPE=HYBRID
Aquí:
ORG_NAME
(Obligatorio): Este valor debe coincidir con elPROJECT_ID
.ANALYTICS_REGION
(Obligatorio): La región principal para el almacenamiento de los datos de estadísticas, en la que la variable se configura como una de las siguientes opciones:asia-northeast1
asia-south1
asia-east1
asia-southeast1
australia-southeast1
us-central1
us-east1
us-west1
asia-southeast2
europe-west1
europe-west2
Elige una región que esté geográficamente cerca o que cumpla con los requisitos de almacenamiento de tu organización.
-
RUNTIMETYPE
(Obligatorio): Se debe configurar comoHYBRID
.
- Llama a la siguiente API de Apigee para crear la organización:
curl -H "Authorization: Bearer $TOKEN" -X POST -H "content-type:application/json" \ -d '{ "name":"'"$ORG_NAME"'", "runtimeType":"'"$RUNTIMETYPE"'", "analyticsRegion":"'"$ANALYTICS_REGION"'" }' \ "https://apigee.googleapis.com/v1/organizations?parent=projects/$PROJECT_ID"
En una solicitud de creación correcta, la API de entornos responde con un mensaje similar al siguiente:
{ "name": "organizations/org_name/operations/LONG_RUNNING_OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.apigee.v1.OperationMetadata", "operationType": "INSERT", "targetResourceName": "organizations/org_name", "state": "IN_PROGRESS" } }
Aquí:
- LONG_RUNNING_OPERATION_ID es el UUID de una operación de larga duración asíncrona. Puedes usar este ID para verificar el estado de tu solicitud de creación de organización (descrito en el paso 5).
- org_name es el ID de la organización nueva que se está creando actualmente.
Como lo indica la propiedad
state
en la respuesta, Apigee comenzó a crear la organización nueva, por lo que su estado esIN_PROGRESS
. Este proceso puede tardar varios minutos.Si recibes un error, consulta Solucionar los problemas de la creación de organizaciones.
- Guarda el ID de operación de larga duración en una variable de entorno.
Será útil para las tareas de administración futuras.
Sintaxis
export LONG_RUNNING_OPERATION_ID=LONG_RUNNING_OPERATION_ID
Ejemplo
export LONG_RUNNING_OPERATION_ID=6abc8a72-46de-f9da-bcfe-70d9ab347e4f
- Puedes verificar el estado de la operación de larga duración cuyo ID mostró la solicitud de creación. Para hacer esto, usa la API de operaciones. Por ejemplo:
curl -H "Authorization: Bearer $TOKEN" \ "https://apigee.googleapis.com/v1/organizations/$ORG_NAME/operations/$LONG_RUNNING_OPERATION_ID"
En los siguientes ejemplos, se muestran posibles respuestas a esta solicitud:
IN_PROGRESS
Si Apigee aún está creando la organización, Apigee responde con un estado de
IN_PROGRESS
. Por ejemplo:{ "name": "organizations/ORG_NAME/operations/LONG_RUNNING_OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.apigee.v1.OperationMetadata", "operationType": "INSERT", "targetResourceName": "organizations/ORG_NAME", "state": "IN_PROGRESS" } }
Debes esperar un poco más de tiempo antes de intentar verificar que se haya completado el proceso de creación.
FINISHED
Cuando se aprovisiona la organización, el estado de la operación de larga duración es
FINISHED
. Por ejemplo:{ "name": "organizations/ORG_NAME/operations/LONG_RUNNING_OPERATION_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.apigee.v1.OperationMetadata", "operationType": "INSERT", "targetResourceName": "organizations/ORG_NAME", "state": "FINISHED" }, "done": true, "response": { "@type": "type.googleapis.com/google.cloud.apigee.v1.Organization", "name": "ORG_NAME", "description": "", "createdAt": "1626237148461", "lastModifiedAt": "1626237149384", "properties": { "property": [ { "name": "features.hybrid.enabled", "value": "true" }, { "name": "features.mart.connect.enabled", "value": "true" } ] }, "analyticsRegion": "ANALYTICS_REGION", "runtimeType": "HYBRID", "subscriptionType": "TRIAL", "state": "ACTIVE", "billingType": "EVALUATION", "expiresAt": "1631421073171", "addonsConfig": { "advancedApiOpsConfig": {}, "integrationConfig": {}, "monetizationConfig": {} } } }
Puedes usar la API de las organizaciones de Apigee para recuperar información sobre una organización después de crearla. Por ejemplo:
curl -H "Authorization: Bearer $TOKEN" \ "https://apigee.googleapis.com/v1/organizations/$ORG_NAME"
La respuesta a tu solicitud contiene detalles sobre la organización especificada en formato JSON.
{ "name": "apigee-example", "createdAt": "1626237148461", "lastModifiedAt": "1626237149384", "properties": { "property": [ { "name": "features.hybrid.enabled", "value": "true" }, { "name": "features.mart.connect.enabled", "value": "true" } ] }, "analyticsRegion": "us-west1", "runtimeType": "HYBRID", "subscriptionType": "TRIAL", "projectId": "apigee-example", "state": "ACTIVE", "billingType": "EVALUATION", "expiresAt": "1631421073171", "addonsConfig": { "advancedApiOpsConfig": {}, "integrationConfig": {}, "monetizationConfig": {} } }
Soluciona los problemas de la creación de organizaciones
Cuando creas una organización con la API de creación de organizaciones, es posible que recibas una respuesta de error. Las respuestas se ven de la siguiente manera:
{ "error": { "code": HTTP_error_code, "message": "short_error_message", "status": "high_level_error_type", "details": [ { "@type": "specific_error_type", "detail": "expanded_error_description" } ] } }
En la siguiente tabla, se enumeran los errores que puedes recibir y las posibles soluciones cuando intentas crear una organización nueva:
Código de error HTTP | Error HTTP | Descripción |
---|---|---|
400 |
Invalid JSON payload received |
La estructura de los datos en tu solicitud contiene un error de sintaxis o la ruta de acceso al extremo es incorrecta. |
400 |
Invalid organization ID |
El ID de la organización que solicitas no puede contener letras en mayúscula ni caracteres especiales que no sean guiones. Solo debe contener letras en minúscula, números o guiones. Puede tener hasta 32 caracteres de longitud. |
400 |
Unsupported analytics region |
No especificaste el valor de analyticsRegion en el cuerpo de tu solicitud o el valor que especificaste no es una de las opciones válidas. |
400 |
Does not have an Apigee entitlement |
El proyecto de Google Cloud (que creaste en el Paso 2: Crea un proyecto de Google Cloud) aún no está habilitado para un entorno híbrido. Esto podría indicar un problema con tu facturación o algún otro error relacionado con tu cuenta de Google Cloud. Para obtener más información, comunícate con Ventas de Apigee. |
401 |
Request had invalid authentication credentials |
Tu token de autenticación de gcloud es incorrecto o está desactualizado, o no incluiste uno en la solicitud. Genera un token nuevo y vuelve a enviar la dirección. |
403 |
Permission denied on resource project project_ID |
Es posible que hayas enviado una solicitud que contenía una ruta o un ID del proyecto incorrectos. |
403 |
Unable to retrieve project information |
La organización aún no se creó ni aprovisionó. Puedes emitir una solicitud a la API de Operaciones para verificar el estado de la operación de larga duración, como se describe en el paso 5. |
409 |
Organization already exists |
Intentaste crear más de una organización para el proyecto de Google Cloud. Solo se puede crear una organización por proyecto. |
409 |
Org proposed_org_name already exists |
Intentaste crear una organización que tiene el mismo ID que una que ya existe. Los ID de las organizaciones deben ser únicos para todos los clientes híbridos. Vuelve a enviarla con un nuevo ID de organización propuesto. Por ejemplo, agrega un valor numérico al final del ID que intentaste antes. |
Próximo paso
Ve al paso 3: Crea un grupo de entornos.