Paso 4: Crea una organización

Has creado una cuenta y un proyecto de Google Cloud y has habilitado las APIs. Ahora puedes crear tu organización.

Requisitos previos

Para crear una organización, debes cumplir una de las siguientes condiciones:

  • Tener una cuenta de evaluación. Las cuentas de evaluación caducan a los 60 días. En ese momento, se eliminará la organización.
  • Tener una cuenta de pago

Si no es así, debes ponerte en contacto con el equipo de ventas de Apigee para poder continuar.

Para crear una organización y aprovisionarla, sigue estos pasos:

  1. En la línea de comandos, obtén tus credenciales de autenticación gcloud, como se muestra en el siguiente ejemplo:

    TOKEN=$(gcloud auth print-access-token)

    Para comprobar que el token se ha rellenado, usa echo, como se muestra en el siguiente ejemplo:

    echo $TOKEN

    Debería mostrar tu token como una cadena codificada.

    Para obtener más información, consulta la descripción general de la herramienta de línea de comandos gcloud.

  2. Envía una solicitud POST autenticada a la API Create organizations.

    En el siguiente ejemplo se muestra la estructura de la solicitud que crea una organización:

    curl -H "Authorization: Bearer $TOKEN" -X POST -H "content-type:application/json" \
      -d '{
        "name":"org_name",
        "displayName":"display_name",
        "description":"organization_description",
        "runtimeType":"runtime_type",
        "analyticsRegion":"analytics_region"
      }' \
      "https://apigee.googleapis.com/v1/organizations?parent=projects/project_ID"

    Donde:

    • (Obligatorio) org_name es el ID programático que quiere asignar a su organización con la función híbrida habilitada. El ID de organización debe coincidir con el ID de proyecto de Google Cloud que has creado en el paso 2: Crea un proyecto de Google Cloud. Por ejemplo, hybrid-42.
    • (Obligatorio) runtime_type es el tipo de entorno de ejecución de la organización de Apigee, donde HYBRID es el entorno de ejecución de Apigee hybrid gestionado por el usuario.
    • (Obligatorio) analytics_region es la región principal para el almacenamiento de datos de analíticas. Elige una de estas opciones:
      asia-northeast1 australia-southeast1 us-west1
      us-central1 us-east1 europe-west1
      europe-west2

      Ofrecemos esta opción para que puedas elegir una región que esté cerca geográficamente o si tu organización tiene otros requisitos de almacenamiento.

    • (Obligatorio) project_ID es el proyecto de Google Cloud que quieres vincular a tu nueva organización con la función híbrida habilitada. Es el ID que Google ha generado en el paso 2: Crea un proyecto de Google Cloud.
    • (Opcional) display_name es el nombre fácil de usar de tu organización. Este valor no tiene por qué ser único y puede incluir espacios y caracteres especiales. Por ejemplo, "Mi organización híbrida".
    • (Opcional) organization_description es información sobre la organización que quieres usar como recordatorio de su finalidad. Por ejemplo, "Mi primera organización".

    Si la solicitud de creación se realiza correctamente, la API Organizations debe responder con un mensaje similar al siguiente:

    {
      "name": "organizations/organization_ID/operations/long_running_operation_ID",
      "metadata": {
        "@type": "type.googleapis.com/google.cloud.apigee.v1.OperationMetadata",
        "operationType": "INSERT",
        "targetResourceName": "organizations/organization_ID",
        "state": "IN_PROGRESS"
      }
    }

    Donde:

    • long_running_operation_ID es el UUID de una operación asíncrona de larga duración. Puedes usar este ID para comprobar el estado de tu solicitud de creación de organización (se describe más adelante).
    • organization_ID es el ID de la nueva organización que se está creando.

    Como indica la propiedad state de la respuesta, Apigee ha empezado a crear la nueva organización, por lo que su estado es IN_PROGRESS. Este proceso puede tardar varios minutos.

    Si aparece un error, consulta Solucionar problemas al crear una organización.

  3. Puedes consultar el estado de la operación de larga duración cuyo ID devolvió Apigee en tu solicitud de creación inicial. Para ello, usa la API Operations, como se muestra en el siguiente ejemplo:
    curl -H "Authorization: Bearer $TOKEN" \
      "https://apigee.googleapis.com/v1/organizations/organization_ID/operations/long_running_operation_ID"

    En los siguientes ejemplos se muestran posibles respuestas a esta solicitud:

    TERMINADO

    Cuando se haya aprovisionado la organización, el estado de la operación de larga duración será FINISHED, como se muestra en el siguiente ejemplo:

    {
        "operations": [
          {
            "name": "organizations/organization_ID/operations/long_running_operation_ID",
            "metadata": {
              "@type": "type.googleapis.com/google.cloud.apigee.v1.OperationMetadata",
              "operationType": "INSERT",
              "targetResourceName": "organizations/organization_ID",
              "state": "FINISHED"
            },
            "done": true,
            "response": {
              "@type": "type.googleapis.com/google.cloud.apigee.v1.Organization",
              "name": "organization_ID",
              "createdAt": "1572550611",
              "lastModifiedAt": "1572550611",
              "displayName": "display_name"
              "description": "description"
              "properties": {
                "property": [
                  {
                    "name": "features.hybrid.enabled",
                    "value": "true"
                  }
                ]
              },
              "analyticsRegion": "us-east1"
              "runtimeType": "HYBRID",
            }
          }
        ]
      }

    Si no has introducido ninguna descripción, ese campo no aparecerá en la respuesta.

    ¡Enhorabuena! Has creado una organización y ya puedes usarla. Puedes continuar con el paso 5: Añade un entorno.

    IN_PROGRESS

    Si Apigee sigue creando la organización, responderá con el estado IN_PROGRESS, como se muestra en el siguiente ejemplo:

    {
        "name": "organizations/organization_ID/operations/long_running_operation_ID",
        "metadata": {
          "@type": "type.googleapis.com/google.cloud.apigee.v1.OperationMetadata",
          "operationType": "INSERT",
          "targetResourceName": "organizations/organization_ID",
          "state": "IN_PROGRESS"
        }
      }

    Deberías esperar un poco más antes de intentar verificar que el proceso de creación se ha completado.

Solucionar problemas de creación de organizaciones

Cuando creas una organización con la API Create organizations, es posible que recibas una respuesta de error. Las respuestas tienen este aspecto:

{
  "error": {
    "code": HTTP_error_code,
    "message": "short_error_message",
    "status": "high_level_error_type",
    "details": [
      {
        "@type": "specific_error_type",
        "detail": "expanded_error_description"
      }
    ]
  }
}

En el siguiente ejemplo se muestra una respuesta a un error habitual: el ID de organización contiene caracteres no válidos (no se permiten caracteres en mayúsculas en los IDs de organización):

{
  "error": {
    "code": 400,
    "message": "invalid Organization ID \"MY-ORG\": \"MY-ORG\" is an invalid Organization ID",
    "status": "INVALID_ARGUMENT",
    "details": [
      {
        "@type": "type.googleapis.com/google.rpc.DebugInfo",
        "detail": "[ORIGINAL ERROR] generic::invalid_argument: invalid Organization ID \"MY-ORG\":
          \"My-ORG\" is an invalid Organization ID [google.rpc.error_details_ext]
          { message: \"invalid Organization ID \\\"MY-ORG\\\": \\\"MY-ORG\\\" is an invalid
          Organization ID\" }"
      }
    ]
  }
}

En ese caso, puedes cambiar el nombre de la organización a minúsculas y volver a enviar tu solicitud.

En la siguiente tabla se muestran los errores que puedes recibir y las posibles soluciones cuando intentas crear una organización:

Código de error HTTP Error HTTP Descripción
400 Invalid JSON payload received La estructura de los datos de tu solicitud contiene un error de sintaxis o la ruta al endpoint es incorrecta.
400 Invalid organization ID El ID de organización que solicites no puede contener letras mayúsculas ni caracteres especiales que no sean guiones. Solo debe contener letras minúsculas, números o guiones. Puede tener una longitud máxima de 32 caracteres.
400 Unsupported analytics region No ha especificado el valor de analyticsRegion en el cuerpo de la solicitud o el valor que ha especificado no es una de las opciones válidas.
400 Does not have an Apigee entitlement Tu proyecto de Google Cloud (que creaste en el paso 2: Crea un proyecto de Google Cloud) aún no se ha habilitado para el modo híbrido. Esto podría indicar que hay un problema con la facturación u otro error relacionado con tu cuenta de Google Cloud. Para obtener más información, ponte en contacto con el equipo de Ventas de Apigee.
401 Request had invalid authentication credentials Tu token de autenticación de gcloud no es válido o está obsoleto, o no has incluido ninguno 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 un ID o una ruta de proyecto incorrectos.
403 Unable to retrieve project information La organización aún no se ha creado ni aprovisionado. Puedes enviar una solicitud a la API Operations para comprobar el estado de la operación de larga duración, tal como se describe en el procedimiento anterior.
409 Organization already exists Has intentado crear más de una organización para el proyecto de Google Cloud. Solo puedes crear una organización por proyecto.
409 Org proposed_organization_ID already exists Has intentado crear una organización con el mismo ID que otra que ya existe. Los IDs de organización deben ser únicos en todos los clientes híbridos. Vuelva a enviar el feed con un nuevo ID de organización propuesto. Por ejemplo, añada un valor numérico al final del ID anterior que haya probado.

Obtener información de la organización

Puedes obtener una lista de todas las organizaciones a las que tiene acceso tu cuenta o consultar los detalles de una organización concreta por su ID. Para llevar a cabo estas acciones, debes usar la API Organizations.

Mostrar organizaciones

Para obtener una lista de todas las organizaciones, haz lo siguiente:

Envía una solicitud GET (sin cuerpo) al siguiente endpoint de la API List organizations:

https://apigee.googleapis.com/v1/organizations

Por ejemplo:

curl -H "Authorization: Bearer $TOKEN" "https://apigee.googleapis.com/v1/organizations"

La respuesta a tu solicitud contiene una matriz de todas las organizaciones con el modo híbrido habilitado a las que tienes acceso, en formato JSON.

En el siguiente ejemplo se muestra una respuesta con una sola organización, "my-org-42":

{
  "organizations": [
    {
      "organization": "my-org-42",
      "projectIds": [
        "my-project"
      ]
    }
  ]
}

Más información

Para obtener información sobre una sola organización, haz lo siguiente:

Envía una solicitud GET (sin cuerpo) al siguiente endpoint de la API Get organizations:

https://apigee.googleapis.com/v1/organizations/organization_ID

En el siguiente ejemplo se obtienen detalles sobre la organización "my-org-42":

curl -H "Authorization: Bearer $TOKEN"
  "https://apigee.googleapis.com/v1/organizations/my-org-42"

La respuesta a tu solicitud contiene detalles sobre la organización especificada en formato JSON.

En el siguiente ejemplo se muestra una respuesta con detalles sobre la organización "my-org-42":

{
  "name": "my-org-42",
  "createdAt": "1572550611",
  "lastModifiedAt": "1572550611",
  "environments": [
    "my-environment"
  ],
  "analyticsRegion": "us-east1"
}
1 2 3 4 (SIGUIENTE) Paso 5: Añade un entorno