Dokumen ini menjelaskan cara membuat kebijakan ekstensi VM, yang memungkinkan Anda menginstal dan mengelola ekstensi secara otomatis di sejumlah mesin virtual (VM) Compute Engine. Dengan menentukan kebijakan, Anda dapat memastikan bahwa ekstensi tertentu diinstal dan dikelola di VM mana pun yang cocok dengan kriteria yang Anda tentukan, seperti label VM.
Sebelum memulai
- Kebijakan ekstensi global yang dijelaskan dalam dokumen ini menggunakan perintah gcloud CLI
beta. Untuk membuat dan mengelola kebijakan ekstensi global, instal komponenbetagcloud CLI:gcloud components install beta
- Tinjau dasar-dasar tentang VM Extension Manager.
- Tinjau kuota VM Extension Manager.
- Aktifkan Compute Engine API di project Anda jika belum diaktifkan. Google Cloud
- Pastikan VM Anda menjalankan agen tamu versi
20241209.01atau yang lebih baru. - Untuk melihat log debug untuk peristiwa VM Extension Manager, konfigurasi 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 sampel 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 Google Cloud dan API, Anda tidak perlu menyiapkan autentikasi.
gcloud
-
Instal Google Cloud CLI. Setelah penginstalan, inisialisasi Google Cloud CLI dengan menjalankan perintah berikut:
gcloud initJika Anda menggunakan penyedia identitas (IdP) eksternal, Anda harus login ke gcloud CLI dengan identitas gabungan Anda terlebih dahulu.
-
- 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.
Jika Anda menggunakan penyedia identitas (IdP) eksternal, Anda harus login ke gcloud CLI dengan identitas gabungan Anda terlebih dahulu.
Untuk mengetahui informasi selengkapnya, lihat Melakukan autentikasi untuk menggunakan REST dalam dokumentasi autentikasi Google Cloud .
Peran IAM yang diperlukan
Untuk mendapatkan izin yang
diperlukan guna membuat kebijakan ekstensi,
minta administrator untuk memberi Anda
peran IAM VM Extension Policy Admin (roles/compute.vmExtensionPolicyAdmin).
Untuk mengetahui informasi selengkapnya tentang cara memberikan peran, lihat Mengelola akses ke project, folder, dan organisasi.
Peran bawaan ini berisi izin
compute.vmExtensionPolicies.create,
yang diperlukan untuk
membuat kebijakan ekstensi.
Anda mungkin juga bisa mendapatkan izin ini dengan peran khusus atau peran bawaan lainnya.
Untuk mengetahui informasi selengkapnya tentang peran dan izin IAM di Compute Engine, lihat Peran dan izin Compute Engine.
Prioritas kebijakan dan resolusi konflik
Jika beberapa kebijakan berlaku untuk VM yang sama, VM Extension Manager akan menggunakan prioritas kebijakan 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 menunjukkan prioritas yang lebih tinggi. Prioritas defaultnya adalah 1000. Jika beberapa kebijakan memiliki prioritas yang sama, VM Extension Manager akan menerapkan kebijakan yang terakhir diupdate ke VM. Menghapus kebijakan tidak akan menghapus ekstensi jika kebijakan berprioritas lebih rendah masih berlaku untuk VM.
Membuat kebijakan ekstensi VM global
Anda dapat membuat kebijakan ekstensi VM global untuk menginstal ekstensi di VM di beberapa zona dalam project Anda sesuai dengan rencana peluncuran. Kebijakan ekstensi VM global tidak diterapkan langsung ke VM; sebagai gantinya, saat kebijakan diluncurkan, VM Extension Manager membuat kebijakan di setiap zona berdasarkan rencana peluncuran. Kebijakan ini kemudian mengelola penginstalan ekstensi di VM dalam zona masing-masing.
Anda dapat menggunakan gcloud atau metode globalVmExtensionPolicies.insert untuk membuat kebijakan ekstensi global.
Batasan
Anda tidak dapat membuat kebijakan ekstensi VM global menggunakan konsol Google Cloud .
Tentang rencana peluncuran
Kebijakan ekstensi VM global menggunakan rencana peluncuran untuk mengelola deployment ekstensi di berbagai lokasi. Anda dapat menggunakan salah satu rencana peluncuran yang telah ditentukan sebelumnya atau membuat rencana peluncuran kustom.
Rencana peluncuran standar
slow_rollout: Meluncurkan kebijakan selama lima hari. Peluncuran lambat adalah rencana peluncuran default.fast_rollout: Segera meluncurkan kebijakan 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, seperti yang ditunjukkan dalam Contoh 2.
Membuat kebijakan global
Gunakan salah satu metode berikut untuk membuat kebijakan ekstensi VM global.
gcloud
Gunakan perintah gcloud beta compute global-vm-extension-policies create
untuk membuat kebijakan ekstensi VM global:
gcloud beta compute global-vm-extension-policies create POLICY_NAME \ --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.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. Nilai yang valid untuk ekstensi adalah:ops-agentgoogle-cloud-sap-extensiongoogle-cloud-workload-extension
EXTENSION_NAME_1=VERSION_1,EXTENSION_NAME_2=VERSION_2: daftar pasangan nilai kunci 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 mengupgradenya secara otomatis saat versi baru tersedia.EXTENSION_NAME_1=CONFIG_FILE_PATH_1,EXTENSION_NAME_2=CONFIG_FILE_PATH_2: daftar pasangan nilai kunci yang dipisahkan koma, dengan kunci adalah nama ekstensi dan nilai adalah jalur ke file konfigurasi untuk ekstensi tersebut. File ini berada 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 pasangan nilai kunci yang dipisahkan koma yang menentukan label penyertaan untuk pemilih. VM harus memiliki semua label yang ditentukan dalam pemilih agar dapat ditargetkan. Jika Anda menentukan--inclusion-labelsbeberapa kali, kebijakan menargetkan VM yang cocok dengan salah satu pemilih yang diberikan (OR logis). Jika Anda menghilangkan tanda ini, kebijakan akan menargetkan semua VM di project Anda di semua zona.PRIORITY: bilangan bulat yang menentukan prioritas kebijakan. Angka yang lebih besar menunjukkan prioritas yang lebih tinggi. Nilai defaultnya adalah 1.000. Jika beberapa kebijakan memiliki prioritas yang sama, kebijakan yang terakhir diperbarui akan diterapkan ke VM.ROLLOUT_PLAN: tentukanslow_rolloutataufast_rollout. Jika Anda perlu menggunakan rencana peluncuran kustom, gunakan flag--rollout-custom-planbukan--rollout-predefined-plandan tentukan nama rencana, misalnya:--rollout-custom-plan=projects/PROJECT_NUMBER/locations/global/rolloutPlans/ROLLOUT_PLAN_NAMEGanti kode berikut:
PROJECT_NUMBER: project tempat rencana peluncuran ditentukan.ROLLOUT_PLAN_NAME: nama rencana peluncuran kustom yang Anda tentukan. Jika tidak ada flag rencana peluncuran yang ditentukan,slow_rolloutakan digunakan.
ROLLOUT_CONFLICT_BEHAVIOR: menentukan perilaku saat konflik terdeteksi antara kebijakan zonal dan global. Nilainya dapat berupa:""(string kosong): kebijakan global tidak menimpa kebijakan zonal yang bertentangan dengan nama yang sama. Ini adalah perilaku default.overwrite: kebijakan global menggantikan kebijakan per zona yang memiliki nama yang sama, lalu kebijakan global mengelola peluncuran kebijakan di zona tersebut.
Untuk mengetahui detail selengkapnya, lihat flag
--rollout-conflict-behavior.
Contoh 1
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 Ops Agent, dan --rollout-predefined-plan menentukan paket slow_rollout.
gcloud beta 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 2
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 Operasi. Flag
--rollout-custom-plan menentukan rencana peluncuran kustom.
gcloud beta 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, buat permintaan POST ke
metode globalVmExtensionPolicies.insert.
POST https://compute.googleapis.com/compute/beta/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. Nilai yang valid untuk ekstensi adalah:ops-agentgoogle-cloud-sap-extensiongoogle-cloud-workload-extension
EXTENSION_NAME_1_CONFIG,EXTENSION_NAME_2_CONFIG: konfigurasi untuk ekstensi, yang diberikan sebagai string inline.EXTENSION_NAME_1_VERSION,EXTENSION_NAME_2_VERSION: versi ekstensi. Jika Anda tidak menentukan versi ekstensi, VM Extension Manager akan menggunakan versi terbaru yang tersedia dan mengupgradenya secara otomatis saat versi baru tersedia.KEY_1:VALUE_1: pasangan nilai kunci yang menentukan label penyertaan untuk pemilih. VM harus memiliki semua label yang ditentukan dalam pemilih agar dapat ditargetkan. Jika Anda menentukan beberapainstanceSelectors, kebijakan akan menargetkan VM yang cocok dengan salah satu pemilih yang diberikan (OR logis). Jika Anda tidak menyertakaninstanceSelectors, kebijakan akan menargetkan semua VM di project Anda di semua zona.PRIORITY: bilangan bulat yang menentukan prioritas kebijakan. Angka yang lebih besar menunjukkan prioritas yang lebih tinggi. Nilai defaultnya adalah 1.000. Jika beberapa kebijakan memiliki prioritas yang sama, kebijakan yang terakhir diperbarui akan diterapkan ke VM.ROLLOUT_CONFLICT_BEHAVIOR: menentukan perilaku saat konflik terdeteksi antara kebijakan zonal dan global. Nilainya dapat berupa:""(string kosong): kebijakan global tidak menimpa kebijakan zonal yang bertentangan dengan nama yang sama. Ini adalah perilaku default.overwrite: kebijakan global menggantikan kebijakan per zona yang memiliki nama yang sama, lalu kebijakan global mengelola peluncuran kebijakan di zona tersebut.Untuk mengetahui detail 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. Ini adalah rencana peluncuran default jika tidak ada rencana yang ditentukan.FAST_ROLLOUT: segera meluncurkan kebijakan ke semua zona.
Contoh
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/beta/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" } } }
Membuat kebijakan ekstensi VM zona
Gunakan salah satu metode berikut untuk membuat kebijakan ekstensi VM zonal. Kebijakan zonal ini menentukan ekstensi yang akan diinstal dan di VM mana di zona tertentu.
Konsol
- 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 rendah menunjukkan prioritas yang lebih tinggi. Nilai defaultnya adalah 1.000.
- Dalam daftar Zone, pilih zona tempat Anda ingin menerapkan kebijakan ini.
- Di bagian Ekstensi, klik Tambahkan ekstensi dan lakukan hal berikut untuk setiap ekstensi yang ingin Anda instal di VM target:
- Dari daftar Ekstensi, pilih ekstensi. Lihat Ekstensi yang didukung.
- Dari daftar Versi, tentukan nomor versi ekstensi. Kosongkan
untuk memilih versi terbaru.
- Untuk Ops Agent, Anda dapat menentukan versi
2.58.0atau yang lebih baru. - Untuk workload Extension for SAP dan Extension for Compute, kosongkan kolom ini untuk memilih versi terbaru.
- Untuk Ops Agent, 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 zonal 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 \ --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.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. Nilai yang valid untuk ekstensi adalah:ops-agentgoogle-cloud-sap-extensiongoogle-cloud-workload-extension
EXTENSION_NAME_1=VERSION_1,EXTENSION_NAME_2=VERSION_2: daftar pasangan nilai kunci 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 mengupgradenya secara otomatis saat versi baru tersedia.EXTENSION_NAME_1=CONFIG_FILE_PATH_1,EXTENSION_NAME_2=CONFIG_FILE_PATH_2: daftar pasangan nilai kunci yang dipisahkan koma, dengan kunci adalah nama ekstensi dan nilai adalah jalur ke file konfigurasi untuk ekstensi tersebut. Jalur ini ada 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 pasangan nilai kunci yang dipisahkan koma yang menentukan label penyertaan untuk pemilih. VM harus memiliki semua label yang ditentukan dalam pemilih agar dapat ditargetkan. Jika Anda menentukan--inclusion-labelsbeberapa kali, kebijakan menargetkan VM yang cocok dengan salah satu pemilih yang diberikan (OR logis). Jika Anda menghapus flag ini, kebijakan akan menargetkan semua VM di zona yang ditentukan.PRIORITY: bilangan bulat dari 0 hingga 65535 yang menentukan prioritas kebijakan. Angka yang lebih rendah menunjukkan prioritas yang lebih tinggi. Nilai defaultnya adalah 1.000.Perintah akan gagal jika kebijakan dengan nama yang ditentukan sudah ada di zona.
Contoh 1
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 Ops Agent.
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 2
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 Operasi.
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 zonal, buat permintaan POST ke metode zoneVmExtensionPolicies.insert.
Metode ini menentukan ekstensi yang akan diinstal dan VM yang akan diinstal di 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. Nilai yang valid untuk ekstensi adalah:ops-agentgoogle-cloud-sap-extensiongoogle-cloud-workload-extension
EXTENSION_NAME_1_VERSION,EXTENSION_NAME_2_VERSION: versi ekstensi. Jika Anda tidak menentukan versi ekstensi, VM Extension Manager akan menggunakan versi terbaru yang tersedia dan mengupgradenya secara otomatis saat versi baru tersedia.EXTENSION_NAME_1_CONFIG,EXTENSION_NAME_2_CONFIG: konfigurasi untuk ekstensi, yang diberikan sebagai string inline.KEY_1:VALUE_1: pasangan nilai kunci yang menentukan label penyertaan untuk pemilih. VM harus memiliki semua label yang ditentukan dalam pemilih agar dapat ditargetkan. Jika Anda menentukan beberapainstanceSelectors, kebijakan akan menargetkan VM yang cocok dengan salah satu pemilih yang diberikan (OR logis). Jika Anda menghapusinstanceSelectors, kebijakan akan menargetkan semua VM di zona yang ditentukan.PRIORITY: bilangan bulat dari 0 hingga 65535 yang menentukan prioritas kebijakan. Angka yang lebih rendah menunjukkan prioritas yang lebih tinggi. Nilai defaultnya adalah 1.000.
Contoh
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
- Pelajari cara mengelola ekstensi VM.
- Melihat log ekstensi VM