Pada langkah ini, Anda akan membuat organisasi Apigee.
Untuk membuat organisasi baru dan menyediakannya:
-
Di command line, dapatkan kredensial autentikasi
gcloud
menggunakan perintah berikut:Linux / MacOS
export TOKEN=$(gcloud auth print-access-token)
Untuk memeriksa apakah token Anda telah diisi, gunakan
echo
, seperti yang ditunjukkan dalam contoh berikut:echo $TOKEN
Tindakan ini akan menampilkan token Anda sebagai string yang dienkode.
Windows
for /f "tokens=*" %a in ('gcloud auth print-access-token') do set TOKEN=%a
Untuk memeriksa apakah token Anda telah diisi, gunakan
echo
, seperti yang ditunjukkan dalam contoh berikut:echo %TOKEN%
Tindakan ini akan menampilkan token Anda sebagai string yang dienkode.
-
Pada Langkah 1, Anda telah membuat variabel lingkungan
PROJECT_ID
. Tambahkan variabel lingkungan berikut. Pilih tab yang sesuai dengan jenis organisasi yang Anda perlukan: Tanpa residensi data atau dengan Residensi data:Tidak ada residensi data
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
Dengan keterangan:
ORG_NAME
(Wajib): Nilai ini harus cocok denganPROJECT_ID
.ANALYTICS_REGION
(Wajib): Region utama untuk penyimpanan data analisis. Untuk mengetahui daftar region Analisis API Apigee yang tersedia, lihat Lokasi Apigee.-
RUNTIMETYPE
(Wajib): Harus ditetapkan keHYBRID
.
Residensi data
Linux / MacOS
export ORG_NAME=$PROJECT_ID
export ANALYTICS_REGION="ANALYTICS_REGION"
export RUNTIMETYPE=HYBRID
export CONTROL_PLANE_LOCATION="YOUR_CONTROL_PLANE_LOCATION"
export CONSUMER_DATA_REGION="YOUR_CONSUMER_DATA_REGION"
export BILLING_TYPE="SUBSCRIPTION"
Windows
set ORG_NAME=$PROJECT_ID
set ANALYTICS_REGION="ANALYTICS_REGION"
set RUNTIMETYPE=HYBRID
set CONTROL_PLANE_LOCATION="YOUR_CONTROL_PLANE_LOCATION"
set CONSUMER_DATA_REGION="YOUR_CONSUMER_DATA_REGION"
set BILLING_TYPE="SUBSCRIPTION"
Dengan keterangan:
ORG_NAME
: Nilai ini harus cocok denganPROJECT_ID
.ANALYTICS_REGION
: Region utama untuk penyimpanan data analisis. Untuk mengetahui daftar region Analisis API Apigee yang tersedia, lihat Lokasi Apigee.-
RUNTIMETYPE
: Harus ditetapkan keHYBRID
. CONTROL_PLANE_LOCATION
: Lokasi tempat konten inti pelanggan seperti paket proxy disimpan. Untuk mengetahui daftarnya, lihat Region bidang kontrol Apigee API yang tersedia.CONSUMER_DATA_REGION
: Sub-region dari region bidang kontrol. Anda harus menentukanCONTROL_PLANE_LOCATION
danCONSUMER_DATA_REGION
. Untuk mengetahui daftar region data konsumen yang tersedia, lihat Lokasi Apigee.BILLING_TYPE
: Harus ditetapkan ke"SUBSCRIPTION"
. Ini adalah jenis penagihan untuk organisasi Apigee Hybrid Anda. Lihat Hak langganan untuk mengetahui informasi selengkapnya.
Contoh:
export ORG_NAME=$PROJECT_ID
export ANALYTICS_REGION="us-west1"
export RUNTIMETYPE=HYBRID
export CONSUMER_DATA_REGION="us-west1"
export CONTROL_PLANE_LOCATION="us"
export BILLING_TYPE="SUBSCRIPTION"
- Panggil Apigee API berikut untuk membuat organisasi:
Tidak ada residensi data
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"
Residensi data
curl -H "Authorization: Bearer $TOKEN" -X POST -H "content-type:application/json" \ -d '{ "name":"'"$ORG_NAME"'", "billingType":"'"$BILLING_TYPE"'", "runtimeType":"'"$RUNTIMETYPE"'", "apiConsumerDataLocation":"'"$CONSUMER_DATA_REGION"'", "analyticsRegion":"'"$ANALYTICS_REGION"'" }' \ "https://$CONTROL_PLANE_LOCATION-apigee.googleapis.com/v1/organizations?parent=projects/$PROJECT_ID"
Jika permintaan pembuatan berhasil, API organisasi akan merespons dengan pesan yang mirip dengan berikut:
{ "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" } }
Dengan keterangan:
- LONG_RUNNING_OPERATION_ID adalah UUID dari operasi asinkron yang berjalan lama. Anda dapat menggunakan ID ini untuk memeriksa status permintaan pembuatan organisasi (dijelaskan di langkah 5).
- org_name adalah ID organisasi baru Anda yang saat ini sedang dibuat.
Seperti yang ditunjukkan properti
state
dalam respons, Apigee telah mulai membuat organisasi baru, sehingga statusnya adalahIN_PROGRESS
. Proses ini dapat memerlukan waktu beberapa menit.Jika Anda mendapatkan error, lihat Memecahkan masalah pembuatan organisasi.
- Simpan ID operasi yang berjalan lama ke variabel lingkungan.
Hal ini akan berguna untuk tugas pengelolaan di masa mendatang.
Sintaks
export LONG_RUNNING_OPERATION_ID=LONG_RUNNING_OPERATION_ID
Contoh
export LONG_RUNNING_OPERATION_ID=6abc8a72-46de-f9da-bcfe-70d9ab347e4f
- Anda dapat memeriksa status operasi yang berjalan lama yang ID-nya ditampilkan oleh
permintaan pembuatan. Untuk melakukannya, gunakan API operasi. Misalnya:
Tidak ada residensi data
curl -H "Authorization: Bearer $TOKEN" \ "https://apigee.googleapis.com/v1/organizations/$ORG_NAME/operations/$LONG_RUNNING_OPERATION_ID"
Contoh berikut menunjukkan kemungkinan respons terhadap permintaan ini:
IN_PROGRESS
Jika Apigee masih membuat organisasi, Apigee akan merespons dengan status
IN_PROGRESS
. Contoh:{ "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" } }
Anda harus menunggu sedikit lebih lama sebelum mencoba memverifikasi bahwa proses pembuatan telah selesai.
SELESAI
Setelah organisasi disediakan, status operasi yang berjalan lama adalah
FINISHED
. Contoh:{ "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": {} } } }
Residensi data
curl -H "Authorization: Bearer $TOKEN" \ "https://$CONTROL_PLANE_LOCATION-apigee.googleapis.com/v1/organizations/$ORG_NAME/operations/$LONG_RUNNING_OPERATION_ID"
Contoh berikut menunjukkan kemungkinan respons terhadap permintaan ini:
IN_PROGRESS
Jika Apigee masih membuat organisasi, Apigee akan merespons dengan status
IN_PROGRESS
. Contoh:{ "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" } }
Anda harus menunggu sedikit lebih lama sebelum mencoba memverifikasi bahwa proses pembuatan telah selesai.
SELESAI
Setelah organisasi disediakan, status operasi yang berjalan lama adalah
FINISHED
. Contoh:{ "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": "SUBSCRIPTION", "apiConsumerDataLocation": "CONSUMER_DATA_REGION", "expiresAt": "1631421073171", "addonsConfig": { "advancedApiOpsConfig": {}, "integrationConfig": {}, "monetizationConfig": {} } } }
- Anda dapat menggunakan API organisasi Apigee untuk mengambil informasi tentang organisasi setelah
dibuat.
Contoh:
Tidak ada residensi data
curl -H "Authorization: Bearer $TOKEN" \ "https://apigee.googleapis.com/v1/organizations/$ORG_NAME"
Respons terhadap permintaan Anda berisi detail tentang organisasi yang ditentukan dalam format 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": "PAID", "projectId": "apigee-example", "state": "ACTIVE", "billingType": "SUBSCRIPTION", "expiresAt": "1631421073171", "addonsConfig": { "advancedApiOpsConfig": {}, "integrationConfig": {}, "monetizationConfig": {} } }
Residensi data
curl -H "Authorization: Bearer $TOKEN" \ "https://$CONTROL_PLANE_LOCATION-apigee.googleapis.com/v1/organizations/$ORG_NAME"
Respons terhadap permintaan Anda berisi detail tentang organisasi yang ditentukan dalam format 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": "PAID", "projectId": "apigee-example", "state": "ACTIVE", "billingType": "SUBSCRIPTION", "expiresAt": "1631421073171", "addonsConfig": { "advancedApiOpsConfig": {}, "integrationConfig": {}, "monetizationConfig": {} } }
Memecahkan masalah pembuatan organisasi
Saat membuat organisasi dengan Create organizations API, Anda mungkin mendapatkan respons error. Responsnya akan terlihat seperti berikut:
{ "error": { "code": HTTP_error_code, "message": "short_error_message", "status": "high_level_error_type", "details": [ { "@type": "specific_error_type", "detail": "expanded_error_description" } ] } }
Tabel berikut mencantumkan error yang mungkin Anda terima dan kemungkinan penyelesaian saat mencoba membuat organisasi baru:
Kode Error HTTP | Error HTTP | Deskripsi |
---|---|---|
400 |
Invalid JSON payload received |
Struktur data dalam permintaan Anda berisi error sintaksis atau jalur ke endpoint salah. |
400 |
Invalid organization ID |
ID organisasi yang Anda minta tidak boleh berisi huruf besar atau karakter khusus selain tanda hubung. Nama hanya boleh berisi huruf kecil, angka, dan/atau tanda hubung. Panjangnya dapat mencapai maksimum 32 karakter. |
400 |
Unsupported analytics region |
Anda tidak menentukan nilai analyticsRegion dalam
isi permintaan, atau nilai yang Anda tentukan bukan salah satu opsi yang valid. |
400 |
Does not have an Apigee entitlement |
Project Google Cloud Anda (yang Anda buat di Langkah 2: Membuat project Google Cloud) belum diaktifkan secara hybrid. Hal ini dapat menunjukkan masalah pada penagihan atau beberapa error lainnya yang terkait dengan akun Google Cloud Anda. Untuk informasi selengkapnya, hubungi Penjualan Apigee. |
400 |
'global' violates constraint in constraints/gcp.resourceLocations
on the resource projects/PROJECT_ID, Control Plane Region |
Anda mencoba membuat organisasi yang mungkin tidak berhak mendapatkan langganan PAID. Organisasi Apigee Hybrid jenis EVAL tidak mendukung Residensi Data. |
400 |
runtimeType HYBRID is not supported for PAYG_V2, use CLOUD instead: invalid argument |
Anda mencoba membuat organisasi di project dengan hak "Bayar Sesuai Penggunaan" (PAYG). Hubungi perwakilan akun Google Cloud Anda jika ada pertanyaan tentang hak organisasi. |
401 |
Request had invalid authentication credentials |
Token autentikasi gcloud Anda buruk atau sudah tidak berlaku, atau Anda tidak menyertakan
token dalam permintaan. Buat token baru dan kirim ulang alamat. |
403 |
Permission denied on resource project PROJECT_ID |
Anda mungkin telah mengirim permintaan yang berisi project ID atau jalur yang salah. |
403 |
Unable to retrieve project information |
Organisasi belum dibuat atau disediakan. Anda dapat mengirimkan permintaan ke Operations API untuk memeriksa status operasi yang berjalan lama, seperti yang dijelaskan di langkah 5. |
403 |
Permission denied on resource project organizations/PROJECT_ID/deployedIngressConfig |
Anda mencoba membuat organisasi, tetapi organisasi tersebut tidak memiliki hak yang benar. Hubungi perwakilan akun Google Cloud Anda jika ada pertanyaan tentang hak organisasi. |
409 |
Organization already exists |
Anda mencoba membuat lebih dari satu organisasi untuk project Google Cloud. Anda hanya dapat membuat satu organisasi per project. |
409 |
Org PROPOSED_ORG_NAME already exists |
Anda mencoba membuat organisasi yang memiliki ID yang sama dengan organisasi yang sudah ada. ID organisasi harus unik di seluruh pelanggan campuran. Kirim ulang dengan ID organisasi baru yang diusulkan; misalnya, tambahkan nilai numerik ke akhir ID sebelumnya yang Anda coba. |
Langkah berikutnya
Buka Langkah 3: Buat grup lingkungan.