Membuat akun layanan Google Cloud dengan peran yang memungkinkan setiap komponen hybrid Apigee melakukan panggilan API yang diotorisasi dan mendownload file kunci akun layanan terkait. Anda dapat menggunakan file kunci akun layanan yang dihasilkan oleh perintah ini dalam file penggantian konfigurasi Anda.
create-service-account membuat satu atau beberapa akun layanan di project Google Cloud saat ini atau project yang Anda tentukan, menetapkan peran IAM yang benar ke akun layanan, dan mendownload file sertifikat untuk akun layanan ke direktori di mesin lokal Anda.
Alat create-service-account terletak di direktori
HYBRID_ROOT_DIR/tools.
Untuk mempelajari lebih lanjut akun layanan dan membaca daftar lengkap akun layanan yang direkomendasikan untuk lingkungan produksi, lihat artikel berikut:
Anda juga dapat membuat akun layanan di konsol Google Cloud. Lihat juga Membuat dan mengelola akun layanan.
Prasyarat
Peran
Alat create-service-account mengharuskan
CLI gcloud diinstal. Pengguna yang memanggil utilitas harus memiliki peran Service Account Admin.
Project
Akun layanan terikat ke project Google Cloud tertentu. create-service-account
membuat akun layanan di project saat ini atau di project yang Anda tentukan, dan mengikat peran IAM ke akun layanan dalam project tersebut. create-service-account juga menggunakan
Project ID sebagai bagian dari nama file dan email kunci akun layanan. Misalnya, jika project Anda bernama my-hybrid-project, file kunci akun layanan apigee-logger akan bernama my-hybrid-project-apigee-logger.json dan alamat email akun layanan akan menjadi apigee-logger@my-hybrid-project.iam.gserviceaccount.com.
Anda dapat menentukan project dengan menentukan variabel lingkungan PROJECT_ID atau dengan
flag --project-id. create-service-account membaca
nilai variabel lingkungan PROJECT_ID. Jika tidak ada, Anda dapat menggunakan
flag --project-id.
Jika Anda tidak menentukan project ID Cloud dengan perintah, create-service-account
akan menggunakan project dalam konfigurasi project gcloud Anda saat ini.
Anda dapat memeriksa konfigurasi project gcloud yang ditetapkan saat ini dengan perintah berikut:
gcloud config list project
Jika Anda perlu mengubah project ID saat ini, gunakan perintah berikut:
gcloud config set project PROJECT_ID
Dengan PROJECT_ID sebagai ID project Cloud Anda saat ini. Petunjuk untuk membuat Project Cloud dibahas di Langkah 2: Buat project Google Cloud.
Menggunakan create-service-account
Contoh berikut menunjukkan penggunaan create-service-account untuk tugas penyiapan umum hybrid Apigee.
Membuat akun layanan untuk lingkungan produksi
Di lingkungan hybrid produksi, Apigee merekomendasikan penggunaan akun layanan terpisah untuk setiap komponen. Gunakan perintah berikut untuk membuat semua akun layanan untuk komponen hybrid dengan nama defaultnya di direktori default.
./tools/create-service-account --env prod
Tindakan ini akan membuat akun layanan berikut dengan file sertifikat yang didownload di
direktori ./tools/service-accounts:
| Akun layanan | Peran IAM | File sertifikat | |
|---|---|---|---|
apigee-cassandra |
roles/storage.objectAdmin |
apigee-cassandra@PROJECT_ID.iam.gserviceaccount.com |
PROJECT_ID-apigee-cassandra.json |
apigee-logger |
roles/logging.logWriter |
apigee-logger@PROJECT_ID.iam.gserviceaccount.com |
PROJECT_ID-apigee-logger.json |
apigee-mart |
roles/apigeeconnect.Agent |
apigee-mart@PROJECT_ID.iam.gserviceaccount.com |
PROJECT_ID-apigee-mart.json |
apigee-metrics |
roles/monitoring.metricWriter |
apigee-metrics@PROJECT_ID.iam.gserviceaccount.com |
PROJECT_ID-apigee-metrics.json |
apigee-runtime |
Tidak ada peran yang ditetapkan | apigee-runtime@PROJECT_ID.iam.gserviceaccount.com |
PROJECT_ID-apigee-runtime.json |
apigee-synchronizer |
roles/apigee.synchronizerManager |
apigee-synchronizer@PROJECT_ID.iam.gserviceaccount.com |
PROJECT_ID-apigee-synchronizer.json |
apigee-udca |
roles/apigee.analyticsAgent |
apigee-udca@PROJECT_ID.iam.gserviceaccount.com |
PROJECT_ID-apigee-udca.json |
apigee-watcher |
roles/apigee.runtimeAgent |
apigee-watcher@PROJECT_ID.iam.gserviceaccount.com |
PROJECT_ID-apigee-watcher.json |
Membuat satu akun layanan untuk lingkungan non-produksi
Untuk lingkungan non-produksi, seperti lingkungan eksperimental atau demo, Anda dapat membuat satu akun layanan bernama "apigee-non-prod" yang dapat digunakan untuk semua komponen. Akun layanan ini akan memiliki semua peran IAM dalam contoh sebelumnya yang ditetapkan kepadanya.
./tools/create-service-account --env non-prod
Perintah ini akan membuat satu akun layanan bernama apigee-non-prod dan mendownload file sertifikat
di direktori ./tools/service-accounts:
| Akun layanan | Peran IAM | File sertifikat | |
|---|---|---|---|
apigee-non-prod |
roles/apigee.analyticsAgent |
apigee-non-prod@PROJECT_ID.iam.gserviceaccount.com |
PROJECT_ID-apigee-non-prod.json |
create-service-account syntax
Alat create-service-account menggunakan sintaksis berikut:
create-service-account [flags]
Tabel berikut mencantumkan flag create-service-account:
| Tanda | Nilai | Deskripsi |
|---|---|---|
--dir-d |
nama direktori | Menentukan direktori output untuk file kunci akun layanan. Jika tidak ada, create-service-account akan membuatnya. Jika direktori sudah ada,
create-service-account akan menimpa file apa pun di direktori yang memiliki
nama yang sama dengan file kunci yang dibuatnya.
Jika Anda tidak menentukan direktori output, |
--env-e |
prodnon-prod |
Menentukan apakah Anda membuat akun layanan untuk lingkungan produksi (prod)
atau lingkungan non-produksi (non-prod).
Jika Anda menjalankan |
--help-h |
tidak ada | Menampilkan teks bantuan. |
--name-n |
nama akun layanan | Menentukan nama untuk akun layanan. --name hanya berlaku untuk satu
akun layanan, yang ditentukan dengan --profile atau --env non-prod.
Nama ini juga merupakan bagian dari nama file sertifikat dan email untuk akun layanan. Misalnya, jika Anda menjalankan
Jika Anda tidak menentukan |
‑‑profile-p |
apigee‑cassandraapigee‑loggerapigee‑martapigee‑metricsapigee‑runtimeapigee‑synchronizerapigee‑udcaapigee‑watcher |
Khusus untuk lingkungan produksi, menentukan satu akun layanan yang akan dibuat.
Anda dapat menentukan nama untuk akun layanan dengan tanda
Memerlukan |
‑‑project‑id-i |
project id | Project ID project Google Cloud tempat Anda membuat akun layanan.
Jika Anda tidak menentukan Project ID, |
Untuk mengetahui informasi selengkapnya tentang akun layanan yang digunakan oleh Apigee Hybrid, lihat Tentang akun layanan.
Anda juga dapat membuat akun layanan di konsol Google Cloud. Lihat juga Membuat dan mengelola akun layanan.