Langkah 4: Buat organisasi

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

Prasyarat

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

  • Memiliki akun Google Cloud. Secara default, akun Google Cloud akan memungkinkan Anda membuat evaluasi organisasi Apigee. Organisasi evaluasi akan habis masa berlakunya setelah 60 hari. Pada saat itu, organisasi akan dihapus.
  • Memiliki akun Google Cloud dan langganan Apigee berbayar yang diaktifkan dalam Google Cloud Anda Project dan Akun Penagihan. Langganan berbayar memungkinkan Anda membuat Apigee yang lengkap dan skalabel implementasi yang tepat. Hubungi Penjualan Apigee untuk membeli akun berbayar dan memiliki langganan mengaktifkan pembuatan versi.

Untuk membuat organisasi baru dan menyediakannya:

  1. Di command line, dapatkan autentikasi gcloud menggunakan perintah berikut:

    Linux / MacOS

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

    Untuk memeriksa apakah token Anda telah diisi, gunakan echo, sebagai contoh berikut menunjukkan:

    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, sebagai contoh berikut menunjukkan:

    echo %TOKEN%

    Tindakan ini akan menampilkan token Anda sebagai string yang dienkode.

  2. Pastikan Anda memiliki variabel lingkungan yang diperlukan yang ditentukan dengan perintah berikut:
    echo ${PROJECT_ID}
    echo ${ORG_NAME}
    echo ${ORG_DISPLAY_NAME}
    echo ${ORGANIZATION_DESCRIPTION}
    echo ${ANALYTICS_REGION}
    echo ${RUNTIMETYPE}

    Jika Anda perlu, buat atau definisikan ulang variabel lingkungan berikut untuk elemen organisasi/pengaturan. Anda akan menggunakannya dalam perintah untuk membuat organisasi.

    • PROJECT_ID (Wajib) adalah project Google Cloud yang Anda inginkan terikat dengan organisasi baru Anda yang mendukung hybrid. Ini adalah ID yang dibuat Google untuk Anda di Langkah 2: Buat project Google Cloud.
      export PROJECT_ID=your_project_id

      Nama project ID dengan tanda titik

    • ORG_NAME (Wajib) adalah ID terprogram sesuai keinginan untuk organisasi yang mendukung hybrid.
      export ORG_NAME=$PROJECT_ID
    • ORG_DISPLAY_NAME (Opsional) adalah nama yang mudah digunakan untuk organisasi/pengaturan. Nilai ini tidak harus unik, dan dapat berisi spasi serta khusus karakter. Misalnya, "Organisasi Hybrid Saya".
      ORG_DISPLAY_NAME="friendly_name"

      Konten nama variabel yang berisi spasi harus diapit dalam tanda kutip ganda. Misalnya: "Organisasi Saya"

    • ORGANIZATION_DESCRIPTION (Opsional) adalah informasi tentang organisasi yang ingin Anda gunakan sebagai pengingat tujuannya. Misalnya, "Pesan pertama saya organisasi".
      ORGANIZATION_DESCRIPTION="description_text"
    • ANALYTICS_REGION (Wajib) adalah region utama untuk penyimpanan data Analytics.
      export ANALYTICS_REGION=analytics_region

      Dengan analytics_region adalah salah satu dari yang berikut:

      asia-northeast1 asia-south1 asia-east1 asia-southeast1
      australia-southeast1 us-central1 us-east1 us-west1
      asia-southeast2 europe-west1 europe-west2

      Pilih wilayah yang dekat secara geografis atau wilayah yang memenuhi persyaratan penyimpanan organisasi Anda.

    • RUNTIMETYPE (Wajib) adalah jenis runtime organisasi Apigee, dengan HYBRID adalah runtime hybrid Apigee yang dikelola pengguna.
      export RUNTIMETYPE=HYBRID
  3. 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":"'"$ORG_NAME"'",
        "displayName":"'"$ORG_DISPLAY_NAME"'",
        "description":"'"$ORGANIZATION_DESCRIPTION"'",
        "runtimeType":"'"$RUNTIMETYPE"'",
        "analyticsRegion":"'"$ANALYTICS_REGION"'"
      }' \
      "https://apigee.googleapis.com/v1/organizations?parent=projects/$PROJECT_ID"

    Jika permintaan pembuatan yang berhasil, API organisasi harus merespons dengan pesan yang serupa menjadi sebagai 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 asinkron yang berjalan lama operasi. Anda dapat menggunakan ID ini untuk memeriksa status permintaan pembuatan organisasi Anda (dijelaskan di langkah 5).
    • org_name adalah ID organisasi baru Anda yang saat ini dibuat.

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

    Jika terjadi error, lihat Memecahkan masalah pembuatan organisasi.

  4. Simpan ID operasi yang berjalan lama ke variabel lingkungan. 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
  5. Anda dapat memeriksa status operasi yang berjalan lama dengan ID Apigee yang ditampilkan di permintaan pembuatan awal. Untuk melakukannya, gunakan API operasi. Contoh:
    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 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 sudah lengkap.

    SELESAI

    Setelah organisasi disediakan, status operasi yang berjalan lama 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",
        "displayName": "ORG_DISPLAY_NAME",
        "description": "ORGANIZATION_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": {}
        }
      }
    }
    

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

Lihat detail organisasi

Anda dapat melihat detail metadata untuk organisasi yang Anda buat menggunakan Apigee API. Anda dapat menggunakan API untuk menampilkan daftar semua organisasi yang aksesnya dimiliki akun Google Cloud Anda. Untuk melakukan tindakan ini, gunakan organizations API.

Sebelum mencoba API, refresh token otorisasi Anda:

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

Dapatkan detail organisasi

Untuk mendapatkan detail tentang satu organisasi:

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

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

Contoh berikut mendapatkan detail tentang organisasi $ORG_NAME: Dalam contoh ini $ORG_NAME ditetapkan ke "apigee-example".

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

Respons atas permintaan Anda berisi detail tentang organisasi yang ditentukan di JSON format font.

Contoh berikut menunjukkan respons dengan detail tentang organisasi apigee-example:

{
  "name": "apigee-example",
  "displayName": "apigee-example-org",
  "description": "Apigee Example Org",
  "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": "TRIAL",
  "projectId": "apigee-example",
  "state": "ACTIVE",
  "billingType": "EVALUATION",
  "expiresAt": "1631421073171",
  "addonsConfig": {
    "advancedApiOpsConfig": {},
    "integrationConfig": {},
    "monetizationConfig": {}
  }
}

Mencantumkan org

Untuk mendapatkan daftar semua organisasi yang dapat diakses oleh akun Google Cloud Anda:

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

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

Contoh:

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

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

Contoh berikut menunjukkan respons dengan satu organisasi, apigee-example:

{
  "organizations": [
    {
      "organization": "apigee-example",
      "projectIds": [
        "apigee-example"
      ]
    },
    {
      "organization": "apigee-example-2",
      "projectIds": [
        "apigee-example-2"
      ]
    }
  ]
}

Memecahkan masalah pembuatan organisasi

Saat membuat organisasi menggunakan Create organizations API, Anda mungkin mengalami error yang dihasilkan. Respons 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 terlarang (karakter huruf besar tidak diizinkan dalam ID organisasi):

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

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

Tabel berikut mencantumkan error yang mungkin Anda terima dan kemungkinan penyelesaiannya saat Anda 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. Hanya boleh berisi huruf kecil, angka, dan/atau tanda hubung. Deskripsi dapat berisi hingga 32 karakter.
400 Unsupported analytics region Anda juga tidak menentukan nilai analyticsRegion di 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 bersifat hybrid mengaktifkan pembuatan versi. Hal ini dapat menunjukkan adanya masalah pada penagihan Anda atau error lainnya yang terkait dengan akun Google Cloud Anda. Untuk informasi selengkapnya, hubungi Penjualan Apigee.
401 Request had invalid authentication credentials Token autentikasi gcloud Anda buruk atau sudah tidak berlaku, atau Anda tidak menyertakannya satu 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 untuk Operations API untuk memeriksa status operasi yang berjalan lama, seperti yang dijelaskan di langkah 5.
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 sudah ada. ID organisasi harus unik di semua pelanggan hybrid. Kirim ulang dengan ID organisasi baru yang diusulkan; misalnya, tambahkan nilai numerik ke akhir ID sebelumnya yang sudah Anda coba.
1 2 3 4 (BERIKUTNYA) Langkah 5: Membuat grup lingkungan