Você criou uma conta e um projeto do Google Cloud e ativou as APIs. Agora você pode criar sua organização.
Pré-requisito
Para criar uma organização, é necessário atender a uma das seguintes condições:
- ter uma conta de avaliação. As contas de avaliação expiram após 60 dias. Nesse momento, a organização será excluída.
- Ter uma conta paga
Se nenhuma delas for verdadeira, será preciso entrar em contato com a equipe de vendas da Apigee antes de continuar.
Para criar uma nova organização e provisioná-la:
-
Na linha de comando, receba as credenciais de autenticação de
gcloud
. Veja o exemplo a seguir:TOKEN=$(gcloud auth print-access-token)
Para verificar se o token foi preenchido, use
echo
, como mostra o exemplo a seguir:echo $TOKEN
Isso exibirá seu token como uma string codificada.
Para mais informações, consulte a visão geral da ferramenta de linha de comando gcloud.
- Envie uma solicitação
POST
autenticada para a API Create Organizations.No exemplo a seguir, mostramos a estrutura de solicitação que cria uma organização:
curl -H "Authorization: Bearer $TOKEN" -X POST -H "content-type:application/json" \ -d '{ "name":"proposed_org_ID", "displayName":"display_name", "description":"organization_description", "runtimeType":"runtime_type", "analyticsRegion":"analytics_region" }' \ "https://apigee.googleapis.com/v1/organizations?parent=projects/project_ID"
Em que:
- (Obrigatório) proposed_org_ID é o ID programático
que você quer para sua organização ativada para o híbrido. Por exemplo,
my-hybrid-org
.A Apigee recomenda que você use o mesmo ID do projeto do Google Cloud criado na Etapa 2: criar um projeto do Google Cloud, mas, se quiser, use outro ID.
- (Obrigatório) runtime_type é o tipo de ambiente de execução da organização da Apigee, em que HYBRID é o ambiente de execução híbrido da Apigee gerenciado pelo usuário.
- (Obrigatório) analytics_region é a região principal para o
armazenamento de dados de análise. Escolha uma destas opções:
asia-northeast1
australia-southeast1
us-west1
us-central1
us-east1
europe-west1
europe-west2
Fornecemos essa opção para que você possa escolher uma região geograficamente próxima ou se sua organização tiver outros requisitos de armazenamento.
- (Obrigatório) project_ID é o projeto do Google Cloud que você quer vincular à nova organização com acesso híbrido. Este é o ID que o Google gerou para você na Etapa 2: criar um projeto do Google Cloud.
- (Opcional) display_name é o nome fácil de usar da sua organização. Esse valor não precisa ser exclusivo e pode incluir espaços e caracteres especiais. Por exemplo, "Minha organização híbrida".
- (Opcional) organization_description são informações sobre a organização que você quer usar como um lembrete da finalidade dela. Por exemplo, "Minha primeira organização".
Em uma solicitação de criação bem-sucedida, a API Organizations precisa responder com uma mensagem semelhante a esta:
{ "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" } }
Em que:
- long_running_operation_ID é o UUID de uma operação assíncrona e de longa duração. É possível usar esse ID para verificar o status da solicitação de criação da autoridade (descrito posteriormente).
- organization_ID é o ID da sua nova organização que está sendo criada.
Como a propriedade
state
na resposta indica que a Apigee começou a criar a nova organização, o estado dela éIN_PROGRESS
. Esse processo pode levar vários minutos.Se você receber um erro, consulte Como solucionar problemas na criação da organização.
- (Obrigatório) proposed_org_ID é o ID programático
que você quer para sua organização ativada para o híbrido. Por exemplo,
- É possível verificar o status da operação de longa duração com o ID que a Apigee retornou na
solicitação de criação inicial. Para fazer isso, use a API Operations, como no exemplo a
seguir:
curl -H "Authorization: Bearer $TOKEN" \ "https://apigee.googleapis.com/v1/organizations/organization_ID/operations/long_running_operation_ID"
Os exemplos a seguir mostram possíveis respostas a essa solicitação:
FINISHED
Quando a organização foi provisionada, o estado da operação de longa duração é
FINISHED
, como mostra o exemplo a seguir:{ "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", } } ] }
Se você não tiver inserido uma descrição, esse campo não aparecerá na resposta.
Parabéns! Você criou uma nova organização e ela está pronta para ser usada. Prossiga para a Etapa 5: adicionar um ambiente.
IN_PROGRESS
Se a Apigee ainda estiver criando a organização, a Apigee responderá com um status
IN_PROGRESS
, como mostra o exemplo a seguir:{ "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" } }
Aguarde um pouco mais antes de tentar verificar se o processo de criação foi concluído.
Como solucionar problemas na criação da organização
Ao criar uma organização com a API Create Organizations, você talvez receba uma resposta de erro. As respostas têm a seguinte aparência:
{ "error": { "code": HTTP_error_code, "message": "short_error_message", "status": "high_level_error_type", "details": [ { "@type": "specific_error_type", "detail": "expanded_error_description" } ] } }
O exemplo a seguir mostra uma resposta a um erro comum. O ID da organização contém caracteres ilegais (caracteres maiúsculos não são permitidos nos IDs da organização):
{ "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\" }" } ] } }
Nesse caso, você pode renomear a organização com letras minúsculas e reenviar sua solicitação.
A tabela a seguir lista os erros que você pode receber e as possíveis resoluções ao tentar criar uma nova organização:
Código de erro HTTP | Erro HTTP | Descrição |
---|---|---|
400 |
Invalid JSON payload received |
A estrutura dos dados na solicitação contém um erro de sintaxe ou o caminho para o endpoint está incorreto. |
400 |
Invalid organization ID |
O ID da organização solicitado não pode conter letras maiúsculas ou quaisquer caracteres especiais diferentes de hífens. Ele precisa conter apenas letras minúsculas, números e/ou hífens. Ele pode ter até um máximo de 32 caracteres. |
400 |
Unsupported analytics region |
Você não especificou o valor de analyticsRegion no
corpo da solicitação ou o valor especificado não é uma das opções válidas. |
400 |
Does not have an Apigee entitlement |
Seu projeto do Google Cloud (criado na Etapa 2: criar um projeto do Google Cloud) ainda não foi ativado como híbrida. Isso pode indicar um problema com seu faturamento ou algum outro erro relacionado à sua conta do Google Cloud. Para mais informações, entre em contato com a equipe de vendas da Apigee. |
401 |
Request had invalid authentication credentials |
Seu token de autenticação da gcloud está inválido ou desatualizado ou não foi incluído na solicitação. Gere um novo token e reenvie o endereço. |
403 |
Permission denied on resource project project_ID |
Você pode ter enviado uma solicitação que continha um caminho ou ID de projeto incorreto. |
403 |
Unable to retrieve project information |
A organização ainda não foi criada ou provisionada. É possível emitir uma solicitação à API Operations para verificar o status da operação de longa duração, conforme descrito no procedimento acima. |
409 |
Organization already exists |
Você tentou criar mais de uma organização para o projeto do Google Cloud. Você só pode criar uma organização por projeto. |
409 |
Org proposed_organization_ID already exists |
Você tentou criar uma organização que tem o mesmo ID que uma que já existe. Os IDs de organização precisam ser exclusivos em todos os clientes híbridos. Reenviar com um novo ID da organização proposto. Por exemplo, anexe um valor numérico ao final do ID anterior que você tentou. |
Receber informações da organização
Você pode conseguir uma lista de todas as organizações a que sua conta tem acesso ou ver detalhes sobre uma organização específica pelo ID. Para executar essas ações, use a API Organizations.
Listar organizações
Para ter uma lista de todas as organizações:
Envie uma solicitação GET
(sem corpo) para o seguinte endpoint da
API List Organizations:
https://apigee.googleapis.com/v1/organizations
Por exemplo:
curl -H "Authorization: Bearer $TOKEN" "https://apigee.googleapis.com/v1/organizations"
A resposta à solicitação contém uma matriz de todas as organizações ativadas por híbridas que você pode acessar no formato JSON.
O exemplo a seguir mostra uma resposta com uma única organização, "my-org-42":
{ "organizations": [ { "organization": "my-org-42", "projectIds": [ "my-project" ] } ] }
Veja os detalhes
Para ver detalhes sobre uma única organização:
Envie uma solicitação GET
(sem corpo) para o seguinte endpoint da
API Get Organizations:
https://apigee.googleapis.com/v1/organizations/organization_ID
O exemplo a seguir recebe detalhes sobre a organização "my-org-42":
curl -H "Authorization: Bearer $TOKEN" "https://apigee.googleapis.com/v1/organizations/my-org-42"
A resposta à sua solicitação contém detalhes sobre a organização especificada no formato JSON.
O exemplo a seguir mostra uma resposta com detalhes sobre a organização "my-org-42":
{ "name": "my-org-42", "createdAt": "1572550611", "lastModifiedAt": "1572550611", "environments": [ "my-environment" ], "analyticsRegion": "us-east1" }