Membuat bus untuk merutekan pesan

Bus Eventarc Advanced memungkinkan Anda memusatkan, memantau, dan melacak alur pesan melalui sistem Anda, serta bertindak sebagai router. Penerima ini menerima peristiwa dari sumber pesan atau yang dipublikasikan oleh penyedia, dan mengevaluasinya sesuai dengan pendaftaran. Pendaftaran mengidentifikasi langganan ke bus tertentu, dan menentukan kriteria pencocokan untuk pesan, sehingga pesan tersebut dirutekan dengan tepat. Untuk mengetahui informasi selengkapnya, lihat Membuat pendaftaran untuk menerima peristiwa.

Bus dapat digunakan oleh penyedia dan tujuan acara dalam project Anda atau dalam project lain. Untuk mengetahui informasi selengkapnya, lihat Tata letak project.

Peran yang diperlukan

Peran Identity and Access Management (IAM) berisi serangkaian izin yang memungkinkan Anda melakukan tindakan tertentu pada resource Google Cloud . Peran dan izin berikut diperlukan saat membuat bus untuk merutekan pesan:

  • Untuk mendapatkan izin yang diperlukan untuk membuat bus, minta administrator Anda untuk memberi Anda peran IAM Eventarc Admin (roles/eventarc.admin) atau Eventarc Message Bus Admin (roles/eventarc.messageBusAdmin) di project bus Anda. Peran bawaan ini berisi izin eventarc.messageBuses.create, yang diperlukan untuk membuat bus.
  • Untuk mendapatkan izin yang diperlukan untuk menggunakan bus, minta administrator Anda untuk memberi Anda peran IAM Pengguna Bus Pesan Eventarc (roles/eventarc.messageBusUser) di project bus Anda. Peran bawaan ini berisi izin eventarc.buses.use, yang diperlukan untuk menggunakan bus.
  • Untuk membuat pipeline dan pendaftaran, izin tambahan diperlukan. Untuk mengetahui informasi selengkapnya, lihat peran yang diperlukan saat membuat pendaftaran.

Untuk mengetahui informasi selengkapnya tentang cara memberikan peran, lihat Mengelola akses. Anda mungkin juga bisa mendapatkan izin ini dengan peran khusus atau peran bawaan lainnya.

Buat bus

Anda dapat membuat bus dengan cara berikut:

  • Di Google Cloud console
  • Dengan menggunakan Google Cloud CLI di terminal atau Cloud Shell
  • Dengan mengirim permintaan ke Eventarc API

Konsol

  1. Di konsol Google Cloud , buka halaman Eventarc > Bus.

    Buka Bus

  2. Klik Create bus.

  3. Di halaman Create a bus, lakukan hal berikut:

    1. Masukkan Nama bus. Ini adalah ID untuk bus Anda.
    2. Opsional: Masukkan Nama tampilan bus yang ditampilkan di halaman Detail bus.
    3. Di daftar Region, pilih region yang didukung untuk men-deploy bus Anda.
    4. Dalam daftar Tingkat keparahan log, pilih tingkat keparahan minimum untuk peristiwa yang dijelaskan dalam entri log. Defaultnya adalah Tidak ada. Untuk mengetahui informasi selengkapnya, lihat LogSeverity.
    5. Untuk Encryption, terima Google-managed encryption key default atau pilih Cloud KMS key. Untuk mengetahui informasi selengkapnya, lihat Menggunakan kunci enkripsi yang dikelola pelanggan (CMEK).
    6. Jika Anda memilih Kunci Cloud KMS, lakukan hal berikut:

      1. Dalam daftar Key type, pilih metode untuk mengelola kunci Anda.

        Anda dapat mengelola kunci secara manual atau menggunakan Autokey yang memungkinkan Anda membuat cincin kunci dan kunci sesuai permintaan. Jika opsi Cloud KMS dengan Autokey dinonaktifkan, opsi tersebut belum terintegrasi dengan jenis resource saat ini.

      2. Di Select a Cloud KMS key, pilih kunci.

        Perhatikan bahwa Anda harus memilih region sebelum dapat melihat kunci yang dikelola pelanggan.

      3. Opsional: Untuk memasukkan nama resource kunci secara manual, di daftar Pilih kunci yang dikelola pelanggan, klik Masukkan kunci secara manual, lalu masukkan nama kunci dalam format yang ditentukan.

      4. Jika diminta, berikan peran cloudkms.cryptoKeyEncrypterDecrypter kepada Agen Layanan Eventarc.

    7. Opsional: Untuk menambahkan sumber pesan, klik Tambahkan sumber.

      1. Di panel Tambahkan sumber pesan, untuk penyedia pesan Google API, terima default google-api-source atau masukkan nama sumber yang berbeda.
      2. Klik Buat.

        Hal ini memungkinkan pengumpulan peristiwa otomatis yang berasal langsung dari sumber Google.

        Perhatikan bahwa hanya peristiwa dari resource dalam project Google Cloud yang sama dengan bus yang dipublikasikan. Untuk mengetahui informasi selengkapnya, lihat Memublikasikan peristiwa dari sumber Google.

    8. Opsional: Untuk menambahkan label, klik Tambahkan label. Label adalah pasangan nilai kunci yang membantu Anda mengaturGoogle Cloud resource. Untuk mengetahui informasi selengkapnya, lihat Apa yang dimaksud dengan label?

  4. Klik Buat.

gcloud

  1. Buka terminal.

  2. Buat bus menggunakan perintah gcloud beta eventarc message-buses create.

    gcloud beta eventarc message-buses create BUS_NAME \
        --location=REGION
    

    Ganti kode berikut:

    • BUS_NAME: ID atau ID yang memenuhi syarat sepenuhnya dari bus
    • REGION: lokasi yang didukung untuk bus

      Atau, Anda dapat menetapkan properti lokasi Google Cloud CLI:

      gcloud config set eventarc/location REGION
      

    Opsional: Anda juga dapat menggunakan flag berikut:

    • --async untuk segera kembali dari perintah, tanpa menunggu operasi yang sedang berlangsung selesai.
    • --crypto-key untuk menentukan nama yang sepenuhnya memenuhi syarat dari kunci enkripsi yang dikelola pelanggan; jika tidak ditentukan, Google-owned and managed keys akan digunakan.
    • --logging-config untuk mengonfigurasi tingkat keparahan minimum untuk peristiwa yang dijelaskan dalam entri log. Harus berupa salah satu dari berikut: NONE, DEBUG, INFO, NOTICE, WARNING, ERROR, CRITICAL, ALERT, EMERGENCY. Defaultnya adalah NONE. Untuk mengetahui informasi selengkapnya, lihat LogSeverity.

REST API

Untuk membuat bus, gunakan projects.locations.messageBuses.create metode.

Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:

  • BUS_NAME: nama tampilan bus Anda—misalnya, my_bus.
  • LABEL_KEY dan LABEL_VALUE: opsional. Peta pasangan nilai dan kunci label yang membantu Anda mengatur resource. Google Cloud Untuk mengetahui informasi selengkapnya, lihat Apa yang dimaksud dengan label?
  • ANNOTATION_KEY dan ANNOTATION_VALUE: opsional. Peta pasangan nilai kunci anotasi teks bentuk bebas. Anda dapat menggunakannya untuk melampirkan informasi arbitrer yang terkait dengan resource. Untuk mengetahui informasi selengkapnya, lihat Anotasi.
  • ENCRYPT_KEY: optional. Kunci Cloud KMS yang harus digunakan bus untuk enkripsi data dalam format projects/PROJECT_NAME/locations/LOCATION/keyRings/RING_NAME/cryptoKeys/KEY_NAME. Untuk informasi selengkapnya, lihat Menggunakan kunci enkripsi yang dikelola pelanggan.
  • PROJECT_ID: project ID Google Cloud Anda.
  • LOCATION: region tempat membuat bus—misalnya, us-central1.
  • LOG_SEVERITY: optional. Tingkat keparahan minimum peristiwa yang dijelaskan dalam entri log. Salah satu dari: NONE, DEBUG, INFO, NOTICE, WARNING, ERROR, CRITICAL, ALERT, EMERGENCY. Defaultnya adalah NONE. Untuk mengetahui informasi selengkapnya, lihat LogSeverity.

Meminta isi JSON:

{
  "display_name": "BUS_NAME",
  "labels": {"LABEL_KEY":"LABEL_VALUE"},
  "annotations": {"ANNOTATION_KEY":"ANNOTATION_VALUE"},
  "cryptoKeyName": "ENCRYPT_KEY",
  "loggingConfig": {"logSeverity":"LOG_SEVERITY"}
}

Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:

Jika berhasil, isi respons berisi instance Operation yang baru dibuat:

{
  "name": "projects/PROJECT_ID/locations/LOCATION/operations/OPERATION_ID",
  "metadata": {
    "@type": "type.googleapis.com/google.cloud.eventarc.v1.OperationMetadata",
    "createTime": "2024-01-25T17:17:45.782370139Z",
    "target": "projects/PROJECT_ID/locations/LOCATION/messageBuses/BUS_NAME",
    "verb": "create",
    "requestedCancellation": false,
    "apiVersion": "v1"
  },
  "done": false
}

Menghapus bus

Anda dapat menghapus bus dengan cara berikut:

  • Di Google Cloud console
  • Dengan menggunakan gcloud CLI di terminal atau Cloud Shell
  • Dengan mengirim permintaan ke Eventarc API

Konsol

  1. Di konsol Google Cloud , buka halaman Eventarc > Bus.

    Buka Bus

    Halaman Bus details akan terbuka.

  2. Klik Hapus.

  3. Saat diminta untuk menghapus bus, untuk mengonfirmasi bahwa sumber pesan yang dikonfigurasi untuk menggunakan bus tidak akan dapat menggunakannya lagi, centang kotak Apakah Anda ingin melanjutkan?.

  4. Untuk mengonfirmasi penghapusan, masukkan Delete.

  5. Klik Hapus.

gcloud

  1. Buka terminal.

  2. Hapus bus menggunakan perintah gcloud beta eventarc message-buses delete.

    gcloud beta eventarc message-buses delete BUS_NAME \
        --location=REGION
    

    Ganti kode berikut:

    • BUS_NAME: ID atau ID yang memenuhi syarat sepenuhnya dari bus
    • REGION: lokasi yang didukung untuk bus

REST API

Untuk menghapus bus, gunakan metode projects.locations.messageBuses.delete.

Sebelum menggunakan salah satu data permintaan, lakukan penggantian berikut:

  • PROJECT_ID: project ID Google Cloud Anda.
  • LOCATION: region tempat bus dibuat—misalnya, us-central1.
  • BUS_NAME: nama bus yang ingin Anda hapus.

Untuk mengirim permintaan Anda, perluas salah satu opsi berikut:

Jika berhasil, isi respons berisi instance Operation yang baru dibuat:

{
  "name": "projects/PROJECT_ID/locations/LOCATION/operations/OPERATION_ID",
  "metadata": {
    "@type": "type.googleapis.com/google.cloud.eventarc.v1.OperationMetadata",
    "createTime": "2024-01-25T17:17:45.782370139Z",
    "target": "projects/PROJECT_ID/locations/LOCATION/messageBuses/BUS_NAME",
    "verb": "delete",
    "requestedCancellation": false,
    "apiVersion": "v1"
  },
  "done": false
}

Langkah berikutnya