Halaman ini menjelaskan prasyarat untuk menggunakan fitur orkestrator kebijakan di VM Manager.
Menyiapkan project kuota untuk organisasi dan orkestrasi folder
Saat menggunakan orkestrator kebijakan untuk mengelola resource kebijakan OS di organisasi atau folder, Anda membuat permintaan ke API berbasis klien. Project kuota diperlukan untuk API berbasis klien. Untuk mengetahui informasi selengkapnya tentang API berbasis klien dan menyiapkan project kuota, lihat Ringkasan project kuota.
Saat Anda menggunakan gcloud CLI atau REST API untuk memanggil metode orkestrator kebijakan, tentukan project kuota sebagai berikut:
gcloud
Tetapkan project kuota di properti konfigurasi gcloud CLI:
gcloud config set billing/quota_project QUOTA_PROJECT_ID
Ganti QUOTA_PROJECT_ID
dengan project ID project kuota.
Atau, tetapkan project kuota untuk perintah tertentu menggunakan
flag --billing-project
, yang lebih diutamakan daripada properti konfigurasi.
REST
Tambahkan header HTTP x-goog-user-project
untuk menentukan project kuota di setiap
permintaan. Untuk mengetahui detailnya, lihat Menetapkan project kuota dengan permintaan REST.
Mengaktifkan OS Config API
Untuk menggunakan fitur orchestrator kebijakan di VM Manager, aktifkan OS Config API di project berikut:
- Untuk orkestrasi tingkat organisasi dan tingkat folder, aktifkan OS Config API untuk project kuota.
- Untuk orkestrasi tingkat project, aktifkan OS Config API di project tempat Anda membuat orkestrator kebijakan.
Untuk informasi selengkapnya, lihat Mengaktifkan OS Config API.
Mengaktifkan Progressive Rollout API untuk project
Konsol
Di konsol Google Cloud, pilih project Google Cloud yang API-nya ingin Anda aktifkan, lalu buka halaman APIs & Services:
Klik Aktifkan API dan Layanan.
Telusuri "Peluncuran Progresif".
Di hasil penelusuran, klik Progressive Rollout API.
Jika API belum diaktifkan, klik Enable.
gcloud
Untuk melihat apakah Progressive Rollout API diaktifkan, jalankan perintah berikut setelah mengganti
PROJECT_ID
dengan ID project yang API-nya ingin Anda aktifkan:gcloud services list --project=PROJECT_ID
Jika
progressiverollout.googleapis.com
muncul dalam output, API akan diaktifkan.Jika API tidak diaktifkan, jalankan perintah berikut untuk mengaktifkannya:
gcloud services enable progressiverollout.googleapis.com
Untuk informasi selengkapnya, lihat
gcloud services
.
Menyiapkan agen layanan Konfigurasi OS
Orkestrator kebijakan menggunakan agen layanan OS Config untuk melakukan tindakan di project Anda. Hal ini juga bergantung pada Progressive Rollout API, yang memiliki agen layanannya sendiri. Untuk mengetahui informasi selengkapnya, lihat Agen layanan.
Anda harus membuat agen layanan untuk setiap project, folder, atau organisasi tempat Anda membuat orkestrator kebijakan.
Untuk membuat agen layanan, lakukan hal berikut.
Tinjau format alamat email agen layanan untuk setiap resource:
Project
service-PROJECT_NUMBER@gcp-sa-osconfig.iam.gserviceaccount.com
service-PROJECT_NUMBER@gcp-sa-osconfig-rollout.iam.gserviceaccount.com
service-PROJECT_NUMBER@gcp-sa-progrollout.iam.gserviceaccount.com
Ganti
PROJECT_NUMBER
dengan ID numerik project tempat Anda membuat orkestrator kebijakan.Folder
service-folder-FOLDER_NUMBER@gcp-sa-osconfig.iam.gserviceaccount.com
service-folder-FOLDER_NUMBER@gcp-sa-osconfig-rollout.iam.gserviceaccount.com
service-folder-FOLDER_NUMBER@gcp-sa-progrollout.iam.gserviceaccount.com
Ganti
FOLDER_NUMBER
dengan ID numerik folder tempat Anda membuat orkestrator kebijakan.Organisasi
service-org-ORGANIZATION_NUMBER@gcp-sa-osconfig.iam.gserviceaccount.com
service-org-ORGANIZATION_NUMBER@gcp-sa-osconfig-rollout.iam.gserviceaccount.com
service-org-ORGANIZATION_NUMBER@gcp-sa-progrollout.iam.gserviceaccount.com
Ganti
ORGANIZATION_NUMBER
dengan ID numerik organisasi tempat Anda membuat orkestrator kebijakan.Untuk membuat agen layanan untuk API dan resource yang ditentukan, gunakan perintah
gcloud beta services identity create
:Project
gcloud beta services identity create --service=osconfig.googleapis.com --project=PROJECT_NUMBER
gcloud beta services identity create --service=progressiverollout.googleapis.com --project=PROJECT_NUMBER
Ganti
PROJECT_NUMBER
dengan ID numerik project tempat Anda ingin membuat agen layanan.Folder
gcloud beta services identity create --service=osconfig.googleapis.com --folder=FOLDER_NUMBER
gcloud beta services identity create --service=progressiverollout.googleapis.com --folder=FOLDER_NUMBER
Ganti
FOLDER_NUMBER
dengan ID numerik folder tempat Anda ingin membuat agen layanan.Organisasi
gcloud beta services identity create --service=osconfig.googleapis.com --organization=ORGANIZATION_NUMBER
gcloud beta services identity create --service=progressiverollout.googleapis.com --organization=ORGANIZATION_NUMBER
Ganti
ORGANIZATION_NUMBER
dengan ID numerik organisasi tempat Anda ingin membuat agen layanan.
Memberikan peran IAM ke agen layanan
Agar orkestrator kebijakan berfungsi dengan benar, Anda harus memberikan semua peran agen layanan yang diperlukan ke akun layanan masing-masing, di resource induk orkestrator:
- OSConfig Service Agent (
roles/osconfig.serviceAgent
) untuk akun @gcp-sa-osconfig.iam.gserviceaccount.com - Agen Layanan Peluncuran OSConfig (
roles/osconfig.rolloutServiceAgent
) untuk akun @gcp-sa-osconfig-rollout.iam.gserviceaccount.com - Agen Layanan Progressiverollout (
roles/progressiverollout.serviceAgent
) untuk akun @gcp-sa-progrollout.iam.gserviceaccount.com
Untuk memberikan peran IAM kepada agen layanan, gunakan Konsol Google Cloud atau perintah add-iam-policy-binding
.
Untuk mengetahui informasi selengkapnya, lihat Memberikan peran kepada agen layanan.
Peran yang diperlukan
-
Untuk mendapatkan izin yang diperlukan saat memberikan akses kepada agen layanan, minta administrator untuk memberi Anda peran IAM berikut pada project, folder, atau organisasi yang Anda berikan akses:
-
Memberikan agen layanan akses ke project:
Project IAM Admin (
roles/resourcemanager.projectIamAdmin
) -
Memberikan agen layanan akses ke folder:
Folder Admin (
roles/resourcemanager.folderAdmin
) -
Memberikan agen layanan akses ke project, folder, dan organisasi:
Organization Admin (
roles/resourcemanager.organizationAdmin
)
Untuk mengetahui informasi selengkapnya tentang cara memberikan peran, lihat Mengelola akses ke project, folder, dan organisasi.
Peran bawaan ini berisi izin yang diperlukan untuk memberikan akses kepada agen layanan. Untuk melihat izin yang benar-benar diperlukan, luaskan bagian Izin yang diperlukan:
Izin yang diperlukan
Izin berikut diperlukan untuk memberikan akses kepada agen layanan:
-
Memberikan agen layanan akses ke project:
-
resourcemanager.projects.getIamPolicy
-
resourcemanager.projects.setIamPolicy
-
-
Memberikan agen layanan akses ke folder:
-
resourcemanager.folders.getIamPolicy
-
resourcemanager.folders.setIamPolicy
-
-
Memberikan agen layanan akses ke organisasi:
-
resourcemanager.organizations.getIamPolicy
-
resourcemanager.organizations.setIamPolicy
-
Anda mungkin juga bisa mendapatkan izin ini dengan peran khusus atau peran bawaan lainnya.
-
Memberikan agen layanan akses ke project:
Project IAM Admin (
Untuk memberikan peran agen layanan, jalankan gcloud add-iam-policy-binding
sebagai berikut:
Project
gcloud projects add-iam-policy-binding PROJECT_ID \ --member="serviceAccount:service-PROJECT_NUMBER@gcp-sa-osconfig-rollout.iam.gserviceaccount.com" \ --role="roles/osconfig.rolloutServiceAgent"
gcloud projects add-iam-policy-binding PROJECT_ID \ --member="serviceAccount:service-PROJECT_NUMBER@gcp-sa-osconfig.iam.gserviceaccount.com" \ --role="roles/osconfig.serviceAgent"
gcloud projects add-iam-policy-binding PROJECT_ID \ --member="serviceAccount:service-PROJECT_NUMBER@gcp-sa-progrollout.iam.gserviceaccount.com" \ --role="roles/progressiverollout.serviceAgent"
Ganti PROJECT_NUMBER
dengan ID numerik project tempat binding kebijakan IAM ditambahkan.
Folder
gcloud resource-manager folders add-iam-policy-binding FOLDER_NUMBER \ --member="serviceAccount:service-folder-FOLDER_NUMBER@gcp-sa-osconfig-rollout.iam.gserviceaccount.com" \ --role="roles/osconfig.rolloutServiceAgent"
gcloud resource-manager folders add-iam-policy-binding FOLDER_NUMBER \ --member="serviceAccount:service-folder-FOLDER_NUMBER@gcp-sa-osconfig.iam.gserviceaccount.com" \ --role="roles/osconfig.serviceAgent"
gcloud resource-manager folders add-iam-policy-binding FOLDER_NUMBER \ --member="serviceAccount:service-folder-FOLDER_NUMBER@gcp-sa-progrollout.iam.gserviceaccount.com" \ --role="roles/progressiverollout.serviceAgent"
Ganti FOLDER_NUMBER
dengan ID numerik
folder tempat binding kebijakan IAM ditambahkan.
Organisasi
gcloud organizations add-iam-policy-binding ORGANIZATION_NUMBER \ --member="serviceAccount:service-org-ORGANIZATION_NUMBER@gcp-sa-osconfig-rollout.iam.gserviceaccount.com" \ --role="roles/osconfig.rolloutServiceAgent"
gcloud organizations add-iam-policy-binding ORGANIZATION_NUMBER \ --member="serviceAccount:service-org-ORGANIZATION_NUMBER@gcp-sa-osconfig.iam.gserviceaccount.com" \ --role="roles/osconfig.serviceAgent"
gcloud organizations add-iam-policy-binding ORGANIZATION_NUMBER \ --member="serviceAccount:service-org-ORGANIZATION_NUMBER@gcp-sa-progrollout.iam.gserviceaccount.com" \ --role="roles/progressiverollout.serviceAgent"
Ganti ORGANIZATION_NUMBER
dengan ID numerik
organisasi tempat binding kebijakan IAM ditambahkan.
Apa langkah selanjutnya?
- Pelajari cara mengelola penetapan kebijakan OS menggunakan orchestrator kebijakan.
- Pelajari cara melihat dan mengedit orkestrator kebijakan.