Menyiapkan aplikasi gRPC di Google Cloud dengan kemampuan observasi Microservices

Alat observabilitas microservice memberi Anda kemampuan untuk menginstrumentasi aplikasi guna mengumpulkan dan menyajikan data telemetri di Cloud Monitoring, Cloud Logging, dan Cloud Trace dari workload gRPC yang di-deploy di Google Cloud dan di tempat lain. Kemampuan observasi microservice berfungsi dengan deployment apa pun yang telah diberi izin untuk mengakses Monitoring, Logging, dan Trace dengan mengaktifkan Microservices API.

Dalam tutorial ini, Anda akan mempelajari cara menggunakan fitur keobservasian Microservice dengan membuat aplikasi gRPC sederhana di Google Cloud menggunakan Compute Engine dan menginstrumentasikan aplikasi Anda dengan keobservasian Microservice, serta melihatnya muncul secara langsung di Monitoring dan Logging.

Tujuan

Pada intinya, Anda perlu melakukan tindakan berikut.

  • Sebagai developer layanan, Anda dapat:

    • Buat aplikasi gRPC dengan bahasa pilihan Anda (C++, Go, atau Java).
    • Ikut serta aplikasi Anda dan kontrol plugin Kemampuan observasi microservice.
    • Deploy aplikasi di VM Compute Engine.
  • Sebagai operator layanan, Anda menggunakan data yang dikumpulkan dengan berbagai cara:

    • Melihat rekaman aktivitas di Trace.
    • Lihat metrik di dasbor pemantauan yang disebut Pemantauan Microservices (gRPC).
    • Lihat metrik di Metrics Explorer.
    • Periksa entri log di Logs Explorer.

Biaya

Dalam dokumen ini, Anda akan menggunakan komponen Google Cloudyang dapat ditagih sebagai berikut:

Untuk membuat perkiraan biaya berdasarkan proyeksi penggunaan Anda, gunakan kalkulator harga.

Pengguna Google Cloud baru mungkin memenuhi syarat untuk mendapatkan uji coba gratis.

Setelah menyelesaikan tugas yang dijelaskan dalam dokumen ini, Anda dapat menghindari penagihan berkelanjutan dengan menghapus resource yang Anda buat. Untuk mengetahui informasi selengkapnya, baca bagian Pembersihan.

Sebelum memulai

Konsol

  1. Login ke akun Google Cloud Anda. Jika Anda baru menggunakan Google Cloud, buat akun untuk mengevaluasi performa produk kami dalam skenario dunia nyata. Pelanggan baru juga mendapatkan kredit gratis senilai $300 untuk menjalankan, menguji, dan men-deploy workload.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  3. Verify that billing is enabled for your Google Cloud project.

  4. Aktifkan Compute Engine API dan Microservices API.

    Peran yang diperlukan untuk mengaktifkan API

    Untuk mengaktifkan API, Anda memerlukan peran IAM Service Usage Admin (roles/serviceusage.serviceUsageAdmin), yang berisi izin serviceusage.services.enable. Pelajari cara memberikan peran.

    Aktifkan API

  5. Pastikan Anda memiliki peran IAM Create Service Accounts (roles/iam.serviceAccountCreator) dan peran Project IAM Admin (roles/resourcemanager.projectIamAdmin). Pelajari cara memberikan peran.
  6. Di konsol Google Cloud , buka halaman Buat akun layanan.

    Buka Create service account
  7. Pilih project Anda.
  8. Di kolom Nama akun layanan, masukkan nama. Konsol Google Cloud akan mengisi kolom ID akun layanan berdasarkan nama ini.

    Di kolom Deskripsi akun layanan, masukkan sebuah deskripsi. Sebagai contoh, Service account for quickstart.

  9. Klik Create and continue.
  10. Berikan peran berikut ke akun layanan: Logging > Logs Viewer > Logs Writer, Monitoring > Monitoring Editor > Metrics Writer, Trace > Trace Admin > Trace Agent.

    Untuk memberikan peran, temukan daftar Pilih peran, lalu pilih peran.

    Untuk memberikan peran tambahan, klik Tambahkan peran lain, lalu tambahkan setiap peran tambahan.

  11. Klik Lanjutkan.
  12. Di kolom Peran pengguna akun layanan, masukkan ID untuk akun utama yang akan melampirkan akun layanan ke resource lain, seperti instance Compute Engine.

    Biasanya, ini adalah alamat email untuk Akun Google.

  13. Klik Selesai untuk menyelesaikan pembuatan akun layanan.

  • In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  • Verify that billing is enabled for your Google Cloud project.

  • Aktifkan Compute Engine API dan Microservices API.

    Peran yang diperlukan untuk mengaktifkan API

    Untuk mengaktifkan API, Anda memerlukan peran IAM Service Usage Admin (roles/serviceusage.serviceUsageAdmin), yang berisi izin serviceusage.services.enable. Pelajari cara memberikan peran.

    Aktifkan API

  • Pastikan Anda memiliki peran IAM Create Service Accounts (roles/iam.serviceAccountCreator) dan peran Project IAM Admin (roles/resourcemanager.projectIamAdmin). Pelajari cara memberikan peran.
  • Di konsol Google Cloud , buka halaman Buat akun layanan.

    Buka Create service account
  • Pilih project Anda.
  • Di kolom Nama akun layanan, masukkan nama. Konsol Google Cloud akan mengisi kolom ID akun layanan berdasarkan nama ini.

    Di kolom Deskripsi akun layanan, masukkan sebuah deskripsi. Sebagai contoh, Service account for quickstart.

  • Klik Create and continue.
  • Berikan peran berikut ke akun layanan: Logging > Logs Viewer > Logs Writer, Monitoring > Monitoring Editor > Metrics Writer, Trace > Trace Admin > Trace Agent.

    Untuk memberikan peran, temukan daftar Pilih peran, lalu pilih peran.

    Untuk memberikan peran tambahan, klik Tambahkan peran lain, lalu tambahkan setiap peran tambahan.

  • Klik Lanjutkan.
  • Di kolom Peran pengguna akun layanan, masukkan ID untuk akun utama yang akan melampirkan akun layanan ke resource lain, seperti instance Compute Engine.

    Biasanya, ini adalah alamat email untuk Akun Google.

  • Klik Selesai untuk menyelesaikan pembuatan akun layanan.

  • Baca Ringkasan kemampuan observasi microservice.
  • Baca dua variabel lingkungan yang didukung, tentukan mana yang akan digunakan, dan tentukan nilai yang diperlukan oleh variabel lingkungan.
  • cli

    1. Login ke akun Google Cloud Anda. Jika Anda baru menggunakan Google Cloud, buat akun untuk mengevaluasi performa produk kami dalam skenario dunia nyata. Pelanggan baru juga mendapatkan kredit gratis senilai $300 untuk menjalankan, menguji, dan men-deploy workload.
    2. Instal Google Cloud CLI.

    3. Jika Anda menggunakan penyedia identitas (IdP) eksternal, Anda harus login ke gcloud CLI dengan identitas gabungan Anda terlebih dahulu.

    4. Untuk melakukan inisialisasi gcloud CLI, jalankan perintah berikut:

      gcloud init
    5. Buat atau pilih Google Cloud project.

      Peran yang diperlukan untuk memilih atau membuat project

      • Pilih project: Memilih project tidak memerlukan peran IAM tertentu—Anda dapat memilih project mana pun yang telah diberi peran.
      • Membuat project: Untuk membuat project, Anda memerlukan peran Pembuat Project (roles/resourcemanager.projectCreator), yang berisi izin resourcemanager.projects.create. Pelajari cara memberikan peran.
      • Buat Google Cloud project:

        gcloud projects create PROJECT_ID

        Ganti PROJECT_ID dengan nama untuk Google Cloud project yang Anda buat.

      • Pilih project Google Cloud yang Anda buat:

        gcloud config set project PROJECT_ID

        Ganti PROJECT_ID dengan nama project Google Cloud Anda.

    6. Verifikasi bahwa penagihan diaktifkan untuk project Google Cloud Anda.

    7. Aktifkan Compute Engine API dan Microservices API:

      Peran yang diperlukan untuk mengaktifkan API

      Untuk mengaktifkan API, Anda memerlukan peran IAM Service Usage Admin (roles/serviceusage.serviceUsageAdmin), yang berisi izin serviceusage.services.enable. Pelajari cara memberikan peran.

      gcloud services enable compute.googleapis.com microservices.googleapis.com
    8. Menyiapkan autentikasi:

      1. Pastikan Anda memiliki peran IAM Create Service Accounts (roles/iam.serviceAccountCreator) dan peran IAM Project IAM Admin (roles/resourcemanager.projectIamAdmin). Pelajari cara memberikan peran.
      2. Buat akun layanan:

        gcloud iam service-accounts create SERVICE_ACCOUNT_NAME

        Ganti SERVICE_ACCOUNT_NAME dengan nama untuk akun layanan.

      3. Memberikan peran ke akun layanan. Jalankan perintah berikut satu kali untuk setiap peran IAM berikut: roles/logging.logWriter, roles/monitoring.metricWriter, roles/cloudtrace.agent:

        gcloud projects add-iam-policy-binding PROJECT_ID --member="serviceAccount:SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com" --role=ROLE

        Ganti kode berikut:

        • SERVICE_ACCOUNT_NAME: nama dari akun layanan.
        • PROJECT_ID: project ID dimana Anda membuat akun layanan
        • ROLE: peran yang akan diberikan
      4. Berikan peran yang diperlukan ke akun utama yang akan melampirkan akun layanan ke resource lain.

        gcloud iam service-accounts add-iam-policy-binding SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com --member="user:USER_EMAIL" --role=roles/iam.serviceAccountUser

        Ganti kode berikut:

        • SERVICE_ACCOUNT_NAME: nama dari akun layanan.
        • PROJECT_ID: project ID dimana Anda membuat akun layanan
        • USER_EMAIL: alamat email untuk Akun Google
    9. Instal Google Cloud CLI.

    10. Jika Anda menggunakan penyedia identitas (IdP) eksternal, Anda harus login ke gcloud CLI dengan identitas gabungan Anda terlebih dahulu.

    11. Untuk melakukan inisialisasi gcloud CLI, jalankan perintah berikut:

      gcloud init
    12. Buat atau pilih Google Cloud project.

      Peran yang diperlukan untuk memilih atau membuat project

      • Pilih project: Memilih project tidak memerlukan peran IAM tertentu—Anda dapat memilih project mana pun yang telah diberi peran.
      • Membuat project: Untuk membuat project, Anda memerlukan peran Pembuat Project (roles/resourcemanager.projectCreator), yang berisi izin resourcemanager.projects.create. Pelajari cara memberikan peran.
      • Buat Google Cloud project:

        gcloud projects create PROJECT_ID

        Ganti PROJECT_ID dengan nama untuk Google Cloud project yang Anda buat.

      • Pilih project Google Cloud yang Anda buat:

        gcloud config set project PROJECT_ID

        Ganti PROJECT_ID dengan nama project Google Cloud Anda.

    13. Verifikasi bahwa penagihan diaktifkan untuk project Google Cloud Anda.

    14. Aktifkan Compute Engine API dan Microservices API:

      Peran yang diperlukan untuk mengaktifkan API

      Untuk mengaktifkan API, Anda memerlukan peran IAM Service Usage Admin (roles/serviceusage.serviceUsageAdmin), yang berisi izin serviceusage.services.enable. Pelajari cara memberikan peran.

      gcloud services enable compute.googleapis.com microservices.googleapis.com
    15. Menyiapkan autentikasi:

      1. Pastikan Anda memiliki peran IAM Create Service Accounts (roles/iam.serviceAccountCreator) dan peran IAM Project IAM Admin (roles/resourcemanager.projectIamAdmin). Pelajari cara memberikan peran.
      2. Buat akun layanan:

        gcloud iam service-accounts create SERVICE_ACCOUNT_NAME

        Ganti SERVICE_ACCOUNT_NAME dengan nama untuk akun layanan.

      3. Memberikan peran ke akun layanan. Jalankan perintah berikut satu kali untuk setiap peran IAM berikut: roles/logging.logWriter, roles/monitoring.metricWriter, roles/cloudtrace.agent:

        gcloud projects add-iam-policy-binding PROJECT_ID --member="serviceAccount:SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com" --role=ROLE

        Ganti kode berikut:

        • SERVICE_ACCOUNT_NAME: nama dari akun layanan.
        • PROJECT_ID: project ID dimana Anda membuat akun layanan
        • ROLE: peran yang akan diberikan
      4. Berikan peran yang diperlukan ke akun utama yang akan melampirkan akun layanan ke resource lain.

        gcloud iam service-accounts add-iam-policy-binding SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com --member="user:USER_EMAIL" --role=roles/iam.serviceAccountUser

        Ganti kode berikut:

        • SERVICE_ACCOUNT_NAME: nama dari akun layanan.
        • PROJECT_ID: project ID dimana Anda membuat akun layanan
        • USER_EMAIL: alamat email untuk Akun Google
    16. Baca Ringkasan kemampuan observasi microservice.
    17. Baca dua variabel lingkungan yang didukung, tentukan mana yang akan digunakan, dan tentukan nilai yang diperlukan oleh variabel lingkungan.