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 delle due condizioni è vera, devi contattare il team di vendite di Apigee prima di poter continuare.
Per creare una nuova organizzazione e eseguirne il provisioning:
-
Nella riga di comando, recupera 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
Dovrebbe essere visualizzato il token come stringa codificata.
Per saperne di più, consulta la panoramica dello strumento a riga di comando gcloud.
- Invia una richiesta
POSTautenticata all'API Create organizations.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":"display_name", "description":"organization_description", "runtimeType":"runtime_type", "analyticsRegion":"analytics_region" }' \ "https://apigee.googleapis.com/v1/organizations?parent=projects/project_ID"Dove:
- (Obbligatorio) org_name è l'ID programmatico
che vuoi per la tua organizzazione con funzionalità ibride. L'ID organizzazione deve corrispondere all'ID progetto Google Cloud che hai creato nel passaggio 2: crea un progetto Google Cloud. Ad esempio:
hybrid-42. - (Obbligatorio) runtime_type è il tipo di runtime dell'organizzazione Apigee, dove HYBRID è il runtime Apigee hybrid gestito dall'utente.
- (Obbligatorio) analytics_region è la regione principale per
l'archiviazione dei dati di analisi. Scegli una delle opzioni seguenti:
asia-northeast1australia-southeast1us-west1us-central1us-east1europe-west1europe-west2Offriamo questa opzione per consentirti di scegliere una regione geograficamente vicina o se la tua organizzazione ha altri requisiti di archiviazione.
- (Obbligatorio) project_ID è il progetto Google Cloud che vuoi associare alla tua nuova organizzazione ibrida. Si tratta dell'ID generato da Google nel passaggio 2: crea un progetto Google Cloud.
- (Facoltativo) display_name è il nome intuitivo della tua organizzazione. Questo valore non deve essere univoco e può includere spazi e caratteri speciali. Ad esempio, "La mia organizzazione ibrida".
- (Facoltativo) organization_description sono informazioni sull'organizzazione che vuoi utilizzare come promemoria del suo scopo. Ad esempio, "La mia prima organizzazione".
In una richiesta di creazione riuscita, l'API Organizations dovrebbe rispondere con un messaggio simile al seguente:
{ "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" } }
Dove:
- long_running_operation_ID è l'UUID di un'operazione asincrona a lunga esecuzione. Puoi utilizzare questo ID per controllare lo stato della richiesta di creazione dell'organizzazione (descritta in seguito).
- organization_ID è l'ID della nuova organizzazione in fase di creazione.
Come indicato dalla proprietà
statenella risposta, Apigee ha iniziato a creare la nuova organizzazione, quindi il suo stato èIN_PROGRESS. Questa procedura può richiedere alcuni minuti.Se viene visualizzato un messaggio di errore, consulta Risoluzione dei problemi di creazione dell'organizzazione.
- (Obbligatorio) org_name è l'ID programmatico
che vuoi per la tua organizzazione con funzionalità ibride. L'ID organizzazione deve corrispondere all'ID progetto Google Cloud che hai creato nel passaggio 2: crea un progetto Google Cloud. Ad esempio:
- Puoi controllare lo stato delloperazione a lunga esecuzione il cui ID è stato restituito da Apigee nella
richiesta di creazione iniziale. Per farlo, utilizza l'API Operations, come mostrato nel seguente esempio:
curl -H "Authorization: Bearer $TOKEN" \ "https://apigee.googleapis.com/v1/organizations/organization_ID/operations/long_running_operation_ID"
I seguenti esempi mostrano le possibili risposte a questa richiesta:
TERMINATO
Quando l'organizzazione è stata sottoposta al provisioning, lo stato delloperazione a lunga esecuzione è
FINISHED, come mostrato nell'esempio seguente:{ "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 non hai inserito una descrizione, il campo non verrà visualizzato nella risposta.
Complimenti! Hai creato una nuova organizzazione ed è pronta per l'uso. Puoi continuare con il passaggio 5: aggiunta di un ambiente.
IN_PROGRESS
Se Apigee sta ancora creando l'organizzazione, risponde con lo stato
IN_PROGRESS, come mostrato nell'esempio seguente:{ "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" } }
Ti consigliamo di attendere ancora un po' prima di tentare di verificare che la procedura di creazione sia completata.
Risoluzione dei problemi relativi alla creazione dell'organizzazione
Quando crei un'organizzazione con l'API Create organizations, potresti ricevere una risposta di errore. 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 non validi (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": "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\" }" } ] } }
In questo caso, puoi rinominare l'organizzazione con lettere minuscole e inviare di nuovo la richiesta.
La seguente tabella elenca gli errori che potresti ricevere e le possibili soluzioni quando provi a creare una nuova organizzazione:
| Codice 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 che richiedi 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 oppure il valore specificato non è una delle opzioni valide. |
400 |
Does not have an Apigee entitlement |
Il progetto Google Cloud (che hai creato nel passaggio 2: crea un progetto Google Cloud) non è ancora stato abilitato per l'ibrido. 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 di Apigee. |
401 |
Request had invalid authentication credentials |
Il token di autenticazione gcloud non è valido o è obsoleto oppure non ne 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 errato. |
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 nella procedura precedente. |
409 |
Organization already exists |
Hai provato a creare più di un'organizzazione per il progetto Google Cloud. Puoi creare una sola organizzazione per progetto. |
409 |
Org proposed_organization_ID already exists |
Hai tentato di creare un'organizzazione con lo stesso ID di una già esistente. Gli ID organizzazione devono essere univoci per tutti i clienti ibridi. Invia di nuovo con un nuovo ID organizzazione proposto, ad esempio aggiungendo un valore numerico alla fine dell'ID precedente che hai provato. |
Recuperare le informazioni sull'organizzazione
Puoi ottenere un elenco di tutte le organizzazioni a cui il tuo account ha accesso oppure puoi ottenere i dettagli di un'organizzazione specifica tramite il relativo ID. Per eseguire queste azioni, utilizza l'API Organizations.
Elenco delle organizzazioni
Per ottenere un elenco di tutte le organizzazioni:
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 tua richiesta contiene un array di tutte le organizzazioni con abilitazione ibrida a cui hai accesso, in formato JSON.
L'esempio seguente mostra una risposta con una singola organizzazione, "my-org-42":
{
"organizations": [
{
"organization": "my-org-42",
"projectIds": [
"my-project"
]
}
]
}Scopri i dettagli
Per visualizzare i dettagli di una singola organizzazione:
Invia una richiesta GET (senza corpo) al seguente endpoint dell'API Get organizations:
https://apigee.googleapis.com/v1/organizations/organization_ID
Il seguente esempio recupera i dettagli dell'organizzazione "my-org-42":
curl -H "Authorization: Bearer $TOKEN" "https://apigee.googleapis.com/v1/organizations/my-org-42"
La risposta alla tua richiesta contiene dettagli sull'organizzazione specificata in formato JSON.
Il seguente esempio mostra una risposta con i dettagli dell'organizzazione "my-org-42":
{
"name": "my-org-42",
"createdAt": "1572550611",
"lastModifiedAt": "1572550611",
"environments": [
"my-environment"
],
"analyticsRegion": "us-east1"
}