Hai creato un account e un progetto Google Cloud e hai abilitato le API. Ora puoi creare la tua organizzazione.
Prerequisito
Per creare un'organizzazione, devi soddisfare una delle seguenti condizioni:
- Avere un account di valutazione. Gli account di valutazione scadono dopo 60 giorni. A quel punto, l'organizzazione verrà eliminata.
- Avere un account a pagamento
Se nessuna di queste condizioni è vera, devi contattare il team di vendita Apigee prima di poter continuare.
Autorizzazioni obbligatorie
L'autore dell'organizzazione deve avere almeno il ruolo Amministratore organizzazione Apigee. Se sei il proprietario del progetto, disponi automaticamente dell'autorizzazione per creare un'organizzazione. Tuttavia, se deleghi la creazione dell'organizzazione a un proprietario non del progetto, a quell'utente deve essere concesso il ruolo Amministratore organizzazione Apigee nel progetto. Per informazioni sulla concessione dei ruoli, consulta l'articolo Concessione, modifica e revoca dell'accesso alle risorse.
Per creare una nuova organizzazione ed eseguirne il provisioning:
-
Nella riga di comando, ottieni le credenziali di autenticazione
gcloud
, come mostrato nell'esempio seguente:TOKEN=$(gcloud auth print-access-token)
Per verificare che il token sia stato compilato, utilizza
echo
, come mostrato nell'esempio seguente:echo $TOKEN
Il token dovrebbe essere visualizzato come stringa codificata.
Per saperne di più, consulta la panoramica dello strumento a riga di comando gcloud.
- Crea le seguenti variabili di ambiente per gli elementi dell'organizzazione. Li utilizzerai nel
comando per creare l'organizzazione.
-
PROJECT_ID
(obbligatorio) è il progetto Google Cloud che vuoi collegare alla nuova organizzazione abilitata all'ibrido. Si tratta dell'ID generato da Google per te nel passaggio 2: creazione di un progetto Google Cloud.export PROJECT_ID=your_project_id
ORG_NAME
(obbligatorio) è l'ID programmatico che vuoi per la tua organizzazione abilitata all'uso ibrido.export ORG_NAME=$PROJECT_ID
ORG_DISPLAY_NAME
(Facoltativo) è il nome facile da ricordare della tua organizzazione. Questo valore non deve essere univoco e può includere spazi e caratteri speciali. Ad esempio, "La mia organizzazione ibrida".ORG_DISPLAY_NAME="friendly_name"
I contenuti del nome della variabile che contengono spazi devono essere racchiusi tra virgolette doppie. Ad esempio: "La mia organizzazione"
ORGANIZATION_DESCRIPTION
(Facoltativo) contiene informazioni su organizzazione che vuoi utilizzare per ricordarne lo scopo. Ad esempio, "La mia prima organizzazione".ORGANIZATION_DESCRIPTION="description_text"
ANALYTICS_REGION
(Obbligatorio) è la regione principale per e analisi dei dati.export ANALYTICS_REGION=analytics_region
dove analytics_region è uno dei seguenti valori:
asia-northeast1
asia-south1
australia-southeast1
us-central1
us-east1
us-west1
europe-west2
europe-west1
Scegli una regione geograficamente vicina o soddisfi i requisiti di archiviazione della tua organizzazione.
-
RUNTIMETYPE
(obbligatorio) è il tipo di runtime dell'organizzazione Apigee, dove HYBRID è il runtime Apigee hybrid gestito dall'utente.export RUNTIMETYPE=HYBRID
-
- Invia una richiesta
POST
autenticata all'API Crea organizzazioni.L'esempio seguente mostra la struttura della richiesta che crea un'organizzazione:
curl -H "Authorization: Bearer $TOKEN" -X POST -H "content-type:application/json" \ -d '{ "name":"'"$ORG_NAME"'", "displayName":"'"$ORG_DISPLAY_NAME"'", "description":"'"$ORGANIZATION_DESCRIPTION"'", "runtimeType":"'"$RUNTIMETYPE"'", "analyticsRegion":"'"$ANALYTICS_REGION"'" }' \ "https://apigee.googleapis.com/v1/organizations?parent=projects/$PROJECT_ID"
In caso di richiesta di creazione andata a buon fine, l'API dell'organizzazione dovrebbe rispondere con un messaggio simile al seguente:
{ "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" } }
Dove:
- long_running_operation_ID è l'UUID di un modello asincrono a lunga esecuzione operativa. Puoi utilizzare questo ID per controllare lo stato della richiesta di creazione dell'organizzazione (descritta nel passaggio 5).
- org_name è l'ID della nuova organizzazione che è attualmente in fase di creazione.
Come indica la proprietà
state
nella risposta, Apigee ha iniziato a creare la nuova organizzazione, il suo stato èIN_PROGRESS
. Questa procedura può richiedere diversi minuti.Se viene visualizzato un messaggio di errore, vedi Risolvere i problemi relativi alla creazione dell'organizzazione.
- Salva l'ID operazione a lunga esecuzione in una variabile di ambiente.
Sarà utile per le attività di gestione future.
Sintassi
export LONG_RUNNING_OPERATION_ID=long_running_operation_ID
Esempio
export LONG_RUNNING_OPERATION_ID=6abc8a72-46de-f9da-bcfe-70d9ab347e4f
- Puoi controllare lo stato dell'operazione a lunga esecuzione il cui ID Apigee ha restituito
richiesta di creazione iniziale. A tale scopo, utilizza l'API Operations. Ad esempio:
curl -H "Authorization: Bearer $TOKEN" \ "https://apigee.googleapis.com/v1/organizations/$ORG_NAME/operations/$LONG_RUNNING_OPERATION_ID"
I seguenti esempi mostrano possibili risposte a questa richiesta:
IN_PROGRESS
Se Apigee sta ancora creando l'organizzazione, Apigee risponde con lo stato
IN_PROGRESS
. Ad esempio:{ "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" } }
Dovresti attendere ancora un po' prima di tentare di verificare che il processo di creazione l'operazione.
COMPLETATO
Una volta eseguito il provisioning dell'organizzazione, lo stato dell'operazione a lunga esecuzione è
FINISHED
. Ad esempio:{ "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", "displayName": "display_name", "description": "description", "createdAt": "1600817805771", "lastModifiedAt": "1600817805771", "properties": { "property": [ { "name": "features.hybrid.enabled", "value": "true" }, { "name": "features.mart.connect.enabled", "value": "true" } ] }, "analyticsRegion": "us-central1", "runtimeType": "HYBRID", "subscriptionType": "TRIAL" } }
Se non hai inserito una descrizione, il campo non viene visualizzato nella risposta.
Visualizzare i dettagli dell'organizzazione
Puoi visualizzare i dettagli dei metadati per l'organizzazione che hai creato utilizzando un'API Apigee. Puoi anche utilizzare un'API per elencare tutte le organizzazioni a cui ha accesso il tuo account Google Cloud. Per eseguire queste azioni, utilizza l'API organizations.
Prima di provare le API, aggiorna il token di autorizzazione:
TOKEN=$(gcloud auth print-access-token)
Ottieni dettagli dell'organizzazione
Per visualizzare i dettagli relativi a una singola organizzazione:
Invia una richiesta GET
(senza corpo) al seguente endpoint dell'API Get organizations:
https://apigee.googleapis.com/v1/organizations/org_name
L'esempio seguente fornisce i dettagli sull'organizzazione hybrid-example
:
curl -H "Authorization: Bearer $TOKEN" \ "https://apigee.googleapis.com/v1/organizations/hybrid-example"
La risposta alla tua richiesta contiene i dettagli dell'organizzazione specificata in formato JSON.
L'esempio seguente mostra una risposta con i dettagli dell'organizzazione hybrid-example
:
{ "name": "organizations/org_name/operations/long_running_operation_ID", "metadata": { "@type": "type.googleapis.com/google.cloud.apigee.v1.OperationMetadata", "operationType": "INSERT", "targetResourceName": "org_name", "state": "FINISHED" }, "done": true, "response": { "@type": "type.googleapis.com/google.cloud.apigee.v1.Organization", "name": "org_name", "displayName": "display_name", "description": "description", "createdAt": "1600817805771", "lastModifiedAt": "1600817805771", "properties": { "property": [ { "name": "features.hybrid.enabled", "value": "true" }, { "name": "features.mart.connect.enabled", "value": "true" } ] }, "analyticsRegion": "us-central1", "runtimeType": "HYBRID", "subscriptionType": "TRIAL" } }
Elenco organizzazioni
Per ottenere un elenco di tutte le organizzazioni a cui ha accesso il tuo account Google Cloud:
Invia una richiesta GET
(senza corpo) al seguente endpoint dell'API List organizations:
https://apigee.googleapis.com/v1/organizations
Ad esempio:
curl -H "Authorization: Bearer $TOKEN" "https://apigee.googleapis.com/v1/organizations"
La risposta alla richiesta contiene un array di tutte le organizzazioni abilitate all'utilizzo dell'ibrido a cui hai accesso, in formato JSON.
L'esempio seguente mostra una risposta con una singola organizzazione, hybrid-example
:
{ "organizations": [ { "organization": "hybrid-example", "projectIds": [ "hybrid-example" ] } ] }
Risoluzione dei problemi relativi alla creazione dell'organizzazione
Quando crei un'organizzazione con l'API per la creazione di organizzazioni, potresti visualizzare un errore la risposta corretta. Le risposte sono simili alle seguenti:
{ "error": { "code": HTTP_error_code, "message": "short_error_message", "status": "high_level_error_type", "details": [ { "@type": "specific_error_type", "detail": "expanded_error_description" } ] } }
L'esempio seguente mostra una risposta a un errore comune: l'ID organizzazione contiene caratteri illegali (i caratteri maiuscoli non sono consentiti negli ID organizzazione):
{ "error": { "code": 400, "message": "invalid Organization ID \"MY-ORG\": \"MY-ORG\" is an invalid Organization ID", "status": "INVALID_ARGUMENT", "details": [ { "@type": "", "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\" }" } ] } }
In questo caso, puoi rinominare l'organizzazione con lettere minuscole e inviare nuovamente la richiesta.
Nella tabella seguente sono elencati gli errori che potresti ricevere e le potenziali risoluzioni quando provi a creare una nuova organizzazione:
Codice di errore HTTP | Errore HTTP | Descrizione |
---|---|---|
400 |
Invalid JSON payload received |
La struttura dei dati nella richiesta contiene un errore di sintassi o il percorso all'endpoint non è corretto. |
400 |
Invalid organization ID |
L'ID organizzazione richiesto non può contenere lettere maiuscole o caratteri speciali diversi dai trattini. Deve contenere solo lettere minuscole, numeri e/o trattini. Può contenere un massimo di 32 caratteri. |
400 |
Unsupported analytics region |
Non hai specificato il valore di analyticsRegion nel
corpo della richiesta o il valore specificato non è una delle opzioni valide. |
400 |
Does not have an Apigee entitlement |
Il tuo progetto Google Cloud (che hai creato nel Passaggio 2: crea un progetto Google Cloud) non è ancora ibrido in un bucket in cui è abilitato il controllo delle versioni. Potrebbe trattarsi di un problema di fatturazione o di un altro errore relativo al tuo account Google Cloud. Per ulteriori informazioni, contatta il team di vendita Apigee. |
401 |
Request had invalid authentication credentials |
Il tuo token di autenticazione gcloud non è valido oppure è obsoleto oppure non lo hai incluso
uno nella richiesta. Genera un nuovo token e invia di nuovo l'indirizzo. |
403 |
Permission denied on resource project project_ID |
Potresti aver inviato una richiesta contenente un ID progetto o un percorso non corretto. |
403 |
Unable to retrieve project information |
L'organizzazione non è ancora stata creata o sottoposta a provisioning. Puoi inviare una richiesta all'API Operations per controllare lo stato dell'operazione a lunga esecuzione, come descritto nel passaggio 5. |
409 |
Organization already exists |
Hai provato a creare più di un'organizzazione per il progetto Google Cloud. Puoi creare soltanto un'organizzazione per progetto. |
409 |
Org proposed_org_name already exists |
Hai provato a creare un'organizzazione che ha lo stesso ID di un'organizzazione che ha già esiste già. Gli ID organizzazione devono essere univoci per tutti i clienti ibride. Invia nuovamente con un nuovo ID organizzazione proposto; ad esempio, accoda un valore numerico alla fine dell'ID precedente che hai provato. |