Tentang akun layanan

Akun layanan adalah jenis akun khusus di Google Cloud yang memungkinkan komponen dan aplikasi suatu sistem berinteraksi satu sama lain dan dengan API lainnya. Untuk mengetahui informasi selengkapnya tentang Google Cloud, lihat Tentang layanan Google Cloud.

Apigee hybrid menggunakan akun layanan Google Cloud untuk melakukan berbagai tugas, termasuk:

  • Mengirim data log dan metrik
  • Menarik permintaan rekaman aktivitas
  • Menghubungkan ke gateway API untuk permintaan API administratif
  • Menjalankan pencadangan
  • Mendownload paket proxy

Meskipun satu akun layanan dapat melakukan semua operasi ini, untuk lingkungan produksi, Apigee merekomendasikan agar Anda membuat beberapa akun layanan, yang masing-masing ditetapkan ke tugas tertentu dan masing-masing memiliki serangkaian izinnya sendiri. Hal ini meningkatkan keamanan dengan mengelompokkan akses dan membatasi cakupan serta hak akses setiap akun layanan. Seperti halnya akun pengguna, izin ini diterapkan dengan menetapkan satu atau beberapa peran ke akun layanan.

Agar dapat beroperasi dengan benar, Apigee Hybrid mengharuskan Anda membuat beberapa akun layanan. Setiap akun layanan memerlukan satu atau beberapa peran tertentu yang memungkinkannya menjalankan fungsinya.

Tabel berikut menjelaskan akun layanan untuk komponen hybrid. Nama yang diberikan untuk setiap akun layanan adalah nama default. Anda dapat menggunakan nama apa pun yang diinginkan, tetapi nama tersebut harus mudah diidentifikasi dengan tujuan setiap akun.

Komponen* Peran Diperlukan untuk penginstalan dasar? Deskripsi
apigee-cassandra Storage Object Admin
roles/storage.objectAdmin
Mengizinkan pencadangan Cassandra ke Cloud Storage, seperti yang dijelaskan dalam Pencadangan dan pemulihan.
apigee-logger Logs Writer
roles/logging.logWriter
Mengizinkan pengumpulan data logging, seperti yang dijelaskan dalam Logging. Hanya diperlukan untuk penginstalan cluster non-GKE.
apigee-mart Apigee Connect Agent
roles/apigeeconnect.Agent
Memungkinkan autentikasi layanan MART. Peran Apigee Connect Agent memungkinkan agen berkomunikasi secara aman dengan proses Apigee Connect, seperti yang dijelaskan dalam Menggunakan Apigee Connect.
apigee-metrics Monitoring Metric Writer
roles/monitoring.metricWriter
Mengizinkan pengumpulan data metrik, seperti yang dijelaskan dalam Ringkasan pengumpulan metrik.
apigee-mint-task-scheduler Tidak memerlukan peran Berfungsi sebagai identitas yang digunakan untuk menjalankan gambar apigee-mint-task-scheduler, sehingga memungkinkan gambar tersebut menghasilkan biaya berulang untuk Paket Tarif yang menentukannya. Lihat Mengaktifkan monetisasi untuk Apigee Hybrid.
apigee-runtime Tidak memerlukan peran Memungkinkan runtime hybrid Apigee terhubung ke layanan Google dan layanan kustom di Google Cloud, seperti Google Authentication, Google Cloud Trace, dan Jaeger.
apigee-synchronizer Apigee Synchronizer Manager
roles/apigee.synchronizerManager
Memungkinkan sinkronisasi mendownload paket proxy dan data konfigurasi lingkungan. Juga memungkinkan pengoperasian fitur rekaman aktivitas.
apigee-udca Apigee Analytics Agent
roles/apigee.analyticsAgent
Memungkinkan transfer data status deployment, analisis, dan rekaman aktivitas ke bidang pengelolaan.
apigee-watcher Apigee Runtime Agent
roles/apigee.runtimeAgent
Apigee Watcher menarik perubahan terkait host virtual untuk organisasi dari sinkronisasi dan membuat perubahan yang diperlukan untuk mengonfigurasi ingress istio.
* Nama ini digunakan dalam nama file kunci akun layanan yang didownload.

Sebagai alternatif, untuk lingkungan non-produksi, pengujian, dan demo, Anda dapat menggunakan satu akun layanan dengan semua peran yang ditetapkan kepadanya. Tindakan ini tidak direkomendasikan untuk lingkungan produksi.

Komponen* Peran Diperlukan untuk penginstalan dasar? Deskripsi
apigee-non-prod Apigee Analytics Agent, Apigee Connect Agent, Apigee Organization Admin, Apigee Runtime Agent, Apigee Synchronizer Manager, Cloud Trace Agent, Logs Writer, Monitoring Metric Writer, Storage Object Admin Atau semua SA yang diperlukan di atas Satu akun layanan untuk lingkungan demo atau pengujian. Lihat Penginstalan, Bagian 2, Langkah 4: Siapkan akun layanan.

Selain membuat akun layanan yang tercantum dalam tabel ini, Anda akan menggunakan kunci pribadi setiap akun untuk membuat token akses sehingga Anda dapat mengakses Apigee API. Alat create-service-account akan otomatis mendownload file kunci ke direktori di komputer lokal Anda saat membuat atau memperbarui akun layanan.

Buat akun layanan

Ada beberapa cara untuk membuat akun layanan, termasuk:

Setiap opsi ini dijelaskan di bagian berikut.

Menggunakan alat create-service-account

Alat create-service-account tersedia setelah Anda mendownload dan meluaskan Helm Charts Apigee Hybrid. Anda dapat menemukan alat create-service-account di direktori berikut:

APIGEE_HELM_CHARTS_HOME/
└── apigee-operator/
    └── etc/
        └── tools/
            └── create-service-account

create-service-account membuat akun layanan khusus komponen hybrid dan menetapkan peran yang diperlukan untuk Anda. Alat ini juga otomatis mendownload kunci akun layanan dan menyimpannya di komputer lokal Anda.

Misalnya, perintah berikut akan membuat semua akun layanan individual terpisah untuk lingkungan produksi, menetapkan peran IAM yang sesuai ke setiap akun layanan, dan mendownload file kunci pribadi setiap akun ke direktori ./service-accounts:

./tools/create-service-account --env prod

Perintah berikut membuat satu akun layanan bernama apigee-non-prod dengan semua peran IAM untuk semua komponen hybrid, cocok untuk lingkungan demo dan pengujian, tetapi tidak untuk lingkungan produksi:

./tools/create-service-account --env non-prod

Untuk mengetahui informasi selengkapnya tentang penggunaan create-service-account, lihat referensi create-service-account.

Menggunakan Google Cloud console

Anda dapat membuat akun layanan dengan konsol Google Cloud .

Untuk membuat akun layanan dengan konsol Google Cloud dan membuat kunci untuk akun layanan, lakukan langkah-langkah berikut:

  1. Membuat akun layanan:

    1. Di konsol Google Cloud , buka halaman Service Accounts.

      Buka Akun Layanan

    2. Pilih project Anda.
    3. Klik Buat akun layanan.
    4. Di kolom Nama akun layanan, masukkan nama. Konsol Google Cloud akan mengisi kolom ID akun layanan berdasarkan nama ini.

      Apigee merekomendasikan agar Anda menggunakan nama yang mencerminkan peran akun layanan; Anda dapat menetapkan nama akun layanan agar sama dengan nama komponen yang menggunakannya. Misalnya, tetapkan nama akun layanan Penulis Log apigee-logger.

      Untuk mengetahui informasi selengkapnya tentang nama dan peran akun layanan, lihat Akun layanan dan peran yang digunakan oleh komponen hybrid.

    5. Opsional: Di kolom Deskripsi akun layanan, masukkan deskripsi akun layanan. Deskripsi berguna untuk mengingatkan Anda tentang tujuan penggunaan akun layanan tertentu.
    6. Klik Buat dan lanjutkan.
    7. Klik kolom Select a role, lalu pilih peran, seperti yang dijelaskan dalam Akun layanan dan peran yang digunakan oleh komponen hybrid. Jika peran Apigee tidak muncul di daftar drop-down, muat ulang halaman.

      Misalnya, untuk komponen logging, pilih peran Penulis Log.

      Jika perlu, masukkan teks untuk memfilter daftar peran menurut nama. Misalnya, untuk mencantumkan hanya peran Apigee, masukkan Apigee di kolom filter.

      Anda dapat menambahkan lebih dari satu peran ke akun layanan, tetapi Apigee merekomendasikan penggunaan hanya satu peran untuk setiap akun layanan yang direkomendasikan. Untuk mengubah peran akun layanan setelah Anda membuatnya, gunakan halaman IAM di konsol Google Cloud .

    8. Klik Lanjutkan.

      Google Cloud akan menampilkan tampilan Beri pengguna akses ke akun layanan ini:

      Kolom untuk peran Pengguna akun layanan dan peran Admin akun layanan, tombol untuk Buat kunci

    9. Di bagian Buat kunci (opsional), klik Buat Kunci.

      Google Cloud memberi Anda opsi untuk mendownload kunci JSON atau P12:

      Pilih jenis kunci JSON atau P12

    10. Pilih JSON (default) lalu klik Buat.

      Google Cloud menyimpan file kunci dalam format JSON ke mesin lokal Anda dan menampilkan konfirmasi jika berhasil, seperti yang ditunjukkan contoh berikut:

      Contoh filename.json

      Anda akan menggunakan beberapa kunci akun layanan nanti untuk mengonfigurasi layanan runtime hybrid. Misalnya, saat mengonfigurasi runtime hybrid, Anda akan menentukan lokasi kunci akun layanan menggunakan properti SERVICE_NAME.serviceAccountPath.

      Kunci ini digunakan oleh akun layanan untuk mendapatkan token akses, yang kemudian digunakan oleh akun layanan untuk membuat permintaan terhadap Apigee API atas nama Anda. (Namun, hal itu belum akan terjadi dalam waktu dekat; untuk saat ini, cukup ingat tempat Anda menyimpannya.)

    11. Ulangi langkah 4 hingga 11 untuk setiap akun layanan yang tercantum di Akun layanan dan peran yang digunakan oleh komponen hybrid (kecuali akun apigee-mart—yang tidak memiliki peran yang terkait dengannya—jadi jangan tetapkan peran ke akun tersebut).

      Setelah selesai, Anda akan memiliki akun layanan berikut (selain akun default, jika ada):

      Daftar akun layanan. Kotak pilihan kolom 1, Email kolom 2, Status kolom 3, nama akun layanan kolom 4

      Di konsol Google Cloud , akun layanan ditandai dengan ikon tombol sisi kiri, setengah persegi panjang sisi kanan, semuanya digarisbawahi.

    Setelah membuat akun layanan, jika Anda ingin menambahkan atau menghapus peran ke akun layanan tersebut, Anda harus menggunakan tampilan IAM & Admin. Anda tidak dapat mengelola peran untuk akun layanan di tampilan Akun layanan.

    Menggunakan API pembuatan akun layanan gcloud

    Anda dapat membuat dan mengelola akun layanan dengan Cloud Identity and Access Management API.

    Untuk mengetahui informasi selengkapnya, lihat Membuat dan mengelola akun layanan.

    Pemecahan masalah