Langkah 4: Buat organisasi

Anda telah membuat akun dan project Google Cloud serta mengaktifkan API. Sekarang Anda dapat membuat organisasi.

Prasyarat

Untuk membuat organisasi, Anda harus memenuhi salah satu ketentuan berikut:

  • Memiliki akun evaluasi. Akun evaluasi akan habis masa berlakunya setelah 60 hari. Pada saat itu, organisasi akan dihapus.
  • Memiliki akun berbayar

Jika kedua hal tersebut tidak benar, Anda harus menghubungi Bagian Penjualan Apigee sebelum dapat melanjutkan.

Untuk membuat dan menyediakan organisasi baru:

  1. Pada command line, dapatkan kredensial autentikasi gcloud, seperti yang ditunjukkan contoh berikut:

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

    Untuk memeriksa apakah token Anda sudah diisi, gunakan echo, seperti yang ditunjukkan contoh berikut:

    echo $TOKEN

    Ini akan menampilkan token Anda sebagai string yang dienkode.

    Untuk mengetahui informasi selengkapnya, baca ringkasan alat command line gcloud.

  2. Kirim permintaan POST yang diautentikasi ke Create organizations API.

    Contoh berikut menunjukkan struktur permintaan yang membuat organisasi:

    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"

    Dengan keterangan:

    • (Wajib) proposed_org_ID adalah ID terprogram yang Anda inginkan untuk organisasi yang mendukung hybrid. Misalnya, my-hybrid-org.

      Apigee menyarankan Anda untuk menggunakan ID yang sama dengan ID project Google Cloud yang Anda buat di Langkah 2: Buat project Google Cloud, tetapi Anda dapat menggunakan ID lain jika mau.

    • (Wajib) runtime_type adalah jenis runtime organisasi Apigee, dengan HYBRID adalah runtime hybrid Apigee yang dikelola pengguna.
    • (Wajib) analytics_region adalah region utama untuk penyimpanan data analisis. Pilih salah satu opsi berikut:
      asia-northeast1 australia-southeast1 us-west1
      us-central1 us-east1 europe-west1
      europe-west2

      Kami memberikan opsi ini agar Anda dapat memilih region yang berdekatan secara geografis atau jika organisasi Anda memiliki persyaratan penyimpanan lainnya.

    • (Wajib) project_ID adalah project Google Cloud yang ingin Anda kaitkan ke organisasi baru yang mendukung hybrid. Ini adalah ID yang dibuat Google untuk Anda pada Langkah 2: Buat project Google Cloud.
    • (Opsional) display_name adalah nama organisasi Anda yang mudah digunakan. Nilai ini tidak harus unik, dan dapat berisi spasi serta karakter khusus. Misalnya, "Organisasi Hybrid Saya".
    • (Opsional) organization_description adalah informasi tentang organisasi yang ingin Anda gunakan sebagai pengingat tujuannya. Misalnya, "Organisasi pertama saya".

    Pada permintaan pembuatan yang berhasil, Organization API harus merespons dengan pesan yang serupa berikut:

    {
      "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"
      }
    }

    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 nanti).
    • organization_ID adalah ID organisasi baru Anda yang sedang dibuat.

    Seperti yang ditunjukkan oleh properti state dalam respons, Apigee sudah mulai membuat organisasi baru, sehingga statusnya adalah IN_PROGRESS. Proses ini dapat memerlukan waktu beberapa menit.

    Jika terjadi error, lihat Memecahkan masalah pembuatan organisasi.

  3. Anda dapat memeriksa status operasi yang berjalan lama yang ID-nya ditampilkan Apigee pada permintaan pembuatan awal. Untuk melakukannya, gunakan Operations API, seperti yang ditunjukkan contoh berikut:
    curl -H "Authorization: Bearer $TOKEN" \
      "https://apigee.googleapis.com/v1/organizations/organization_ID/operations/long_running_operation_ID"

    Contoh berikut menunjukkan kemungkinan respons untuk permintaan ini:

    SELESAI

    Setelah organisasi telah disediakan, status operasi yang berjalan lama adalah FINISHED, seperti yang ditunjukkan contoh berikut:

    {
        "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",
    
            }
          }
        ]
      }

    Jika Anda tidak memasukkan deskripsi, kolom tersebut tidak akan muncul dalam respons.

    Selamat! Anda telah membuat organisasi baru dan organisasi tersebut siap digunakan. Anda dapat melanjutkan ke Langkah 5: Tambahkan lingkungan.

    IN_PROGRESS

    Jika Apigee masih membuat organisasi, Apigee akan merespons dengan status IN_PROGRESS, seperti yang ditampilkan dalam contoh berikut:

    {
        "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"
        }
      }

    Sebaiknya tunggu lebih lama sebelum mencoba memverifikasi bahwa proses pembuatan telah selesai.

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"
      }
    ]
  }
}

Contoh berikut menunjukkan respons terhadap error umum—ID organisasi berisi karakter ilegal (karakter huruf besar tidak diizinkan di ID organisasi):

{
  "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\" }"
      }
    ]
  }
}

Dalam hal ini, Anda dapat mengganti nama organisasi dengan huruf kecil dan mengirim ulang permintaan.

Tabel berikut berisi daftar error yang mungkin Anda terima dan potensi penyelesaiannya saat Anda mencoba membuat organisasi baru:

Kode Error HTTP Kesalahan 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 ini hanya boleh berisi huruf kecil, angka, dan/atau tanda hubung. Deskripsi dapat berisi 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: Buat project Google Cloud) belum diaktifkan secara hybrid. Hal ini dapat menunjukkan adanya masalah pada penagihan Anda atau error lain yang terkait dengan akun Google Cloud Anda. Untuk mengetahui informasi selengkapnya, hubungi Bagian Penjualan Apigee.
401 Request had invalid authentication credentials Token autentikasi gcloud Anda buruk atau sudah tidak berlaku, atau Anda tidak menyertakannya dalam permintaan. Buat token baru dan kirim ulang alamat tersebut.
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 mengajukan permintaan ke Operations API untuk memeriksa status operasi yang berjalan lama, seperti yang dijelaskan dalam prosedur di atas.
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_organization_ID already exists Anda mencoba membuat organisasi yang memiliki ID yang sama dengan yang sudah ada. ID organisasi harus unik di seluruh pelanggan hybrid. Kirim ulang dengan ID organisasi baru yang diusulkan; misalnya, tambahkan nilai numerik ke akhir ID sebelumnya yang telah Anda coba.

Mendapatkan informasi organisasi

Anda bisa mendapatkan daftar semua organisasi yang dapat diakses akun Anda, atau Anda bisa mendapatkan detail tentang organisasi tertentu berdasarkan ID-nya. Untuk melakukan tindakan ini, gunakan organizations API.

Membuat daftar organisasi

Untuk mendapatkan daftar semua organisasi:

Kirim permintaan GET (tanpa isi) ke endpoint List organizations API berikut:

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

Contoh:

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

Respons terhadap permintaan Anda berisi array dari semua organisasi yang mendukung hybrid yang dapat Anda akses, dalam format JSON.

Contoh berikut menunjukkan respons dengan satu organisasi, "my-org-42":

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

Lihat detail

Untuk mendapatkan detail tentang satu organisasi:

Kirim permintaan GET (tanpa isi) ke endpoint Get organizations API berikut:

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

Contoh berikut mendapatkan detail tentang organisasi "my-org-42":

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

Respons terhadap permintaan Anda berisi detail tentang organisasi yang ditentukan dalam format JSON.

Contoh berikut menunjukkan respons dengan detail tentang organisasi "my-org-42":

{
  "name": "my-org-42",
  "createdAt": "1572550611",
  "lastModifiedAt": "1572550611",
  "environments": [
    "my-environment"
  ],
  "analyticsRegion": "us-east1"
}
1 2 3 4 (NEXT) Langkah 5: Tambahkan lingkungan