Selain menjalankan tugas patch sesuai permintaan, Anda mungkin ingin memiliki tugas patch yang berjalan otomatis berdasarkan jadwal yang ditetapkan dengan membuat deployment patch.
Setiap deployment patch dapat memiliki jadwal satu kali yang menjalankan tugas patch pada tanggal dan waktu tertentu, atau jadwal berulang, yang menjalankan tugas patch pada interval tertentu.
Filter instance
memungkinkan Anda melakukan patch pada banyak instance secara bersamaan. Filter ini diterapkan ke setiap tugas patch individual saat dijalankan. Ini memastikan bahwa perubahan dalam proyek Anda ditangkap secara real-time.
Misalnya, deployment patch dibuat untuk menerapkan patch ke semua instance di zona asia-souteast1-b
mulai dua minggu dari sekarang. Pada saat membuat patch, Anda memiliki 20 instance di zona, tetapi 40 instance baru ditambahkan ke zona beberapa hari kemudian. Karena filter tersebut diterapkan saat patch dimulai, 60 instance akan diupdate. Hal ini memungkinkan Anda menambahkan dan menghapus instance tanpa perlu memperbarui jadwal deployment patch.
Sebelum memulai
- Tinjau kuota OS Config.
-
Jika Anda belum melakukannya, siapkan autentikasi.
Autentikasi adalah
proses verifikasi identitas Anda untuk mengakses layanan dan API Google Cloud.
Untuk menjalankan kode atau contoh dari lingkungan pengembangan lokal, Anda dapat mengautentikasi ke Compute Engine dengan memilih salah satu opsi berikut:
Select the tab for how you plan to use the samples on this page:
Console
When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.
gcloud
-
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
- Set a default region and zone.
roles/osconfig.patchDeploymentAdmin
: Berisi izin untuk membuat, menghapus, mendapatkan, dan mencantumkan deployment patch.roles/osconfig.patchDeploymentViewer
: Berisi izin akses hanya baca guna mendapatkan dan mencantumkan deployment patch.project-id
: Project ID.user-id
: Nama pengguna Google Workspace pengguna.- Setiap nama dalam suatu project harus unik
- Hanya menggunakan huruf kecil, angka, dan tanda hubung
- Diawali dengan huruf
- Diakhiri dengan angka atau huruf
- Berisi antara 1 hingga 63 karakter
- Di konsol Google Cloud, buka halaman Compute Engine > VM Manager > Patch.
- Klik New patch deployment.
Di bagian Target VMs, pilih zona yang berisi VM yang ingin dilakukan patching. Anda juga dapat memilih untuk memilih semua zona.
Misalnya, untuk mem-patch VM tertentu di zona yang Anda pilih, masukkan filter nama dan label seperti berikut:
- Awalan nama:
test-
- Label:
env=dev
danapp=web
- Awalan nama:
Di bagian Patch configuration, konfigurasikan patch-nya.
- Tentukan Nama untuk patch Anda.
- Pilih update yang diperlukan untuk sistem operasi Anda. Untuk informasi selengkapnya, lihat apa yang disertakan dalam tugas patch OS.
Di bagian Scheduling, selesaikan aktivitas berikut:
- Pilih jadwal. Anda dapat menjadwalkan tugas patch satu kali atau tugas patch berulang.
- (Opsional) Tetapkan durasi atau masa pemeliharaan.
Di bagian Opsi peluncuran, konfigurasikan opsi peluncuran patch:
- Pilih apakah akan melakukan patching zona satu per satu atau melakukan patching zona secara serentak.
- Tetapkan anggaran gangguan. Anggaran gangguan adalah jumlah atau persentase VM di zona tempat Anda ingin terganggu pada satu waktu oleh proses patching.
(Opsional) Di bagian Advanced options, Anda dapat menyelesaikan tugas-tugas berikut:
- Pilih opsi mulai ulang.
- Mengupload skrip pra-patch dan pasca-patch. Untuk mengetahui informasi selengkapnya tentang skrip pra-patch dan pasca-patch, baca Menentukan skrip pra-patch dan pasca-patch.
Klik Deploy.
patch-deployment-id
: Nama deployment patch Anda.patch-deployment-file
: Jalur ke file YAML atau JSON yang berisi konfigurasi untuk deployment patch.- Tanggal mulai adalah 9 Januari 2019 pukul 19.30
- Tanggal akhir adalah 9 Januari 2020 pukul 19.30
- Zona waktu yang akan digunakan adalah "America/Los_Angeles"
- Jalankan setiap minggu pada hari Selasa
project-id
: Project ID Anda.instance-filter
: Parameter filter yang Anda inginkan. Untuk mengetahui informasi selengkapnya tentang filter instance, lihat filter instance.schedule
: Berikan parameteroneTimeSchedule
ataurecurringSchedule
yang menjelaskan parameter penjadwalan seperti tanggal, waktu, dan frekuensi untuk menjalankan tugas patch.- Tanggal mulai adalah 9 Januari 2019 pukul 19.30
- Tanggal akhir adalah 9 Januari 2020 pukul 19.30
- Zona waktu yang akan digunakan adalah "America/Los_Angeles"
- Jalankan setiap minggu pada hari Selasa
- Di konsol Google Cloud, buka halaman Compute Engine > VM Manager > Patch.
- Pilih tab Deployment terjadwal.
- Di konsol Google Cloud, buka halaman Compute Engine > VM Manager > Patch.
- Pilih tab Deployment terjadwal.
- Klik nama deployment yang ingin ditinjau.
project-id
: Project ID Anda.patch-deployment-id
: Nama deployment patch Anda.- Di konsol Google Cloud, buka halaman Compute Engine > VM Manager > Patch.
- Pilih tab Deployment terjadwal.
- Klik nama deployment yang ingin dihapus.
- Klik Hapus jadwal ini.
project-id
: Project ID Anda.patch-deployment-id
: Nama deployment patch Anda.- Pelajari Patch lebih lanjut.
- Buat tugas patch.
- Kelola tugas patch.
REST
Untuk menggunakan contoh REST API di halaman ini dalam lingkungan pengembangan lokal, gunakan kredensial yang Anda berikan ke gcloud CLI.
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
Untuk informasi selengkapnya, lihat Melakukan autentikasi untuk menggunakan REST dalam dokumentasi autentikasi Google Cloud.
Anda dapat menjadwalkan tugas patch menggunakan konsol Google Cloud, Google Cloud CLI, atau REST.
Izin
Pemilik project memiliki akses penuh untuk membuat dan mengelola deployment patch. Untuk semua pengguna lainnya, Anda harus memberikan izin. Anda dapat memberikan salah satu peran terperinci berikut:
Misalnya, untuk memberikan akses administrator pengguna ke deployment patch, jalankan perintah berikut:
gcloud projects add-iam-policy-binding project-id \ --member user:user-id@gmail.com \ --role roles/osconfig.patchDeploymentAdmin
Ganti kode berikut:
Membuat deployment patch
Saat Anda membuat deployment patch, nama deployment patch harus memenuhi persyaratan penamaan berikut:
Di Google Cloud CLI dan REST, nama deployment patch disebut
patch-deployment-id
.Setelah memulai deployment patch, Anda dapat memantau patch menggunakan dasbor Patch. Perlu waktu sekitar 30 menit setelah tugas patch dimulai sebelum data diisi di dasbor.
console
gcloud
Gunakan perintah
os-config patch-deployments create
untuk membuat deployment patch.gcloud compute os-config patch-deployments create patch-deployment-id \ --file patch-deployment-file
Ganti kode berikut:
Contoh file YAML deployment patch
Contoh file YAML berikut dapat digunakan untuk membuat jadwal berulang bagi semua instance di zona
us-west2-b
danus-west2-c
. Jadwal berulang memiliki spesifikasi berikut:instanceFilter: zones: - us-west2-b - us-west2-c recurringSchedule: frequency: WEEKLY weekly: dayOfWeek: TUESDAY timeOfDay: hours: 19 minutes: 30 timeZone: id: America/Los_Angeles startTime: '2019-09-01T12:00:00Z' endTime: '2020-09-01T12:00:00Z'
REST
Di API, buat permintaan
POST
untuk membuat deployment patch baru. Anda harus secara eksplisit menentukan semua kolom konfigurasi yang wajib diisi seperti yang dijelaskan dalam dokumentasi APIpatchDeployments.create
. Misalnya, deployment patch dengan kolom wajib diisi minimal (filter dan jadwal instance) akan terlihat seperti berikut. Gantiproject-id
dengan project ID Anda.POST https://osconfig.googleapis.com/v1/projects/project-id/patchJobs:execute { "instanceFilter": instance-filter // Add one of the following parameters: "recurringSchedule": schedule "oneTimeSchedule": schedule }
Ganti kode berikut:
Contoh
Contoh 1: Buat jadwal satu kali untuk menjalankan tugas patch pada 10 Januari 2020 pukul 00.00 UTC di semua instance di zona
us-west2-b
danus-west2-c
.{ "instanceFilter":{ "zones":[ "us-west2-b", "us-west2-c" ] }, "oneTimeSchedule": { "executeTime": "2020-01-10T00:00:00Z" } }
Contoh 2: Buat jadwal berulang untuk semua instance di zona
us-west2-b
danus-west2-c
. Jadwal berulang memiliki spesifikasi berikut:POST https://osconfig.googleapis.com/v1/projects/project-id/patchDeployments { "instanceFilter":{ "zones":[ "us-west2-b", "us-west2-c" ] }, "recurringSchedule":{ "frequency":"WEEKLY", "weekly":{ "dayOfWeek":"TUESDAY" }, "timeOfDay":{ "hours":19, "minutes":30 }, "timeZone":{ "id":"America/Los_Angeles" }, "startTime":"2019-09-01T12:00:00Z", "endTime":"2020-09-01T12:00:00Z" } }
Mencantumkan deployment patch
console
gcloud
Gunakan perintah
os-config patch-deployments list
untuk mencantumkan deployment patch.gcloud compute os-config patch-deployments list
Perintah ini menampilkan semua deployment patch. Outputnya akan terlihat seperti berikut:
NAME LAST_RUN NEXT_RUN FREQUENCY first-deployment 2019-12-18T00:07:00.738Z --- Once: Scheduled for 2019-12-18T00:07:00.000Z my-deployment1 2020-01-05T14:00:00.228Z 2020-01-12T14:00:00Z Recurring - Weekly my-deployment2 --- 2020-01-15T05:30:00Z Recurring - Monthly on specific date(s)
Anda dapat menggunakan lebih banyak tanda untuk membatasi dan memformat penelusuran. Misalnya, untuk menampilkan 10 deployment patch pertama di halaman ke-2, jalankan perintah berikut. Ganti
project-id
dengan project ID Anda.gcloud compute os-config patch-deployments list --limit 10 --page-size 2
REST
Di API, buat permintaan
GET
ke metodepatchDeployments.list
. Gantiproject-id
dengan project ID Anda.GET https://osconfig.googleapis.com/v1/projects/project-id/patchDeployments
Menjelaskan deployment patch
console
gcloud
Gunakan perintah
os-config patch-deployments describe
untuk mendeskripsikan deployment patch. Gantipatch-deployment-id
dengan nama untuk deployment patch Anda.gcloud compute os-config patch-deployments describe patch-deployment-id
REST
Di API, buat permintaan
GET
ke metodepatchDeployments.get
.GET https://osconfig.googleapis.com/v1/projects/project-id/patchDeployments/patch-deployment-id
Ganti kode berikut:
Menghapus deployment patch
console
gcloud
Gunakan perintah
os-config patch-deployments delete
untuk menghapus deployment patch. Gantipatch-deployment-id
dengan nama untuk deployment patch Anda.gcloud compute os-config patch-deployments delete patch-deployment-id
REST
Di API, buat permintaan
DELETE
ke metodepatchDeployments.delete
.DELETE https://osconfig.googleapis.com/v1/projects/project-id/patchDeployments/patch-deployment-id
Ganti kode berikut:
Apa langkah selanjutnya?
Kecuali dinyatakan lain, konten di halaman ini dilisensikan berdasarkan Lisensi Creative Commons Attribution 4.0, sedangkan contoh kode dilisensikan berdasarkan Lisensi Apache 2.0. Untuk mengetahui informasi selengkapnya, lihat Kebijakan Situs Google Developers. Java adalah merek dagang terdaftar dari Oracle dan/atau afiliasinya.
Terakhir diperbarui pada 2024-12-22 UTC.
-