Halaman ini menjelaskan prasyarat untuk menggunakan fitur pengelola kebijakan di VM Manager.
Perintah gcloud CLI untuk prasyarat orkestrator kebijakan
Bagian ini mencantumkan semua perintah gcloud
yang perlu Anda jalankan sebelum
dapat menggunakan fitur pengelola kebijakan.
Project
Perintah berikut melakukan tugas yang diperlukan untuk membuat orkestrasi tingkat project:
- Aktifkan OS Config API untuk project tempat Anda membuat orkestrator kebijakan OS.
- Aktifkan Progressive Rollout API untuk project tempat Anda membuat orkestrator kebijakan OS.
- Buat agen layanan yang diperlukan, jika agen ini belum dibuat.
- Memberikan peran IAM ke agen layanan.
# Enable OS Config API gcloud services enable osconfig.googleapis.com # Enable Progressive Rollout API gcloud services enable progressiverollout.googleapis.com # Create an OS config service agent gcloud beta services identity create --service=osconfig.googleapis.com --project=PROJECT_NUMBER # Create a Progressive Rollout service agent gcloud beta services identity create --service=progressiverollout.googleapis.com --project=PROJECT_NUMBER # Grant the required role to the OS config rollout service agent gcloud projects add-iam-policy-binding PROJECT_ID \ --member="serviceAccount:service-PROJECT_NUMBER@gcp-sa-osconfig-rollout.iam.gserviceaccount.com" \ --role="roles/osconfig.rolloutServiceAgent" # Grant the required role to the OS config service agent gcloud projects add-iam-policy-binding PROJECT_ID \ --member="serviceAccount:service-PROJECT_NUMBER@gcp-sa-osconfig.iam.gserviceaccount.com" \ --role="roles/osconfig.serviceAgent" # Grant the required role to the Progressive Rollout service agent gcloud projects add-iam-policy-binding PROJECT_ID \ --member="serviceAccount:service-PROJECT_NUMBER@gcp-sa-progrollout.iam.gserviceaccount.com" \ --role="roles/progressiverollout.serviceAgent"
Ganti kode berikut:
PROJECT_ID
: ID numerik project tempat Anda ingin membuat agen layanan.PROJECT_NUMBER
: nomor resource project yang ditetapkan oleh Google saat Anda membuat project.
Untuk mengetahui informasi selengkapnya, lihat Resource project.
Folder
Perintah berikut melakukan tugas yang diperlukan untuk membuat orkestrasi tingkat folder:
- Siapkan project kuota.
- Aktifkan OS Config API untuk project tempat Anda membuat orkestrator kebijakan OS.
- Buat agen layanan yang diperlukan, jika agen ini belum dibuat.
- Memberikan peran IAM ke agen layanan.
# Set up the quota project gcloud config set billing/quota_project QUOTA_PROJECT_ID # Enable OS Config API gcloud services enable osconfig.googleapis.com # Create an OS config service agent gcloud beta services identity create --service=osconfig.googleapis.com --folder=FOLDER_NUMBER # Create a Progressive Rollout service agent gcloud beta services identity create --service=progressiverollout.googleapis.com --folder=FOLDER_NUMBER # Grant the required role to the OS config rollout service agent 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" # Grant the required role to the OS config service agent 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" # Grant the required role to the Progressive Rollout service agent 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 kode berikut:
QUOTA_PROJECT_ID
: project ID project kuota. Anda dapat memilih project apa pun yang mengaktifkan penagihan.FOLDER_NUMBER
: ID numerik folder tempat Anda ingin membuat agen layanan.
Organisasi
Perintah berikut melakukan tugas yang diperlukan untuk membuat orkestrasi tingkat organisasi:
- Siapkan project kuota.
- Aktifkan OS Config API untuk project tempat Anda membuat orkestrator kebijakan OS.
- Buat agen layanan yang diperlukan, jika agen ini belum dibuat.
- Memberikan peran IAM ke agen layanan.
# Set up the quota project gcloud config set billing/quota_project QUOTA_PROJECT_ID # Enable OS Config API gcloud services enable osconfig.googleapis.com # Create an OS config service agent gcloud beta services identity create --service=osconfig.googleapis.com --organization=ORGANIZATION_NUMBER # Create a Progressive Rollout service agent gcloud beta services identity create --service=progressiverollout.googleapis.com --organization=ORGANIZATION_NUMBER # Grant the required role to the OS config rollout service agent 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" # Grant the required role to the OS config service agent gcloud organizations add-iam-policy-binding ORGANIZATION_NUMBER \ --member="serviceAccount:service-org-ORGANIZATION_NUMBER@gcp-sa-osconfig.iam.gserviceaccount.com" \ --role="roles/osconfig.serviceAgent" # Grant the required role to the Progressive Rollout service agent 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 kode berikut:
QUOTA_PROJECT_ID
: project ID project kuota. Anda dapat memilih project apa pun yang mengaktifkan penagihan.ORGANIZATION_NUMBER
dengan ID numerik organisasi tempat Anda ingin membuat agen layanan.
Menyiapkan project penagihan atau kuota untuk orkestrasi organisasi dan folder
Saat menggunakan orkestrator kebijakan untuk mengelola resource kebijakan OS di organisasi atau folder Anda, Anda membuat permintaan ke API berbasis klien. Project kuota diperlukan untuk API berbasis klien. Untuk mengetahui informasi selengkapnya tentang API berbasis klien dan penyiapan project kuota, lihat Ringkasan project kuota.
Saat Anda menggunakan gcloud CLI atau REST API untuk memanggil metode pengelola kebijakan, tentukan project kuota sebagai berikut:
gcloud
Tetapkan project kuota di properti konfigurasi gcloud CLI Anda:
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 pengelola kebijakan di VM Manager, aktifkan OS Config API di project berikut:
- Untuk orkestrasi tingkat organisasi dan folder, aktifkan OS Config API untuk project kuota.
- Untuk orkestrasi tingkat project, aktifkan OS Config API di project tempat Anda membuat pengorkestrasi kebijakan.
Untuk mengetahui informasi selengkapnya, lihat Mengaktifkan OS Config API.
Aktifkan Progressive Rollout API untuk project
Konsol
Di konsol Google Cloud , pilih project Google Cloud yang ingin Anda aktifkan API-nya, lalu buka halaman APIs & Services:
Klik Aktifkan API dan Layanan.
Telusuri "Progressive Rollout".
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 ingin Anda aktifkan API-nya:gcloud services list --project=PROJECT_ID
Jika
progressiverollout.googleapis.com
muncul di output, API diaktifkan.Jika API belum diaktifkan, jalankan perintah berikut untuk mengaktifkannya:
gcloud services enable progressiverollout.googleapis.com
Untuk informasi selengkapnya, lihat
gcloud services
.
Menyiapkan agen layanan Konfigurasi OS
Pengelola 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. Agar orkestrator kebijakan berfungsi dengan benar, berikan peran IAM wajib berikut kepada agen layanan ini di resource induk orkestrator:
- OSConfig Service Agent (
roles/osconfig.serviceAgent
) untuk akun @gcp-sa-osconfig.iam.gserviceaccount.com - OSConfig Rollout Service Agent (
roles/osconfig.rolloutServiceAgent
) untuk akun @gcp-sa-osconfig-rollout.iam.gserviceaccount.com - Agen Layanan Peluncuran Bertahap (
roles/progressiverollout.serviceAgent
) untuk akun @gcp-sa-progrollout.iam.gserviceaccount.com
Untuk memberikan peran IAM ke 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:
Admin Organisasi (
roles/resourcemanager.organizationAdmin
)
Untuk mengetahui informasi selengkapnya tentang pemberian 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 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 bagi API dan resource tertentu, gunakan perintah
gcloud beta services identity create
:Project
# Create an OS config service agent gcloud beta services identity create --service=osconfig.googleapis.com --project=PROJECT_NUMBER # Create a Progressive Rollout service agent 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
# Create an OS config service agent gcloud beta services identity create --service=osconfig.googleapis.com --folder=FOLDER_NUMBER # Create a Progressive Rollout service agent 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
# Create an OS config service agent gcloud beta services identity create --service=osconfig.googleapis.com --organization=ORGANIZATION_NUMBER # Create a Progressive Rollout service agent 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
Untuk memberikan peran agen layanan, jalankan gcloud add-iam-policy-binding
sebagai berikut:
Project
# Grant the required role to the OS config rollout service agent gcloud projects add-iam-policy-binding PROJECT_ID \ --member="serviceAccount:service-PROJECT_NUMBER@gcp-sa-osconfig-rollout.iam.gserviceaccount.com" \ --role="roles/osconfig.rolloutServiceAgent" # Grant the required role to the OS config service agent gcloud projects add-iam-policy-binding PROJECT_ID \ --member="serviceAccount:service-PROJECT_NUMBER@gcp-sa-osconfig.iam.gserviceaccount.com" \ --role="roles/osconfig.serviceAgent" # Grant the required role to the Progressive Rollout service agent 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
# Grant the required role to the OS config rollout service agent 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" # Grant the required role to the OS config service agent 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" # Grant the required role to the Progressive Rollout service agent 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
# Grant the required role to the OS config rollout service agent 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" # Grant the required role to the OS config service agent gcloud organizations add-iam-policy-binding ORGANIZATION_NUMBER \ --member="serviceAccount:service-org-ORGANIZATION_NUMBER@gcp-sa-osconfig.iam.gserviceaccount.com" \ --role="roles/osconfig.serviceAgent" # Grant the required role to the Progressive Rollout service agent 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 pengikatan kebijakan IAM ditambahkan.
Apa langkah selanjutnya?
- Pelajari cara mengelola penetapan kebijakan OS menggunakan policy orchestrator.
- Pelajari cara melihat dan mengedit pengelola kebijakan.