Dokumen ini menjelaskan cara membuat kebijakan ekstensi VM, yang memungkinkan Anda menginstal dan mengelola ekstensi secara otomatis di fleet virtual machine (VM) Compute Engine. Dengan menentukan kebijakan, Anda dapat memastikan bahwa ekstensi tertentu diinstal dan dikelola di VM mana pun yang sesuai dengan kriteria yang Anda tentukan, seperti label VM. Anda dapat membuat kebijakan ekstensi VM zona atau global di level project, atau di level organisasi dan folder (tersedia dalam Pratinjau).
Sebelum memulai
- Tinjau dasar-dasar tentang VM Extension Manager.
- Tinjau kuota VM Extension Manager.
- Tinjau harga VM Extension Manager. VM Extension Manager tersedia tanpa biaya tambahan, tetapi Anda mungkin dikenai biaya karena menggunakan ekstensi yang diinstal oleh kebijakan Anda.
- Aktifkan Compute Engine API di project Google Cloud Anda jika belum diaktifkan.
- Pastikan VM Anda menjalankan agen tamu versi
20241209.01atau yang lebih baru. - Untuk melihat log debug untuk peristiwa VM Extension Manager, konfigurasikan setelan log untuk agen tamu.
-
Siapkan autentikasi jika Anda belum melakukannya.
Autentikasi memverifikasi identitas Anda untuk mengakses layanan Google Cloud dan API. Untuk menjalankan
kode atau contoh dari lingkungan pengembangan lokal, Anda dapat melakukan autentikasi ke
Compute Engine dengan memilih salah satu opsi berikut:
Pilih tab untuk melihat bagaimana Anda berencana menggunakan contoh di halaman ini:
Konsol
Saat menggunakan konsol Google Cloud untuk mengakses layanan dan API Google Cloud , Anda tidak perlu menyiapkan autentikasi.
gcloud
-
Instal Google Cloud CLI, lalu login ke gcloud CLI dengan identitas gabungan Anda. Setelah login, inisialisasi Google Cloud CLI dengan menjalankan perintah berikut:
gcloud init
-
- Tetapkan region dan zona default.
REST
Untuk menggunakan contoh REST API di halaman ini dalam lingkungan pengembangan lokal, gunakan kredensial yang Anda berikan ke gcloud CLI.
Instal Google Cloud CLI, lalu login ke gcloud CLI dengan identitas gabungan Anda.
Untuk mengetahui informasi selengkapnya, lihat Melakukan autentikasi untuk menggunakan REST dalam dokumentasi autentikasi Google Cloud .
Batasan pembuatan kebijakan
Anda hanya dapat membuat kebijakan ekstensi VM cakupan folder dan cakupan organisasi menggunakan Google Cloud CLI atau Compute Engine REST API.
Prioritas kebijakan dan resolusi konflik
Jika beberapa kebijakan di berbagai level hierarki (organisasi, folder, atau project) berlaku untuk VM yang sama, level hierarki tidak menentukan prioritas. Sebagai gantinya, VM Extension Manager menggunakan prioritas kebijakan dan stempel waktu update untuk menyelesaikan konflik.
Jika dua kebijakan bertentangan untuk ekstensi yang sama, kebijakan dengan prioritas yang lebih tinggi akan diutamakan. Nilai prioritas berkisar dari 0 hingga 65535, dengan angka yang lebih rendah menandakan prioritas yang lebih tinggi. Prioritas defaultnya adalah 1000. Jika beberapa kebijakan memiliki prioritas yang sama, VM Extension Manager akan menerapkan kebijakan yang paling baru diupdate ke VM. Menghapus kebijakan tidak akan menghapus ekstensi jika kebijakan dengan prioritas lebih rendah masih berlaku untuk VM.
Menginstal ekstensi VM dengan membuat kebijakan ekstensi VM global
Anda dapat membuat kebijakan ekstensi VM global untuk menginstal ekstensi di VM di beberapa zona sesuai dengan rencana peluncuran. Anda dapat menentukan kebijakan global di level project, atau di level folder atau organisasi (tersedia dalam Pratinjau).
VM Extension Manager tidak menerapkan kebijakan ekstensi VM global secara langsung ke VM; sebagai gantinya, saat kebijakan diluncurkan, VM Extension Manager otomatis mereplikasi definisi global ke kebijakan zona yang sesuai di setiap zona berdasarkan rencana peluncuran. Setelah kebijakan yang direplikasi tersedia di suatu zona, VM Extension Manager akan mengevaluasi VM di zona tersebut berdasarkan label penyertaan kebijakan dan menginstal atau mengupdate ekstensi yang ditetapkan. Saat Anda membuat VM baru, VM Extension Manager akan otomatis mengevaluasi dan mengonfigurasinya.
Rencana peluncuran untuk kebijakan global
Kebijakan ekstensi VM global menggunakan rencana peluncuran untuk mengelola deployment ekstensi di berbagai lokasi. Anda dapat menggunakan salah satu rencana peluncuran yang telah ditetapkan atau membuat rencana peluncuran kustom.
Rencana peluncuran yang telah ditetapkan sebelumnya
Anda dapat memilih salah satu rencana peluncuran standar berikut:
slow_rollout: meluncurkan kebijakan selama lima hari. Peluncuran lambat adalah rencana peluncuran default.fast_rollout: meluncurkan kebijakan segera ke semua zona.
Rencana peluncuran kustom
Anda dapat membuat rencana peluncuran kustom menggunakan
metode rolloutPlans.insert.
Misalnya, JSON berikut menentukan rencana peluncuran bernama test-rollout-plan
yang menargetkan dua zona:
{ "name": "test-rollout-plan", "waves": [ { "selectors": [ { "locationSelector": { "includedLocations": [ "us-central1-a", "us-west1-a" ] } } ], "validation": { "type": "time", "timeBasedValidationMetadata": { "waitDuration": "0s" } }, "orchestrationOptions": { "maxConcurrentResourcesPerLocation": "10", "maxConcurrentLocations": "10" } } ] }
Kemudian, Anda dapat menggunakan rencana peluncuran kustom ini saat membuat kebijakan global.
Menginstal ekstensi VM di semua zona dalam organisasi
Buat kebijakan ekstensi global cakupan organisasi untuk menginstal dan mengelola ekstensi VM di semua zona di semua project turunan organisasi Anda.
Izin IAM yang diperlukan
Untuk mendapatkan izin yang
diperlukan untuk membuat kebijakan ekstensi cakupan organisasi,
minta administrator untuk memberi Anda peran IAM
Organization level Compute VM extension policies admin (roles/compute.orgVmExtensionPolicyAdmin)
di organisasi Anda.
Untuk mengetahui informasi selengkapnya tentang cara memberikan peran, lihat Mengelola akses ke project, folder, dan organisasi.
Peran yang telah ditentukan ini berisi izin
compute.orgVmExtensionPolicies.create,
yang diperlukan untuk
membuat kebijakan ekstensi cakupan organisasi.
Anda mungkin juga bisa mendapatkan izin ini dengan peran khusus atau peran bawaan lainnya.
Untuk membuat kebijakan ekstensi global cakupan organisasi, pilih salah satu opsi berikut:
gcloud
Untuk membuat kebijakan ekstensi VM global cakupan organisasi, gunakan
perintah gcloud preview compute global-vm-extension-policies create
dengan flag --organization:
gcloud preview compute global-vm-extension-policies create POLICY_NAME \ --organization=organizations/ORGANIZATION_ID \ --description="DESCRIPTION" \ --extensions=EXTENSION_NAME_1,EXTENSION_NAME_2 \ --version=EXTENSION_NAME_1=VERSION_1,EXTENSION_NAME_2=VERSION_2 \ --config-from-file=EXTENSION_NAME_1=CONFIG_FILE_PATH_1,EXTENSION_NAME_2=CONFIG_FILE_PATH_2 \ --inclusion-labels=KEY_1=VALUE_1 \ --priority=PRIORITY \ --rollout-predefined-plan=ROLLOUT_PLAN \ --rollout-conflict-behavior=ROLLOUT_CONFLICT_BEHAVIOR
Ganti kode berikut:
POLICY_NAME: nama untuk kebijakan ekstensi VM.ORGANIZATION_ID: ID organisasi untuk kebijakan cakupan organisasi. Format resource-nya adalahorganizations/{organization}/global/vmExtensionPolicies/{name}.DESCRIPTION: deskripsi opsional untuk kebijakan.EXTENSION_NAME_1,EXTENSION_NAME_2: daftar ekstensi yang dipisahkan koma untuk ditambahkan ke kebijakan. Anda harus menentukan setidaknya satu ekstensi. Anda dapat menentukan salah satu ekstensi yang didukung berikut:ops-agentgoogle-cloud-sap-extensiongoogle-cloud-workload-extension
EXTENSION_NAME_1=VERSION_1,EXTENSION_NAME_2=VERSION_2: daftar key-value pair yang dipisahkan koma, dengan kunci adalah nama ekstensi dan nilai adalah versi ekstensi. Jika Anda tidak menentukan versi untuk ekstensi, VM Extension Manager akan menggunakan versi terbaru yang tersedia dan otomatis mengupgradenya saat versi baru tersedia.EXTENSION_NAME_1=CONFIG_FILE_PATH_1,EXTENSION_NAME_2=CONFIG_FILE_PATH_2: daftar key-value pair yang dipisahkan koma, dengan kunci adalah nama ekstensi dan nilai adalah jalur ke file konfigurasi untuk ekstensi tersebut. File ini terletak di VM tempat Anda menjalankan perintahgcloud, bukan di VM tempat Anda menginstal ekstensi.Atau, untuk memberikan konfigurasi sebagai string inline, gunakan flag
--config, bukan--config-from-file—misalnya,EXTENSION_NAME_1="CONFIG_1". Anda dapat menggunakan--config-from-fileatau--config, tetapi tidak keduanya dalam perintah yang sama.KEY_1=VALUE_1: daftar key-value pair yang dipisahkan koma, yang menentukan label penyertaan untuk pemilih. VM harus memiliki semua label yang ditentukan dalam pemilih yang akan ditargetkan. Jika Anda menentukan--inclusion-labelsbeberapa kali, kebijakan akan menargetkan VM yang cocok dengan salah satu pemilih yang disediakan (OR logis). Jika Anda menghilangkan flag ini, kebijakan akan menargetkan semua VM di semua project dan zona turunan di bawah organisasi.PRIORITY: bilangan bulat dari0hingga65535yang menentukan prioritas kebijakan. Angka yang lebih kecil menunjukkan prioritas yang lebih tinggi. Nilai defaultnya adalah1000. Jika beberapa kebijakan memiliki prioritas yang sama, VM Extension Manager akan menerapkan kebijakan yang paling baru diupdate ke VM.ROLLOUT_PLAN: tentukanslow_rolloutataufast_rollout. Jika Anda perlu menggunakan rencana peluncuran kustom, tentukan flag--rollout-custom-plan, bukan--rollout-predefined-plan, menggunakan format berikut:--rollout-custom-plan=organizations/ORGANIZATION_ID/locations/global/rolloutPlans/ROLLOUT_PLAN_NAME
Ganti kode berikut:
ORGANIZATION_ID: organisasi tempat rencana peluncuran ditentukan.ROLLOUT_PLAN_NAME: nama rencana peluncuran kustom yang Anda tentukan.
Jika Anda tidak menentukan flag rencana peluncuran, VM Extension Manager akan menggunakan
slow_rollout.ROLLOUT_CONFLICT_BEHAVIOR: menentukan perilaku saat VM Extension Manager mendeteksi konflik antara kebijakan zona dan kebijakan global. Anda dapat menentukan salah satu perilaku konflik berikut:""(string kosong): kebijakan global tidak menimpa kebijakan zona yang bertentangan dan memiliki nama yang sama. Perilaku konflik ini adalah default.overwrite: kebijakan global akan menimpa kebijakan zona yang memiliki nama yang sama, lalu pengelola kebijakan global akan mengelola peluncuran kebijakan di zona tersebut.
Untuk mengetahui informasi selengkapnya, lihat flag
--rollout-conflict-behavior.
Contoh: Membuat kebijakan global lingkup organisasi
Perintah berikut membuat kebijakan global berprioritas tinggi bernama
prod-frontend-policy di tingkat organisasi (organizations/123456789)
untuk workload frontend produksi (env=prod,workload=frontend), menyematkan
versi tertentu untuk ekstensi ops-agent dengan rencana peluncuran lambat:
gcloud preview compute global-vm-extension-policies create prod-frontend-policy \ --organization=organizations/123456789 \ --description="Standard monitoring policy for production frontend VMs" \ --extensions=ops-agent \ --version=ops-agent=2.58.0 \ --config=ops-agent="some-monitoring-config" \ --inclusion-labels="env=prod,workload=frontend" \ --priority=100 \ --rollout-predefined-plan=slow_rollout
REST
Untuk membuat kebijakan ekstensi VM global cakupan organisasi, kirim permintaan POST
ke
metode organizationGlobalVmExtensionPolicies.insert:
POST https://compute.googleapis.com/compute/2026-10-01-preview/organizations/ORGANIZATION_ID/global/vmExtensionPolicies
{
"name": "POLICY_NAME",
"description": "DESCRIPTION",
"extensionPolicies": {
"EXTENSION_NAME_1": {
"stringConfig": "EXTENSION_NAME_1_CONFIG",
"pinnedVersion": "EXTENSION_NAME_1_VERSION"
},
"EXTENSION_NAME_2": {
"stringConfig": "EXTENSION_NAME_2_CONFIG",
"pinnedVersion": "EXTENSION_NAME_2_VERSION"
}
},
"instanceSelectors": [
{
"labelSelector": {
"inclusionLabels": {
"KEY_1": "VALUE_1"
}
}
}
],
"priority": "PRIORITY",
"rolloutOperation": {
"rolloutInput": {
"conflictBehavior": "ROLLOUT_CONFLICT_BEHAVIOR",
"name": "organizations/ORGANIZATION_ID/locations/global/rolloutPlans/ROLLOUT_PLAN_NAME"
}
}
}
Ganti kode berikut:
ORGANIZATION_ID: ID organisasi Anda.POLICY_NAME: nama untuk kebijakan ekstensi VM.DESCRIPTION: deskripsi opsional untuk kebijakan.EXTENSION_NAME_1,EXTENSION_NAME_2: nama ekstensi yang akan ditambahkan ke kebijakan. Anda harus menentukan setidaknya satu ekstensi. Anda dapat menentukan salah satu ekstensi yang didukung berikut:ops-agentgoogle-cloud-sap-extensiongoogle-cloud-workload-extension
EXTENSION_NAME_1_CONFIG,EXTENSION_NAME_2_CONFIG: konfigurasi untuk ekstensi, yang disediakan sebagai string inline.EXTENSION_NAME_1_VERSION,EXTENSION_NAME_2_VERSION: versi ekstensi. Jika Anda tidak menentukan versi untuk ekstensi, VM Extension Manager akan menggunakan versi terbaru yang tersedia dan otomatis mengupgradenya saat versi baru tersedia.KEY_1:VALUE_1: key-value pair yang menentukan label penyertaan untuk pemilih. VM harus memiliki semua label yang ditentukan dalam pemilih yang akan ditargetkan. Jika Anda menentukan beberapainstanceSelectors, kebijakan akan menargetkan VM yang cocok dengan salah satu pemilih yang disediakan (OR logis). Jika Anda menghapusinstanceSelectors, kebijakan akan menargetkan semua VM di semua project dan zona turunan dalam organisasi.PRIORITY: bilangan bulat dari0hingga65535yang menentukan prioritas kebijakan. Angka yang lebih kecil menunjukkan prioritas yang lebih tinggi. Nilai defaultnya adalah1000. Jika beberapa kebijakan memiliki prioritas yang sama, VM Extension Manager akan menerapkan kebijakan yang paling baru diupdate ke VM.ROLLOUT_CONFLICT_BEHAVIOR: menentukan perilaku saat VM Extension Manager mendeteksi konflik antara kebijakan zona dan kebijakan global. Anda dapat menentukan salah satu perilaku konflik berikut:""(string kosong): kebijakan global tidak menimpa kebijakan zona yang bertentangan dan memiliki nama yang sama. Perilaku konflik ini adalah default.overwrite: kebijakan global akan menimpa kebijakan zona yang memiliki nama yang sama, lalu pengelola kebijakan global akan mengelola peluncuran kebijakan di zona tersebut.
Untuk mengetahui informasi selengkapnya, lihat flag
--rollout-conflict-behavior.ROLLOUT_PLAN_NAME: nama rencana peluncuran kustom yang Anda tentukan. Untuk menggunakan rencana peluncuran yang telah ditentukan, ganti kolomnamedenganpredefinedRolloutPlandan tentukan salah satu nilai berikut:SLOW_ROLLOUT: meluncurkan kebijakan selama lima hari. Paket yang telah ditetapkan ini adalah rencana peluncuran default jika Anda tidak menentukan paket.FAST_ROLLOUT: meluncurkan kebijakan segera ke semua zona.
Contoh: Membuat kebijakan global lingkup organisasi
Contoh berikut membuat kebijakan global bernama
org-global-extension-policy yang menginstal ekstensi ops-agent untuk
organisasi 123456789 di VM dengan label env=prod, dengan prioritas 100
dan rencana peluncuran yang telah ditetapkan SLOW_ROLLOUT:
POST https://compute.googleapis.com/compute/2026-10-01-preview/organizations/123456789/global/vmExtensionPolicies { "name": "org-global-extension-policy", "description": "Standard monitoring policy for organization VMs", "extensionPolicies": { "ops-agent": { "stringConfig": "logging: receivers: systemd_logs: type: systemd_journald service: pipelines: systemd_pipeline: receivers: [systemd_logs]", "pinnedVersion": "2.58.0" } }, "instanceSelectors": [ { "labelSelector": { "inclusionLabels": { "env": "prod" } } } ], "priority": "100", "rolloutOperation": { "rolloutInput": { "predefinedRolloutPlan": "SLOW_ROLLOUT" } } }
Menginstal ekstensi VM di semua zona dalam folder
Buat kebijakan ekstensi global cakupan folder untuk menginstal dan mengelola ekstensi VM di semua zona di semua project turunan folder Anda.
Izin IAM yang diperlukan
Untuk mendapatkan izin yang diperlukan untuk membuat kebijakan ekstensi cakupan folder, minta administrator untuk memberi Anda peran IAM Folder level Compute VM extension policies admin (roles/compute.folderVmExtensionPolicyAdmin) di folder Anda.
Untuk mengetahui informasi selengkapnya tentang cara memberikan peran, lihat Mengelola akses ke project, folder, dan organisasi.
Peran bawaan ini berisi izin compute.folderVmExtensionPolicies.create, yang diperlukan untuk membuat kebijakan ekstensi cakupan folder.
Anda mungkin juga bisa mendapatkan izin ini dengan peran khusus atau peran bawaan lainnya.
Untuk membuat kebijakan ekstensi global cakupan folder, pilih salah satu opsi berikut:
gcloud
Untuk membuat kebijakan ekstensi VM global cakupan folder, gunakan
perintah gcloud preview compute global-vm-extension-policies create
dengan flag --folder:
gcloud preview compute global-vm-extension-policies create POLICY_NAME \ --folder=folders/FOLDER_ID \ --description="DESCRIPTION" \ --extensions=EXTENSION_NAME_1,EXTENSION_NAME_2 \ --version=EXTENSION_NAME_1=VERSION_1,EXTENSION_NAME_2=VERSION_2 \ --config-from-file=EXTENSION_NAME_1=CONFIG_FILE_PATH_1,EXTENSION_NAME_2=CONFIG_FILE_PATH_2 \ --inclusion-labels=KEY_1=VALUE_1 \ --priority=PRIORITY \ --rollout-predefined-plan=ROLLOUT_PLAN \ --rollout-conflict-behavior=ROLLOUT_CONFLICT_BEHAVIOR
Ganti kode berikut:
POLICY_NAME: nama untuk kebijakan ekstensi VM.FOLDER_ID: ID folder untuk kebijakan cakupan folder. Format resource-nya adalahfolders/{folder}/global/vmExtensionPolicies/{name}.DESCRIPTION: deskripsi opsional untuk kebijakan.EXTENSION_NAME_1,EXTENSION_NAME_2: daftar ekstensi yang dipisahkan koma untuk ditambahkan ke kebijakan. Anda harus menentukan setidaknya satu ekstensi. Anda dapat menentukan salah satu ekstensi yang didukung berikut:ops-agentgoogle-cloud-sap-extensiongoogle-cloud-workload-extension
EXTENSION_NAME_1=VERSION_1,EXTENSION_NAME_2=VERSION_2: daftar key-value pair yang dipisahkan koma, dengan kunci adalah nama ekstensi dan nilai adalah versi ekstensi. Jika Anda tidak menentukan versi untuk ekstensi, VM Extension Manager akan menggunakan versi terbaru yang tersedia dan otomatis mengupgradenya saat versi baru tersedia.EXTENSION_NAME_1=CONFIG_FILE_PATH_1,EXTENSION_NAME_2=CONFIG_FILE_PATH_2: daftar key-value pair yang dipisahkan koma, dengan kunci adalah nama ekstensi dan nilai adalah jalur ke file konfigurasi untuk ekstensi tersebut. File ini terletak di VM tempat Anda menjalankan perintahgcloud, bukan di VM tempat Anda menginstal ekstensi.Atau, untuk memberikan konfigurasi sebagai string inline, gunakan flag
--config, bukan--config-from-file—misalnya,EXTENSION_NAME_1="CONFIG_1". Anda dapat menggunakan--config-from-fileatau--config, tetapi tidak keduanya dalam perintah yang sama.KEY_1=VALUE_1: daftar key-value pair yang dipisahkan koma, yang menentukan label penyertaan untuk pemilih. VM harus memiliki semua label yang ditentukan dalam pemilih yang akan ditargetkan. Jika Anda menentukan--inclusion-labelsbeberapa kali, kebijakan akan menargetkan VM yang cocok dengan salah satu pemilih yang disediakan (OR logis). Jika Anda menghilangkan flag ini, kebijakan akan menargetkan semua VM di semua project dan zona turunan dalam folder.PRIORITY: bilangan bulat dari0hingga65535yang menentukan prioritas kebijakan. Angka yang lebih kecil menunjukkan prioritas yang lebih tinggi. Nilai defaultnya adalah1000. Jika beberapa kebijakan memiliki prioritas yang sama, VM Extension Manager akan menerapkan kebijakan yang paling baru diupdate ke VM.ROLLOUT_PLAN: tentukanslow_rolloutataufast_rollout. Jika Anda perlu menggunakan rencana peluncuran kustom, tentukan flag--rollout-custom-plan, bukan--rollout-predefined-plan, menggunakan format berikut:--rollout-custom-plan=folders/FOLDER_ID/locations/global/rolloutPlans/ROLLOUT_PLAN_NAME
Ganti kode berikut:
FOLDER_ID: folder tempat rencana peluncuran ditentukan.ROLLOUT_PLAN_NAME: nama rencana peluncuran kustom yang Anda tentukan.
Jika Anda tidak menentukan flag rencana peluncuran, VM Extension Manager akan menggunakan
slow_rollout.ROLLOUT_CONFLICT_BEHAVIOR: menentukan perilaku saat VM Extension Manager mendeteksi konflik antara kebijakan zona dan kebijakan global. Anda dapat menentukan salah satu perilaku konflik berikut:""(string kosong): kebijakan global tidak menimpa kebijakan zona yang bertentangan dan memiliki nama yang sama. Perilaku konflik ini adalah default.overwrite: kebijakan global akan menimpa kebijakan zona yang memiliki nama yang sama, lalu pengelola kebijakan global akan mengelola peluncuran kebijakan di zona tersebut.
Untuk mengetahui informasi selengkapnya, lihat flag
--rollout-conflict-behavior.
Contoh: Membuat kebijakan global cakupan folder
Perintah berikut membuat kebijakan global bernama
folder-global-extension-policy di level folder (folders/123456)
yang menginstal ekstensi ops-agent di VM dengan label env=prod menggunakan
rencana peluncuran lambat:
gcloud preview compute global-vm-extension-policies create folder-global-extension-policy \ --folder=folders/123456 \ --description="Standard monitoring policy for folder VMs" \ --extensions=ops-agent \ --version=ops-agent=2.58.0 \ --config-from-file=ops-agent="/usr/ops-agent-config.yaml" \ --inclusion-labels="env=prod" \ --priority=100 \ --rollout-predefined-plan=slow_rollout
REST
Untuk membuat kebijakan ekstensi VM global cakupan folder, kirim permintaan POST
ke
metode folderGlobalVmExtensionPolicies.insert:
POST https://compute.googleapis.com/compute/2026-10-01-preview/folders/FOLDER_ID/global/vmExtensionPolicies
{
"name": "POLICY_NAME",
"description": "DESCRIPTION",
"extensionPolicies": {
"EXTENSION_NAME_1": {
"stringConfig": "EXTENSION_NAME_1_CONFIG",
"pinnedVersion": "EXTENSION_NAME_1_VERSION"
},
"EXTENSION_NAME_2": {
"stringConfig": "EXTENSION_NAME_2_CONFIG",
"pinnedVersion": "EXTENSION_NAME_2_VERSION"
}
},
"instanceSelectors": [
{
"labelSelector": {
"inclusionLabels": {
"KEY_1": "VALUE_1"
}
}
}
],
"priority": "PRIORITY",
"rolloutOperation": {
"rolloutInput": {
"conflictBehavior": "ROLLOUT_CONFLICT_BEHAVIOR",
"name": "folders/FOLDER_ID/locations/global/rolloutPlans/ROLLOUT_PLAN_NAME"
}
}
}
Ganti kode berikut:
FOLDER_ID: ID folder Anda.POLICY_NAME: nama untuk kebijakan ekstensi VM.DESCRIPTION: deskripsi opsional untuk kebijakan.EXTENSION_NAME_1,EXTENSION_NAME_2: nama ekstensi yang akan ditambahkan ke kebijakan. Anda harus menentukan setidaknya satu ekstensi. Anda dapat menentukan salah satu ekstensi yang didukung berikut:ops-agentgoogle-cloud-sap-extensiongoogle-cloud-workload-extension
EXTENSION_NAME_1_CONFIG,EXTENSION_NAME_2_CONFIG: konfigurasi untuk ekstensi, yang disediakan sebagai string inline.EXTENSION_NAME_1_VERSION,EXTENSION_NAME_2_VERSION: versi ekstensi. Jika Anda tidak menentukan versi untuk ekstensi, VM Extension Manager akan menggunakan versi terbaru yang tersedia dan otomatis mengupgradenya saat versi baru tersedia.KEY_1:VALUE_1: key-value pair yang menentukan label penyertaan untuk pemilih. VM harus memiliki semua label yang ditentukan dalam pemilih yang akan ditargetkan. Jika Anda menentukan beberapainstanceSelectors, kebijakan akan menargetkan VM yang cocok dengan salah satu pemilih yang disediakan (OR logis). Jika Anda menghilangkaninstanceSelectors, kebijakan akan menargetkan semua VM di semua project dan zona turunan dalam folder.PRIORITY: bilangan bulat dari0hingga65535yang menentukan prioritas kebijakan. Angka yang lebih kecil menunjukkan prioritas yang lebih tinggi. Nilai defaultnya adalah1000. Jika beberapa kebijakan memiliki prioritas yang sama, VM Extension Manager akan menerapkan kebijakan yang paling baru diupdate ke VM.ROLLOUT_CONFLICT_BEHAVIOR: menentukan perilaku saat VM Extension Manager mendeteksi konflik antara kebijakan zona dan kebijakan global. Anda dapat menentukan salah satu perilaku konflik berikut:""(string kosong): kebijakan global tidak menimpa kebijakan zona yang bertentangan dan memiliki nama yang sama. Perilaku konflik ini adalah default.overwrite: kebijakan global akan menimpa kebijakan zona yang memiliki nama yang sama, lalu pengelola kebijakan global akan mengelola peluncuran kebijakan di zona tersebut.
Untuk mengetahui informasi selengkapnya, lihat flag
--rollout-conflict-behavior.ROLLOUT_PLAN_NAME: nama rencana peluncuran kustom yang Anda tentukan. Untuk menggunakan rencana peluncuran yang telah ditentukan, ganti kolomnamedenganpredefinedRolloutPlandan tentukan salah satu nilai berikut:SLOW_ROLLOUT: meluncurkan kebijakan selama lima hari. Paket yang telah ditetapkan ini adalah rencana peluncuran default jika Anda tidak menentukan paket.FAST_ROLLOUT: meluncurkan kebijakan segera ke semua zona.
Contoh: Membuat kebijakan global cakupan folder
Contoh berikut membuat kebijakan global bernama
folder-global-extension-policy yang menginstal ekstensi ops-agent
untuk folder 123456 di VM dengan label env=prod, dengan prioritas 500 dan
rencana peluncuran standar SLOW_ROLLOUT:
POST https://compute.googleapis.com/compute/2026-10-01-preview/folders/123456/global/vmExtensionPolicies { "name": "folder-global-extension-policy", "description": "Test extension policy for Ops Agent at folder level", "extensionPolicies": { "ops-agent": { "stringConfig": "logging: receivers: systemd_logs: type: systemd_journald service: pipelines: systemd_pipeline: receivers: [systemd_logs]", "pinnedVersion": "2.58.0" } }, "instanceSelectors": [ { "labelSelector": { "inclusionLabels": { "env": "prod" } } } ], "priority": "500", "rolloutOperation": { "rolloutInput": { "predefinedRolloutPlan": "SLOW_ROLLOUT" } } }
Menginstal ekstensi VM di semua zona dalam project
Buat kebijakan ekstensi global cakupan project untuk menginstal dan mengelola ekstensi VM di semua zona dalam project Anda.
Izin IAM yang diperlukan
Untuk mendapatkan izin yang diperlukan untuk membuat kebijakan ekstensi cakupan project, minta administrator untuk memberi Anda peran IAM Compute VM extension policies admin (roles/compute.vmExtensionPolicyAdmin) di project Anda.
Untuk mengetahui informasi selengkapnya tentang pemberian peran, lihat Mengelola akses ke project, folder, dan organisasi.
Peran bawaan ini berisi izin
compute.vmExtensionPolicies.create,
yang diperlukan untuk
membuat kebijakan ekstensi cakupan project.
Anda mungkin juga bisa mendapatkan izin ini dengan peran khusus atau peran bawaan lainnya.
Untuk membuat kebijakan ekstensi global cakupan project, pilih salah satu opsi berikut:
Konsol
Untuk membuat kebijakan ekstensi VM global cakupan project di konsol Google Cloud , selesaikan langkah-langkah berikut:
- Di konsol Google Cloud , buka halaman VM extension policies.
- Klik Create extension policy.
- Di kolom Name, masukkan nama untuk kebijakan.
- Opsional: Di kolom Description, masukkan deskripsi untuk kebijakan.
- Di kolom Priority, tentukan nomor prioritas untuk menyelesaikan konflik
antar-kebijakan. Angka yang lebih kecil menunjukkan prioritas yang lebih tinggi. Nilai defaultnya adalah
1000. - Di bagian Cakupan, pilih Peluncuran global.
- Di bagian Manage extensions, klik Add extension dan lakukan hal berikut untuk setiap ekstensi yang ingin Anda instal di VM target:
- Dari daftar Ekstensi, pilih ekstensi. Untuk mengetahui informasi selengkapnya, lihat Ekstensi yang didukung.
- Dari daftar Version, tentukan nomor versi ekstensi. Kosongkan untuk memilih versi terbaru.
- Untuk Agen Operasional, Anda dapat menentukan versi
2.58.0atau yang lebih baru. - Untuk Extension for SAP dan Extension for Compute Workloads, kosongkan kolom untuk memilih versi terbaru.
- Untuk Agen Operasional, Anda dapat menentukan versi
- Opsional: Di kolom Config file content, masukkan parameter konfigurasi untuk ekstensi.
- Di kolom Rencana peluncuran, pilih rencana peluncuran dari opsi berikut:
- Peluncuran lambat: menginstal ekstensi secara bertahap di seluruh fleet VM Anda selama jangka waktu tertentu. Rencana peluncuran ini adalah opsi default.
- Fast rollout: menginstal ekstensi ke semua VM yang ditargetkan di semua zona dan region secara langsung.
Untuk mengetahui informasi selengkapnya tentang rencana peluncuran, lihat Rencana peluncuran.
- Di bagian Target VM instances, pilih VM untuk kebijakan. Untuk memilih VM dengan label tertentu, klik Tambahkan label dan tambahkan pasangan nilai kunci.
- Klik Create.
gcloud
Untuk membuat kebijakan ekstensi VM global cakupan project, gunakan
perintah gcloud compute global-vm-extension-policies create:
gcloud compute global-vm-extension-policies create POLICY_NAME \ --project=PROJECT_ID \ --description="DESCRIPTION" \ --extensions=EXTENSION_NAME_1,EXTENSION_NAME_2 \ --version=EXTENSION_NAME_1=VERSION_1,EXTENSION_NAME_2=VERSION_2 \ --config-from-file=EXTENSION_NAME_1=CONFIG_FILE_PATH_1,EXTENSION_NAME_2=CONFIG_FILE_PATH_2 \ --inclusion-labels=KEY_1=VALUE_1 \ --priority=PRIORITY \ --rollout-predefined-plan=ROLLOUT_PLAN \ --rollout-conflict-behavior=ROLLOUT_CONFLICT_BEHAVIOR
Ganti kode berikut:
POLICY_NAME: nama untuk kebijakan ekstensi VM.PROJECT_ID: project ID untuk kebijakan cakupan project.DESCRIPTION: deskripsi opsional untuk kebijakan.EXTENSION_NAME_1,EXTENSION_NAME_2: daftar ekstensi yang dipisahkan koma untuk ditambahkan ke kebijakan. Anda harus menentukan setidaknya satu ekstensi. Anda dapat menentukan salah satu ekstensi yang didukung berikut:ops-agentgoogle-cloud-sap-extensiongoogle-cloud-workload-extension
EXTENSION_NAME_1=VERSION_1,EXTENSION_NAME_2=VERSION_2: daftar key-value pair yang dipisahkan koma, dengan kunci adalah nama ekstensi dan nilai adalah versi ekstensi. Jika Anda tidak menentukan versi untuk ekstensi, VM Extension Manager akan menggunakan versi terbaru yang tersedia dan otomatis mengupgradenya saat versi baru tersedia.EXTENSION_NAME_1=CONFIG_FILE_PATH_1,EXTENSION_NAME_2=CONFIG_FILE_PATH_2: daftar key-value pair yang dipisahkan koma, dengan kunci adalah nama ekstensi dan nilai adalah jalur ke file konfigurasi untuk ekstensi tersebut. File ini terletak di VM tempat Anda menjalankan perintahgcloud, bukan di VM tempat Anda menginstal ekstensi.Atau, untuk memberikan konfigurasi sebagai string inline, gunakan flag
--config, bukan--config-from-file—misalnya,EXTENSION_NAME_1="CONFIG_1". Anda dapat menggunakan--config-from-fileatau--config, tetapi tidak keduanya dalam perintah yang sama.KEY_1=VALUE_1: daftar key-value pair yang dipisahkan koma, yang menentukan label penyertaan untuk pemilih. VM harus memiliki semua label yang ditentukan dalam pemilih yang akan ditargetkan. Jika Anda menentukan--inclusion-labelsbeberapa kali, kebijakan akan menargetkan VM yang cocok dengan salah satu pemilih yang disediakan (OR logis). Jika Anda menghilangkan flag ini, kebijakan akan menargetkan semua VM di project Anda di semua zona.PRIORITY: bilangan bulat dari0hingga65535yang menentukan prioritas kebijakan. Angka yang lebih kecil menunjukkan prioritas yang lebih tinggi. Nilai defaultnya adalah1000. Jika beberapa kebijakan memiliki prioritas yang sama, VM Extension Manager akan menerapkan kebijakan yang paling baru diupdate ke VM.ROLLOUT_PLAN: tentukanslow_rolloutataufast_rollout. Jika Anda perlu menggunakan rencana peluncuran kustom, tentukan flag--rollout-custom-plan, bukan--rollout-predefined-plan, menggunakan format berikut:--rollout-custom-plan=projects/PROJECT_NUMBER/locations/global/rolloutPlans/ROLLOUT_PLAN_NAME
Ganti kode berikut:
PROJECT_NUMBER: project tempat rencana peluncuran ditentukan.ROLLOUT_PLAN_NAME: nama rencana peluncuran kustom yang Anda tentukan.
Jika Anda tidak menentukan flag rencana peluncuran, VM Extension Manager akan menggunakan
slow_rollout.ROLLOUT_CONFLICT_BEHAVIOR: menentukan perilaku saat VM Extension Manager mendeteksi konflik antara kebijakan zona dan kebijakan global. Anda dapat menentukan salah satu perilaku konflik berikut:""(string kosong): kebijakan global tidak menimpa kebijakan zona yang bertentangan dan memiliki nama yang sama. Perilaku konflik ini adalah default.overwrite: kebijakan global akan menimpa kebijakan zona yang memiliki nama yang sama, lalu pengelola kebijakan global akan mengelola peluncuran kebijakan di zona tersebut.
Untuk mengetahui informasi selengkapnya, lihat flag
--rollout-conflict-behavior.
Contoh: Membuat kebijakan global lingkup project
Perintah berikut membuat kebijakan bernama global-test-extension-policy yang menginstal
ekstensi ops-agent untuk project test-project.
Flag --config-from-file menentukan jalur ke file lokal yang berisi konfigurasi YAML untuk Agen Operasional, dan --rollout-predefined-plan menentukan paket slow_rollout.
gcloud compute global-vm-extension-policies create global-test-extension-policy \ --project=test-project \ --extensions=ops-agent \ --config-from-file=ops-agent="/usr/ops-agent-config.yaml" \ --rollout-predefined-plan=slow_rollout
Contoh: Membuat kebijakan global cakupan project dengan rencana peluncuran kustom
Perintah berikut akan membuat kebijakan bernama global-test-extension-policy-2 yang
menginstal ekstensi ops-agent untuk project
test-project di VM dengan label env=prod. Prioritas kebijakan ditetapkan ke
500, dan flag --config-from-file menentukan jalur ke file lokal
yang berisi konfigurasi YAML untuk Agen Operasional. Flag
--rollout-custom-plan menentukan rencana peluncuran kustom.
gcloud compute global-vm-extension-policies create global-test-extension-policy-2 \ --project=test-project \ --extensions=ops-agent \ --config-from-file=ops-agent="/usr/ops-agent-config.yaml" \ --priority=500 \ --inclusion-labels=env=prod \ --rollout-custom-plan=projects/12345678/locations/global/rolloutPlans/test-rollout-plan
REST
Untuk membuat kebijakan ekstensi VM global cakupan project, kirim permintaan POST
ke metode globalVmExtensionPolicies.insert.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/vmExtensionPolicies
{
"name": "POLICY_NAME",
"description": "DESCRIPTION",
"extensionPolicies": {
"EXTENSION_NAME_1": {
"stringConfig": "EXTENSION_NAME_1_CONFIG",
"pinnedVersion": "EXTENSION_NAME_1_VERSION"
},
"EXTENSION_NAME_2": {
"stringConfig": "EXTENSION_NAME_2_CONFIG",
"pinnedVersion": "EXTENSION_NAME_2_VERSION"
}
},
"instanceSelectors": [
{
"labelSelector": {
"inclusionLabels": {
"KEY_1": "VALUE_1"
}
}
}
],
"priority": "PRIORITY",
"rolloutOperation": {
"rolloutInput": {
"conflictBehavior": "ROLLOUT_CONFLICT_BEHAVIOR",
"name": "projects/PROJECT_NUMBER/locations/global/rolloutPlans/ROLLOUT_PLAN_NAME"
}
}
}
Ganti kode berikut:
PROJECT_ID: project ID Anda.POLICY_NAME: nama untuk kebijakan ekstensi VM.DESCRIPTION: deskripsi opsional untuk kebijakan.EXTENSION_NAME_1,EXTENSION_NAME_2: nama ekstensi yang akan ditambahkan ke kebijakan. Anda harus menentukan setidaknya satu ekstensi. Anda dapat menentukan salah satu ekstensi yang didukung berikut:ops-agentgoogle-cloud-sap-extensiongoogle-cloud-workload-extension
EXTENSION_NAME_1_CONFIG,EXTENSION_NAME_2_CONFIG: konfigurasi untuk ekstensi, yang disediakan sebagai string inline.EXTENSION_NAME_1_VERSION,EXTENSION_NAME_2_VERSION: versi ekstensi. Jika Anda tidak menentukan versi untuk ekstensi, VM Extension Manager akan menggunakan versi terbaru yang tersedia dan otomatis mengupgradenya saat versi baru tersedia.KEY_1:VALUE_1: key-value pair yang menentukan label penyertaan untuk pemilih. VM harus memiliki semua label yang ditentukan dalam pemilih yang akan ditargetkan. Jika Anda menentukan beberapainstanceSelectors, kebijakan akan menargetkan VM yang cocok dengan salah satu pemilih yang disediakan (OR logis). Jika Anda menghilangkaninstanceSelectors, kebijakan akan menargetkan semua VM di project Anda di semua zona.PRIORITY: bilangan bulat dari0hingga65535yang menentukan prioritas kebijakan. Angka yang lebih kecil menunjukkan prioritas yang lebih tinggi. Nilai defaultnya adalah1000. Jika beberapa kebijakan memiliki prioritas yang sama, VM Extension Manager akan menerapkan kebijakan yang paling baru diupdate ke VM.ROLLOUT_CONFLICT_BEHAVIOR: menentukan perilaku saat VM Extension Manager mendeteksi konflik antara kebijakan zona dan kebijakan global. Anda dapat menentukan salah satu perilaku konflik berikut:""(string kosong): kebijakan global tidak menimpa kebijakan zona yang bertentangan dan memiliki nama yang sama. Perilaku konflik ini adalah default.overwrite: kebijakan global akan menimpa kebijakan zona yang memiliki nama yang sama, lalu pengelola kebijakan global akan mengelola peluncuran kebijakan di zona tersebut.
Untuk mengetahui informasi selengkapnya, lihat flag
--rollout-conflict-behavior.PROJECT_NUMBER: project tempat rencana peluncuran kustom ditentukan.ROLLOUT_PLAN_NAME: nama rencana peluncuran kustom yang Anda tentukan. Untuk menggunakan rencana peluncuran yang telah ditentukan, ganti kolomnamedenganpredefinedRolloutPlandan tentukan salah satu nilai berikut:SLOW_ROLLOUT: meluncurkan kebijakan selama lima hari. Paket yang telah ditetapkan ini adalah rencana peluncuran default jika Anda tidak menentukan paket.FAST_ROLLOUT: meluncurkan kebijakan segera ke semua zona.
Contoh: Membuat kebijakan global lingkup project
Contoh berikut membuat kebijakan bernama global-test-extension-policy yang
menginstal ekstensi ops-agent untuk project
12345678 di VM dengan label env=prod. Prioritas kebijakan ditetapkan ke
500, dan menggunakan rencana peluncuran test-rollout-plan.
POST https://compute.googleapis.com/compute/v1/projects/12345678/global/vmExtensionPolicies { "name": "global-test-extension-policy", "description": "Test extension policy for Ops Agent", "extensionPolicies": { "ops-agent": { "stringConfig": "logging: receivers: systemd_logs: type: systemd_journald service: pipelines: systemd_pipeline: receivers: [systemd_logs]", "pinnedVersion": "2.58.0" } }, "instanceSelectors": [ { "labelSelector": { "inclusionLabels": { "env": "prod" } } } ], "priority": "500", "rolloutOperation": { "rolloutInput": { "name": "projects/12345678/locations/global/rolloutPlans/test-rollout-plan" } } }
Menginstal ekstensi VM dengan membuat kebijakan ekstensi VM zona
Anda dapat membuat kebijakan ekstensi VM zona untuk menentukan ekstensi yang akan diinstal dan di VM mana dalam zona tertentu. Anda dapat menentukan kebijakan zona di level project, atau di level folder atau organisasi (tersedia dalam Pratinjau).
Menginstal ekstensi VM di zona di seluruh organisasi
Buat kebijakan ekstensi zona cakupan organisasi untuk menginstal dan mengelola ekstensi VM di zona tertentu di semua project turunan organisasi Anda.
Izin IAM yang diperlukan
Untuk mendapatkan izin yang
diperlukan untuk membuat kebijakan ekstensi cakupan organisasi,
minta administrator untuk memberi Anda peran IAM
Organization level Compute VM extension policies admin (roles/compute.orgVmExtensionPolicyAdmin)
di organisasi Anda.
Untuk mengetahui informasi selengkapnya tentang cara memberikan peran, lihat Mengelola akses ke project, folder, dan organisasi.
Peran yang telah ditentukan ini berisi izin
compute.orgVmExtensionPolicies.create,
yang diperlukan untuk
membuat kebijakan ekstensi cakupan organisasi.
Anda mungkin juga bisa mendapatkan izin ini dengan peran khusus atau peran bawaan lainnya.
Untuk membuat kebijakan ekstensi zona cakupan organisasi, pilih salah satu opsi berikut:
gcloud
Untuk membuat kebijakan ekstensi VM zona cakupan organisasi dan meluncurkan
kebijakan tersebut ke VM di zona tertentu, gunakan
perintah gcloud preview compute zone-vm-extension-policies create
dengan flag --organization:
gcloud preview compute zone-vm-extension-policies create POLICY_NAME \ --organization=organizations/ORGANIZATION_ID \ --zone=ZONE \ --description="DESCRIPTION" \ --extensions=EXTENSION_NAME_1,EXTENSION_NAME_2 \ --version=EXTENSION_NAME_1=VERSION_1,EXTENSION_NAME_2=VERSION_2 \ --config-from-file=EXTENSION_NAME_1=CONFIG_FILE_PATH_1,EXTENSION_NAME_2=CONFIG_FILE_PATH_2 \ --inclusion-labels=KEY_1=VALUE_1 \ --priority=PRIORITY
Ganti kode berikut:
POLICY_NAME: nama untuk kebijakan ekstensi VM.ORGANIZATION_ID: ID organisasi untuk kebijakan cakupan organisasi. Format resource-nya adalahorganizations/{organization}/zones/{zone}/vmExtensionPolicies/{name}.ZONE: zona tempat kebijakan ini berlaku.DESCRIPTION: deskripsi opsional untuk kebijakan.EXTENSION_NAME_1,EXTENSION_NAME_2: daftar ekstensi yang dipisahkan koma untuk ditambahkan ke kebijakan. Anda harus menentukan setidaknya satu ekstensi. Anda dapat menentukan salah satu ekstensi yang didukung berikut:ops-agentgoogle-cloud-sap-extensiongoogle-cloud-workload-extension
EXTENSION_NAME_1=VERSION_1,EXTENSION_NAME_2=VERSION_2: daftar key-value pair yang dipisahkan koma, dengan kunci adalah nama ekstensi dan nilai adalah versi ekstensi. Jika Anda tidak menentukan versi untuk ekstensi, VM Extension Manager akan menggunakan versi terbaru yang tersedia dan otomatis mengupgradenya saat versi baru tersedia.EXTENSION_NAME_1=CONFIG_FILE_PATH_1,EXTENSION_NAME_2=CONFIG_FILE_PATH_2: daftar key-value pair yang dipisahkan koma, dengan kunci adalah nama ekstensi dan nilai adalah jalur ke file konfigurasi untuk ekstensi tersebut. File ini terletak di VM tempat Anda menjalankan perintahgcloud, bukan di VM tempat Anda menginstal ekstensi.Atau, untuk memberikan konfigurasi sebagai string inline, gunakan flag
--config, bukan--config-from-file—misalnya,EXTENSION_NAME_1="CONFIG_1". Anda dapat menggunakan--config-from-fileatau--config, tetapi tidak keduanya dalam perintah yang sama.KEY_1=VALUE_1: daftar key-value pair yang dipisahkan koma, yang menentukan label penyertaan untuk pemilih. VM harus memiliki semua label yang ditentukan dalam pemilih yang akan ditargetkan. Jika Anda menentukan--inclusion-labelsbeberapa kali, kebijakan akan menargetkan VM yang cocok dengan salah satu pemilih yang disediakan (OR logis). Jika Anda menghilangkan flag ini, kebijakan akan menargetkan semua VM di zona yang ditentukan di semua project turunan dalam organisasi.PRIORITY: bilangan bulat dari0hingga65535yang menentukan prioritas kebijakan. Angka yang lebih kecil menunjukkan prioritas yang lebih tinggi. Nilai defaultnya adalah1000. Jika beberapa kebijakan memiliki prioritas yang sama, VM Extension Manager akan menerapkan kebijakan yang paling baru diupdate ke VM.
Perintah akan gagal jika kebijakan dengan nama yang ditentukan sudah ada di zona.
Contoh: Membuat kebijakan zona lingkup organisasi
Perintah berikut membuat kebijakan zona bernama org-test-extension-policy
yang menginstal ekstensi ops-agent di zona us-central1-f untuk
organisasi organizations/123456789 di VM dengan label env=prod:
gcloud preview compute zone-vm-extension-policies create org-test-extension-policy \ --organization=organizations/123456789 \ --zone=us-central1-f \ --extensions=ops-agent \ --config-from-file=ops-agent="/usr/ops-agent-config.yaml" \ --priority=100 \ --inclusion-labels=env=prod
REST
Untuk membuat kebijakan ekstensi VM zona cakupan organisasi, kirim permintaan POST
ke
metode organizationZoneVmExtensionPolicies.insert.
Metode ini menentukan ekstensi yang akan diinstal dan VM yang akan diinstal di zona tertentu di seluruh organisasi.
POST https://compute.googleapis.com/compute/2026-10-01-preview/organizations/ORGANIZATION_ID/zones/ZONE/vmExtensionPolicies
{
"name": "POLICY_NAME",
"description": "DESCRIPTION",
"extensionPolicies": {
"EXTENSION_NAME_1": {
"stringConfig": "EXTENSION_NAME_1_CONFIG",
"pinnedVersion": "EXTENSION_NAME_1_VERSION"
},
"EXTENSION_NAME_2": {
"stringConfig": "EXTENSION_NAME_2_CONFIG",
"pinnedVersion": "EXTENSION_NAME_2_VERSION"
}
},
"instanceSelectors": [
{
"labelSelector": {
"inclusionLabels": {
"KEY_1": "VALUE_1"
}
}
}
],
"priority": "PRIORITY"
}
Ganti kode berikut:
ORGANIZATION_ID: ID organisasi Anda.ZONE: zona tempat kebijakan ini berlaku.POLICY_NAME: nama untuk kebijakan ekstensi VM.DESCRIPTION: deskripsi opsional untuk kebijakan.EXTENSION_NAME_1,EXTENSION_NAME_2: nama ekstensi yang akan ditambahkan ke kebijakan. Anda harus menentukan setidaknya satu ekstensi. Anda dapat menentukan salah satu ekstensi yang didukung berikut:ops-agentgoogle-cloud-sap-extensiongoogle-cloud-workload-extension
EXTENSION_NAME_1_CONFIG,EXTENSION_NAME_2_CONFIG: konfigurasi untuk ekstensi, yang disediakan sebagai string inline.EXTENSION_NAME_1_VERSION,EXTENSION_NAME_2_VERSION: versi ekstensi. Jika Anda tidak menentukan versi untuk ekstensi, VM Extension Manager akan menggunakan versi terbaru yang tersedia dan otomatis mengupgradenya saat versi baru tersedia.KEY_1:VALUE_1: key-value pair yang menentukan label penyertaan untuk pemilih. VM harus memiliki semua label yang ditentukan dalam pemilih yang akan ditargetkan. Jika Anda menentukan beberapainstanceSelectors, kebijakan akan menargetkan VM yang cocok dengan salah satu pemilih yang disediakan (OR logis). Jika Anda menghapusinstanceSelectors, kebijakan akan menargetkan semua VM di zona yang ditentukan di semua project turunan dalam organisasi.PRIORITY: bilangan bulat dari0hingga65535yang menentukan prioritas kebijakan. Angka yang lebih kecil menunjukkan prioritas yang lebih tinggi. Nilai defaultnya adalah1000. Jika beberapa kebijakan memiliki prioritas yang sama, VM Extension Manager akan menerapkan kebijakan yang paling baru diupdate ke VM.
Contoh: Membuat kebijakan zona lingkup organisasi
Contoh berikut membuat kebijakan bernama org-test-extension-policy
yang menginstal ekstensi ops-agent di zona us-central1-f untuk
organisasi 123456789.
POST https://compute.googleapis.com/compute/2026-10-01-preview/organizations/123456789/zones/us-central1-f/vmExtensionPolicies { "name": "org-test-extension-policy", "description": "Test extension policy for Ops Agent at organization level", "extensionPolicies": { "ops-agent": { "stringConfig": "logging: receivers: systemd_logs: type: systemd_journald service: pipelines: systemd_pipeline: receivers: [systemd_logs]", "pinnedVersion": "2.58.0" } }, "instanceSelectors": [ { "labelSelector": { "inclusionLabels": { "env": "prod" } } } ], "priority": "100" }
Menginstal ekstensi VM di zona di seluruh folder
Buat kebijakan ekstensi zona cakupan folder untuk menginstal dan mengelola ekstensi VM di zona tertentu di semua project turunan folder Anda.
Izin IAM yang diperlukan
Untuk mendapatkan izin yang diperlukan untuk membuat kebijakan ekstensi cakupan folder, minta administrator untuk memberi Anda peran IAM Folder level Compute VM extension policies admin (roles/compute.folderVmExtensionPolicyAdmin) di folder Anda.
Untuk mengetahui informasi selengkapnya tentang cara memberikan peran, lihat Mengelola akses ke project, folder, dan organisasi.
Peran bawaan ini berisi izin compute.folderVmExtensionPolicies.create, yang diperlukan untuk membuat kebijakan ekstensi cakupan folder.
Anda mungkin juga bisa mendapatkan izin ini dengan peran khusus atau peran bawaan lainnya.
Untuk membuat kebijakan ekstensi zona cakupan folder, pilih salah satu opsi berikut:
gcloud
Untuk membuat kebijakan ekstensi VM zonal cakupan folder dan meluncurkan kebijakan
ke VM di zona tertentu, gunakan
perintah gcloud preview compute zone-vm-extension-policies create
dengan flag --folder:
gcloud preview compute zone-vm-extension-policies create POLICY_NAME \ --folder=folders/FOLDER_ID \ --zone=ZONE \ --description="DESCRIPTION" \ --extensions=EXTENSION_NAME_1,EXTENSION_NAME_2 \ --version=EXTENSION_NAME_1=VERSION_1,EXTENSION_NAME_2=VERSION_2 \ --config-from-file=EXTENSION_NAME_1=CONFIG_FILE_PATH_1,EXTENSION_NAME_2=CONFIG_FILE_PATH_2 \ --inclusion-labels=KEY_1=VALUE_1 \ --priority=PRIORITY
Ganti kode berikut:
POLICY_NAME: nama untuk kebijakan ekstensi VM.FOLDER_ID: ID folder untuk kebijakan cakupan folder. Format resource-nya adalahfolders/{folder}/zones/{zone}/vmExtensionPolicies/{name}.ZONE: zona tempat kebijakan ini berlaku.DESCRIPTION: deskripsi opsional untuk kebijakan.EXTENSION_NAME_1,EXTENSION_NAME_2: daftar ekstensi yang dipisahkan koma untuk ditambahkan ke kebijakan. Anda harus menentukan setidaknya satu ekstensi. Anda dapat menentukan salah satu ekstensi yang didukung berikut:ops-agentgoogle-cloud-sap-extensiongoogle-cloud-workload-extension
EXTENSION_NAME_1=VERSION_1,EXTENSION_NAME_2=VERSION_2: daftar key-value pair yang dipisahkan koma, dengan kunci adalah nama ekstensi dan nilai adalah versi ekstensi. Jika Anda tidak menentukan versi untuk ekstensi, VM Extension Manager akan menggunakan versi terbaru yang tersedia dan otomatis mengupgradenya saat versi baru tersedia.EXTENSION_NAME_1=CONFIG_FILE_PATH_1,EXTENSION_NAME_2=CONFIG_FILE_PATH_2: daftar key-value pair yang dipisahkan koma, dengan kunci adalah nama ekstensi dan nilai adalah jalur ke file konfigurasi untuk ekstensi tersebut. File ini terletak di VM tempat Anda menjalankan perintahgcloud, bukan di VM tempat Anda menginstal ekstensi.Atau, untuk memberikan konfigurasi sebagai string inline, gunakan flag
--config, bukan--config-from-file—misalnya,EXTENSION_NAME_1="CONFIG_1". Anda dapat menggunakan--config-from-fileatau--config, tetapi tidak keduanya dalam perintah yang sama.KEY_1=VALUE_1: daftar key-value pair yang dipisahkan koma, yang menentukan label penyertaan untuk pemilih. VM harus memiliki semua label yang ditentukan dalam pemilih yang akan ditargetkan. Jika Anda menentukan--inclusion-labelsbeberapa kali, kebijakan akan menargetkan VM yang cocok dengan salah satu pemilih yang disediakan (OR logis). Jika Anda menghilangkan flag ini, kebijakan akan menargetkan semua VM di zona yang ditentukan di semua project turunan dalam folder.PRIORITY: bilangan bulat dari0hingga65535yang menentukan prioritas kebijakan. Angka yang lebih kecil menunjukkan prioritas yang lebih tinggi. Nilai defaultnya adalah1000. Jika beberapa kebijakan memiliki prioritas yang sama, VM Extension Manager akan menerapkan kebijakan yang paling baru diupdate ke VM.
Perintah akan gagal jika kebijakan dengan nama yang ditentukan sudah ada di zona.
Contoh: Membuat kebijakan zona tercakup folder
Perintah berikut membuat kebijakan zona bernama folder-test-extension-policy
yang menginstal ekstensi ops-agent di zona us-central1-f untuk folder
folders/123456 di VM dengan label env=prod:
gcloud preview compute zone-vm-extension-policies create folder-test-extension-policy \ --folder=folders/123456 \ --zone=us-central1-f \ --extensions=ops-agent \ --config-from-file=ops-agent="/usr/ops-agent-config.yaml" \ --priority=500 \ --inclusion-labels=env=prod
REST
Untuk membuat kebijakan ekstensi VM zona cakupan folder, kirim permintaan POST
ke
metode folderZoneVmExtensionPolicies.insert.
Metode ini menentukan ekstensi yang akan diinstal dan VM mana di zona tertentu di seluruh folder.
POST https://compute.googleapis.com/compute/2026-10-01-preview/folders/FOLDER_ID/zones/ZONE/vmExtensionPolicies
{
"name": "POLICY_NAME",
"description": "DESCRIPTION",
"extensionPolicies": {
"EXTENSION_NAME_1": {
"stringConfig": "EXTENSION_NAME_1_CONFIG",
"pinnedVersion": "EXTENSION_NAME_1_VERSION"
},
"EXTENSION_NAME_2": {
"stringConfig": "EXTENSION_NAME_2_CONFIG",
"pinnedVersion": "EXTENSION_NAME_2_VERSION"
}
},
"instanceSelectors": [
{
"labelSelector": {
"inclusionLabels": {
"KEY_1": "VALUE_1"
}
}
}
],
"priority": "PRIORITY"
}
Ganti kode berikut:
FOLDER_ID: ID folder Anda.ZONE: zona tempat kebijakan ini berlaku.POLICY_NAME: nama untuk kebijakan ekstensi VM.DESCRIPTION: deskripsi opsional untuk kebijakan.EXTENSION_NAME_1,EXTENSION_NAME_2: nama ekstensi yang akan ditambahkan ke kebijakan. Anda harus menentukan setidaknya satu ekstensi. Anda dapat menentukan salah satu ekstensi yang didukung berikut:ops-agentgoogle-cloud-sap-extensiongoogle-cloud-workload-extension
EXTENSION_NAME_1_CONFIG,EXTENSION_NAME_2_CONFIG: konfigurasi untuk ekstensi, yang disediakan sebagai string inline.EXTENSION_NAME_1_VERSION,EXTENSION_NAME_2_VERSION: versi ekstensi. Jika Anda tidak menentukan versi untuk ekstensi, VM Extension Manager akan menggunakan versi terbaru yang tersedia dan otomatis mengupgradenya saat versi baru tersedia.KEY_1:VALUE_1: key-value pair yang menentukan label penyertaan untuk pemilih. VM harus memiliki semua label yang ditentukan dalam pemilih yang akan ditargetkan. Jika Anda menentukan beberapainstanceSelectors, kebijakan akan menargetkan VM yang cocok dengan salah satu pemilih yang disediakan (OR logis). Jika Anda menghapusinstanceSelectors, kebijakan akan menargetkan semua VM di zona yang ditentukan di semua project turunan dalam folder.PRIORITY: bilangan bulat dari0hingga65535yang menentukan prioritas kebijakan. Angka yang lebih kecil menunjukkan prioritas yang lebih tinggi. Nilai defaultnya adalah1000. Jika beberapa kebijakan memiliki prioritas yang sama, VM Extension Manager akan menerapkan kebijakan yang paling baru diupdate ke VM.
Contoh: Membuat kebijakan zona tercakup folder
Contoh berikut membuat kebijakan bernama folder-test-extension-policy
yang menginstal ekstensi ops-agent di zona us-central1-f untuk folder
123456.
POST https://compute.googleapis.com/compute/2026-10-01-preview/folders/123456/zones/us-central1-f/vmExtensionPolicies
{
"name": "folder-test-extension-policy",
"description": "Test extension policy for Ops Agent at folder level",
"extensionPolicies": {
"ops-agent": {
"stringConfig": "logging:
receivers:
systemd_logs:
type: systemd_journald
service:
pipelines:
systemd_pipeline:
receivers: [systemd_logs]",
"pinnedVersion": "2.58.0"
}
},
"instanceSelectors": [
{
"labelSelector": {
"inclusionLabels": {
"env": "test"
}
}
}
],
"priority": "500"
}
Menginstal ekstensi VM di zona dalam project
Buat kebijakan ekstensi zonal cakupan project untuk menginstal dan mengelola ekstensi VM di zona tertentu dalam project Anda.
Izin IAM yang diperlukan
Untuk mendapatkan izin yang diperlukan untuk membuat kebijakan ekstensi cakupan project, minta administrator untuk memberi Anda peran IAM Compute VM extension policies admin (roles/compute.vmExtensionPolicyAdmin) di project Anda.
Untuk mengetahui informasi selengkapnya tentang pemberian peran, lihat Mengelola akses ke project, folder, dan organisasi.
Peran bawaan ini berisi izin
compute.vmExtensionPolicies.create,
yang diperlukan untuk
membuat kebijakan ekstensi cakupan project.
Anda mungkin juga bisa mendapatkan izin ini dengan peran khusus atau peran bawaan lainnya.
Untuk membuat kebijakan ekstensi zona cakupan project, pilih salah satu opsi berikut:
Konsol
Untuk membuat kebijakan ekstensi VM zona cakupan project di konsol Google Cloud , selesaikan langkah-langkah berikut:
- Di konsol Google Cloud , buka halaman VM extension policies.
- Klik Create extension policy.
- Di kolom Name, masukkan nama untuk kebijakan.
- Opsional: Di kolom Description, masukkan deskripsi untuk kebijakan.
- Di kolom Priority, tentukan nomor prioritas untuk menyelesaikan konflik
antar-kebijakan. Angka yang lebih kecil menunjukkan prioritas yang lebih tinggi. Nilai defaultnya adalah
1000. - Di bagian Scope, pilih Zonal rollout.
- Dalam daftar Region dan Zone, pilih region dan zona tempat VM Anda berada. VM Extension Manager menerapkan kebijakan ke VM di region dan zona yang dipilih.
- Di bagian Manage extensions, klik Add extension dan lakukan hal berikut untuk setiap ekstensi yang ingin Anda instal di VM target:
- Dari daftar Ekstensi, pilih ekstensi. Untuk mengetahui informasi selengkapnya, lihat Ekstensi yang didukung.
- Dari daftar Version, tentukan nomor versi ekstensi. Kosongkan untuk memilih versi terbaru.
- Untuk Agen Operasional, Anda dapat menentukan versi
2.58.0atau yang lebih baru. - Untuk Extension for SAP dan Extension for Compute Workloads, kosongkan kolom untuk memilih versi terbaru.
- Untuk Agen Operasional, Anda dapat menentukan versi
- Opsional: Di kolom Config file content, masukkan parameter konfigurasi untuk ekstensi.
- Di bagian Target VM instances, pilih VM untuk kebijakan. Untuk memilih VM dengan label tertentu, klik Tambahkan label dan tambahkan pasangan nilai kunci.
- Klik Create.
gcloud
Untuk membuat kebijakan ekstensi VM zona cakupan project dan meluncurkan kebijakan
ke VM di zona tertentu, gunakan
perintah gcloud compute zone-vm-extension-policies create:
gcloud compute zone-vm-extension-policies create POLICY_NAME \ --project=PROJECT_ID \ --zone=ZONE \ --description="DESCRIPTION" \ --extensions=EXTENSION_NAME_1,EXTENSION_NAME_2 \ --version=EXTENSION_NAME_1=VERSION_1,EXTENSION_NAME_2=VERSION_2 \ --config-from-file=EXTENSION_NAME_1=CONFIG_FILE_PATH_1,EXTENSION_NAME_2=CONFIG_FILE_PATH_2 \ --inclusion-labels=KEY_1=VALUE_1 \ --priority=PRIORITY
Ganti kode berikut:
POLICY_NAME: nama untuk kebijakan ekstensi VM.PROJECT_ID: project ID untuk kebijakan cakupan project.ZONE: zona tempat kebijakan ini berlaku.DESCRIPTION: deskripsi opsional untuk kebijakan.EXTENSION_NAME_1,EXTENSION_NAME_2: daftar ekstensi yang dipisahkan koma untuk ditambahkan ke kebijakan. Anda harus menentukan setidaknya satu ekstensi. Anda dapat menentukan salah satu ekstensi yang didukung berikut:ops-agentgoogle-cloud-sap-extensiongoogle-cloud-workload-extension
EXTENSION_NAME_1=VERSION_1,EXTENSION_NAME_2=VERSION_2: daftar key-value pair yang dipisahkan koma, dengan kunci adalah nama ekstensi dan nilai adalah versi ekstensi. Jika Anda tidak menentukan versi untuk ekstensi, VM Extension Manager akan menggunakan versi terbaru yang tersedia dan otomatis mengupgradenya saat versi baru tersedia.EXTENSION_NAME_1=CONFIG_FILE_PATH_1,EXTENSION_NAME_2=CONFIG_FILE_PATH_2: daftar key-value pair yang dipisahkan koma, dengan kunci adalah nama ekstensi dan nilai adalah jalur ke file konfigurasi untuk ekstensi tersebut. File ini terletak di VM tempat Anda menjalankan perintahgcloud, bukan di VM tempat Anda menginstal ekstensi.Atau, untuk memberikan konfigurasi sebagai string inline, gunakan flag
--config, bukan--config-from-file—misalnya,EXTENSION_NAME_1="CONFIG_1". Anda dapat menggunakan--config-from-fileatau--config, tetapi tidak keduanya dalam perintah yang sama.KEY_1=VALUE_1: daftar key-value pair yang dipisahkan koma, yang menentukan label penyertaan untuk pemilih. VM harus memiliki semua label yang ditentukan dalam pemilih yang akan ditargetkan. Jika Anda menentukan--inclusion-labelsbeberapa kali, kebijakan akan menargetkan VM yang cocok dengan salah satu pemilih yang disediakan (OR logis). Jika Anda menghilangkan flag ini, kebijakan akan menargetkan semua VM di zona yang ditentukan dalam project Anda.PRIORITY: bilangan bulat dari0hingga65535yang menentukan prioritas kebijakan. Angka yang lebih kecil menunjukkan prioritas yang lebih tinggi. Nilai defaultnya adalah1000. Jika beberapa kebijakan memiliki prioritas yang sama, VM Extension Manager akan menerapkan kebijakan yang paling baru diupdate ke VM.
Perintah akan gagal jika kebijakan dengan nama yang ditentukan sudah ada di zona.
Contoh: Membuat kebijakan zona lingkup project
Perintah berikut akan membuat kebijakan bernama test-extension-policy yang menginstal
ekstensi ops-agent di zona us-central1-f untuk project test-project.
Flag --config-from-file menentukan jalur ke file lokal yang berisi konfigurasi YAML untuk Agen Operasional.
gcloud compute zone-vm-extension-policies create test-extension-policy \ --project=test-project \ --zone=us-central1-f \ --extensions=ops-agent \ --config-from-file=ops-agent="/usr/ops-agent-config.yaml"
Contoh: Membuat kebijakan zona lingkup project dengan label penyertaan dan prioritas
Perintah berikut akan membuat kebijakan bernama test-extension-policy-2 yang
menginstal ekstensi ops-agent di zona us-central1-f untuk project
test-project di VM dengan label env=prod. Prioritas kebijakan ditetapkan ke
500, dan flag --config-from-file menentukan jalur ke file lokal
yang berisi konfigurasi YAML untuk Agen Operasional.
gcloud compute zone-vm-extension-policies create test-extension-policy-2 \ --project=test-project \ --zone=us-central1-f \ --extensions=ops-agent \ --config-from-file=ops-agent="/usr/ops-agent-config.yaml" \ --priority=500 \ --inclusion-labels=env=prod
REST
Untuk membuat kebijakan ekstensi VM zona cakupan project, kirim permintaan POST
ke metode zoneVmExtensionPolicies.insert.
Metode ini menentukan ekstensi mana yang akan diinstal dan di VM mana dalam zona tertentu.
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/vmExtensionPolicies
{
"name": "POLICY_NAME",
"description": "DESCRIPTION",
"extensionPolicies": {
"EXTENSION_NAME_1": {
"stringConfig": "EXTENSION_NAME_1_CONFIG",
"pinnedVersion": "EXTENSION_NAME_1_VERSION"
},
"EXTENSION_NAME_2": {
"stringConfig": "EXTENSION_NAME_2_CONFIG",
"pinnedVersion": "EXTENSION_NAME_2_VERSION"
}
},
"instanceSelectors": [
{
"labelSelector": {
"inclusionLabels": {
"KEY_1": "VALUE_1"
}
}
}
],
"priority": "PRIORITY"
}
Ganti kode berikut:
PROJECT_ID: project ID Anda.ZONE: zona tempat kebijakan ini berlaku.POLICY_NAME: nama untuk kebijakan ekstensi VM.DESCRIPTION: deskripsi opsional untuk kebijakan.EXTENSION_NAME_1,EXTENSION_NAME_2: nama ekstensi yang akan ditambahkan ke kebijakan. Anda harus menentukan setidaknya satu ekstensi. Anda dapat menentukan salah satu ekstensi yang didukung berikut:ops-agentgoogle-cloud-sap-extensiongoogle-cloud-workload-extension
EXTENSION_NAME_1_CONFIG,EXTENSION_NAME_2_CONFIG: konfigurasi untuk ekstensi, yang disediakan sebagai string inline.EXTENSION_NAME_1_VERSION,EXTENSION_NAME_2_VERSION: versi ekstensi. Jika Anda tidak menentukan versi untuk ekstensi, VM Extension Manager akan menggunakan versi terbaru yang tersedia dan otomatis mengupgradenya saat versi baru tersedia.KEY_1:VALUE_1: key-value pair yang menentukan label penyertaan untuk pemilih. VM harus memiliki semua label yang ditentukan dalam pemilih yang akan ditargetkan. Jika Anda menentukan beberapainstanceSelectors, kebijakan akan menargetkan VM yang cocok dengan salah satu pemilih yang disediakan (OR logis). Jika Anda menghilangkaninstanceSelectors, kebijakan akan menargetkan semua VM di zona yang ditentukan dalam project Anda.PRIORITY: bilangan bulat dari0hingga65535yang menentukan prioritas kebijakan. Angka yang lebih kecil menunjukkan prioritas yang lebih tinggi. Nilai defaultnya adalah1000. Jika beberapa kebijakan memiliki prioritas yang sama, VM Extension Manager akan menerapkan kebijakan yang paling baru diupdate ke VM.
Contoh: Membuat kebijakan zona lingkup project
Contoh berikut membuat kebijakan bernama test-extension-policy yang menginstal
ekstensi ops-agent di zona us-central1-f untuk my-project.
POST https://compute.googleapis.com/compute/v1/projects/my-project/zones/us-central1-f/vmExtensionPolicies
{
"name": "test-extension-policy",
"description": "Test extension policy for Ops Agent",
"extensionPolicies": {
"ops-agent": {
"stringConfig": "logging:
receivers:
systemd_logs:
type: systemd_journald
service:
pipelines:
systemd_pipeline:
receivers: [systemd_logs]",
"pinnedVersion": "2.58.0"
}
},
"instanceSelectors": [
{
"labelSelector": {
"inclusionLabels": {
"env": "test"
}
}
}
],
"priority": "500"
}
Langkah berikutnya
- Untuk memeriksa progres peluncuran dan status respons ekstensi, lihat Melihat detail dan status ekstensi VM.
- Untuk mengubah setelan konfigurasi, mengubah versi yang disematkan, atau menghapus agen yang di-deploy, lihat Mengelola ekstensi VM menggunakan kebijakan ekstensi.
- Untuk membuat dasbor Cloud Monitoring dan menyiapkan pemberitahuan untuk kondisi agen, penggunaan CPU, dan penggunaan memori, lihat Memantau ekstensi VM.
- Untuk mendiagnosis peluncuran yang gagal, memeriksa proses tamu yang berjalan, atau memeriksa log debug agen tamu, lihat Memecahkan masalah ekstensi VM.