Menjadwalkan instance VM untuk mulai dan berhenti


Dengan jadwal instance, Anda dapat memulai dan menghentikan instance virtual machine (VM) secara otomatis. Menggunakan jadwal instance untuk mengotomatiskan deployment instance VM dapat membantu Anda mengoptimalkan biaya dan mengelola instance VM dengan lebih efisien. Anda dapat menggunakan jadwal instance untuk workload berulang dan tunggal. Misalnya, gunakan jadwal instance untuk menjalankan instance VM selama jam kerja saja atau untuk menyediakan kapasitas untuk peristiwa yang bersifat tunggal.

Untuk menggunakan jadwal instance, buat kebijakan resource yang menjelaskan perilaku mulai dan berhenti, lalu sertakan kebijakan tersebut ke satu atau beberapa instance VM.

Sebelum memulai

  • Siapkan autentikasi, jika Anda belum melakukannya. Autentikasi adalah proses verifikasi identitas Anda untuk akses ke layanan dan API Google Cloud. Untuk menjalankan kode atau contoh dari lingkungan pengembangan lokal, Anda dapat melakukan autentikasi ke Compute Engine sebagai berikut.

    Pilih tab untuk melihat bagaimana Anda berencana menggunakan contoh di halaman ini:

    Konsol

    Saat menggunakan Konsol Google Cloud untuk mengakses API dan layanan Google Cloud, Anda tidak perlu menyiapkan autentikasi.

    gcloud

    1. Instal Google Cloud CLI, lalu initialize dengan menjalankan perintah berikut:

      gcloud init
    2. Menetapkan 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 initialize dengan menjalankan perintah berikut:

      gcloud init

Peran yang diperlukan

Untuk menggunakan jadwal instance, Anda harus memberikan peran Identity and Access Management (IAM) yang diperlukan ke hal-hal utama berikut:

  • Agen Layanan Compute Engine untuk project Anda. Ini diperlukan agar jadwal instance berjalan di VM.

    Jika Anda mencabut izin ini setelah membuat jadwal instance, jadwal instance Anda dapat berhenti berfungsi tanpa pemberitahuan. Untuk memastikan bahwa jadwal instance berhasil dijalankan, Anda harus memeriksa log audit secara rutin.

  • Akun pengguna atau akun layanan yang membuat, mengelola, atau menggunakan jadwal instance.

Peran yang diperlukan Agen Layanan Compute Engine

Untuk memastikan bahwa Agen Layanan Compute Engine memiliki izin yang diperlukan untuk menjalankan jadwal instance, minta administrator untuk memberikan Agen Layanan Compute Engine peran IAM Compute Instance Admin (v1) (roles/compute.instanceAdmin.v1) pada project. Untuk mengetahui informasi selengkapnya tentang cara memberikan peran, lihat Mengelola akses.

Peran bawaan ini berisi izin yang diperlukan untuk menjalankan jadwal instance. Untuk melihat izin yang benar-benar diperlukan, perluas bagian Izin yang diperlukan:

Izin yang diperlukan

Izin berikut diperlukan untuk menjalankan jadwal instance:

  • compute.instances.start
  • compute.instances.stop

Administrator Anda mungkin juga dapat memberikan izin ini kepada Agen Layanan Compute Engine dengan peran khusus atau peran bawaan.

Peran yang diperlukan pengguna atau akun layanan

Untuk memastikan bahwa Anda atau akun layanan Anda memiliki izin yang diperlukan untuk membuat dan mengelola jadwal instance, minta administrator untuk memberi Anda atau akun layanan Anda peran IAM Compute Instance Admin (v1) (roles/compute.instanceAdmin.v1) di project atau organisasi Anda. Untuk mengetahui informasi selengkapnya tentang cara memberikan peran, lihat Mengelola akses.

Peran bawaan ini berisi izin yang diperlukan untuk membuat dan mengelola jadwal instance. Untuk melihat izin yang benar-benar diperlukan, perluas bagian Izin yang diperlukan:

Izin yang diperlukan

Izin berikut diperlukan untuk membuat dan mengelola jadwal instance:

  • Buat jadwal instance: compute.resourcePolicies.create
  • Tampilkan daftar jadwal instance: compute.resourcePolicies.list
  • Jelaskan jadwal instance: compute.resourcePolicies.get
  • Menghapus jadwal instance: compute.resourcePolicies.delete
  • Sertakan jadwal instance ke VM baru:
    • compute.instances.create
    • compute.resourcePolicies.use
    • compute.instances.addResourcePolicies
  • Lampirkan jadwal instance ke VM yang ada:
    • compute.resourcePolicies.use
    • compute.instances.addResourcePolicies
  • Menghapus jadwal instance dari VM:
    • compute.resourcePolicies.use
    • compute.instances.removeResourcePolicies

Administrator Anda mungkin juga dapat memberikan izin ini kepada Anda atau akun layanan dengan peran khusus atau peran bawaan.

Batasan

  • Anda hanya dapat menambahkan jadwal instance ke instance VM yang terletak di region yang sama dengan jadwal instance.
  • Setiap instance VM hanya dapat mengikuti satu jadwal instance, tetapi Anda dapat menyertakan setiap jadwal instance ke maksimum 1.000 instance VM.
  • Jadwal instance tidak memberikan jaminan kapasitas. Oleh karena itu, jika resource yang diperlukan untuk instance VM terjadwal tidak tersedia pada waktu yang dijadwalkan, instance VM Anda mungkin tidak akan mulai ketika dijadwalkan. Meskipun Anda dapat mencadangkan instance VM sebelum memulainya untuk memberikan jaminan kapasitas, pencadangan tidak dapat dijadwalkan secara otomatis.
  • Instance hanya menjadwalkan instance VM pada waktu yang ditentukan, tetapi Anda dapat memulai dan menghentikan instance VM secara manual kapan saja. Misalnya, Anda memiliki jadwal yang dimulai setiap hari pada pukul 08.00 dan berhenti setiap hari pada pukul 17.00. Jika Anda menyertakan jadwal tersebut ke instance VM yang dihentikan pada pukul 16.00, instance VM tersebut tidak akan dimulai hingga pukul 08.00 di hari berikutnya, kecuali jika Anda memulai instance VM secara manual sebelum waktu tersebut.
  • Instance VM terjadwal mungkin memerlukan waktu hingga 15 menit setelah waktu yang dijadwalkan untuk memulai atau menghentikan operasi. Jika Anda ingin instance VM untuk dimulai atau berhenti pada waktu tertentu, jadwalkan operasi 15 menit lebih awal dari yang diperlukan, dan jadwalkan setiap operasi setidaknya dengan jarak 15 menit.
  • Scheduler dapat gagal jika ada jeda kurang dari 15 menit antara operasi mulai dan berhenti. Hal ini karena operasi berhenti mungkin terjadi sebelum operasi mulai, sehingga mencegah operasi mulai terjadi.
  • Setiap jadwal instance memungkinkan Anda memiliki hingga satu operasi mulai dan satu operasi berhenti per jam.
  • Anda tidak dapat mengedit jadwal instance. Untuk mengubah jadwal instance yang ada untuk satu atau beberapa instance VM, hapus jadwal instance yang ada, lalu buat dan sertakan jadwal instance baru.

Mengelola jadwal instance

Buat, cantumkan, jelaskan, dan hapus jadwal instance menggunakan konsol Google Cloud, Google Cloud CLI, atau Compute Engine API.

Membuat jadwal instance

Buat jadwal instance yang menjelaskan kapan instance VM Anda harus mulai atau berhenti secara otomatis. Jadwal instance yang Anda buat merupakan kebijakan resource yang dapat digunakan dengan menyertakannya atau menghapusnya dari instance VM.

Konsol

  1. Di konsol Google Cloud, buka halaman Instance VM.

    Buka instance VM

  2. Klik tab Jadwal instance di bagian atas halaman.

  3. Klik Buat jadwal. Panel Create a schedule akan terbuka.

  4. Masukkan Nama.

  5. Opsional: Masukkan Deskripsi.

  6. Di menu drop-down Region, pilih lokasi untuk jadwal instance ini.

  7. Tentukan kapan jadwal instance harus memulai dan menghentikan instance VM yang terpasang. Jika Anda ingin instance VM untuk dimulai atau berhenti pada waktu tertentu, jadwalkan operasi 15 menit lebih awal dari yang diperlukan. Pastikan setiap operasi memulai dan menghentikan setidaknya berjarak 15 menit.

    Gunakan kolom Waktu mulai, Waktu berhenti, dan Frekuensi default. Jika Anda ingin mengonfigurasi jadwal yang lebih kompleks, gunakan ekspresi cron.

    • Kolom default:

      1. Masukkan Waktu mulai, Waktu berhenti, atau keduanya.
        • Di kolom Waktu mulai, ketik atau klik untuk memilih waktu memulai instance VM.
        • Di kolom Waktu berhenti, ketik atau klik untuk memilih waktu penghentian instance VM.
      2. Di menu drop-down Frekuensi pada bagian bawah panel, pilih seberapa sering Waktu mulai dan Waktu berhenti diulang.
    • Ekspresi cron:

      1. Untuk mengaktifkan ekspresi cron, klik tombol Gunakan ekspresi CRON di bagian atas panel.
      2. Masukkan Mulai ekspresi CRON, Hentikan ekspresi CRON, atau keduanya.
        • Di kolom Mulai ekspresi CRON, masukkan ekspresi cron yang menjelaskan kapan instance VM harus dimulai.
        • Di kolom Hentikan ekspresi CRON, masukkan ekspresi cron yang menjelaskan kapan instance VM harus dihentikan.
  8. Di menu drop-down Zona waktu, pilih zona waktu untuk Waktu mulai dan Waktu berhenti.

  9. Opsional: Di kolom Tanggal mulai, ketik atau klik untuk memilih tanggal dan waktu dimulainya jadwal instance. Jika dihilangkan, jadwal akan segera berlaku.

  10. Opsional: Di kolom Tanggal akhir, ketik atau klik untuk memilih tanggal dan waktu berakhirnya jadwal instance. Jika dihilangkan, jadwal akan berlaku tanpa batas waktu.

  11. Klik Submit.

gcloud

Untuk membuat jadwal instance menggunakan gcloud CLI, gunakan perintah gcloud compute resource-policies create instance-schedule:

gcloud compute resource-policies create instance-schedule SCHEDULE_NAME \
    [--description='SCHEDULE_DESCRIPTION'] \
    [--region=REGION] \
    [--vm-start-schedule='START-OPERATION_SCHEDULE'] \
    [--vm-stop-schedule='STOP-OPERATION_SCHEDULE'] \
    [--timezone=TIME_ZONE] \
    [--initiation-date=INITIATION_DATE] \
    [--end-date=END_DATE]

Ganti kode berikut:

  • SCHEDULE_NAME: nama jadwal instance baru.
  • SCHEDULE_DESCRIPTION: Opsional: deskripsi jadwal instance baru.
  • REGION: Opsional: region tempat instance VM yang ingin Anda sertakan ke jadwal instance ini berada.
  • Tentukan setidaknya salah satu hal berikut:
    • START-OPERATION_SCHEDULE: jadwal yang menjelaskan kapan instance VM yang terpasang dimulai, dengan format ekspresi cron. Jika Anda ingin instance VM untuk dimulai pada waktu tertentu, jadwalkan operasi 15 menit lebih awal dari yang diperlukan. Untuk mengetahui informasi selengkapnya, lihat jadwal operasi mulai.
    • STOP-OPERATION_SCHEDULE: jadwal yang menjelaskan kapan instance VM yang terpasang dihentikan, dengan format ekspresi cron. Jika Anda ingin instance VM untuk berhenti pada waktu tertentu, jadwalkan operasi 15 menit lebih awal dari yang diperlukan. Untuk informasi selengkapnya, lihat jadwal operasi perhentian.
  • TIME_ZONE: Opsional: zona waktu IANA berbasis lokasi untuk jadwal instance ini. Jika dihilangkan, nilai default UTC akan digunakan. Untuk mengetahui informasi selengkapnya, lihat zona waktu.
  • INITIATION_DATE: Opsional: tanggal pertama jadwal instance berlaku, dengan format stempel waktu RFC 3339. Jika dihilangkan, jadwal akan langsung berlaku. Untuk mengetahui informasi selengkapnya, lihat tanggal mulai.
  • END_DATE: Opsional: tanggal terakhir jadwal instance berlaku, dengan format sebagai stempel waktu RFC 3339. Jika dihilangkan, jadwal akan berlaku tanpa batas waktu. Untuk mengetahui informasi selengkapnya, lihat tanggal akhir.

REST

Untuk membuat jadwal instance menggunakan Compute Engine API, buat permintaan menggunakan metode resourcePolicies.insert:

POST https://compute.googleapis.com/compute/v1/projects/PROJECT/regions/REGION/resourcePolicies
{
  "name": "SCHEDULE_NAME",
  "description": "SCHEDULE_DESCRIPTION",
  "instanceSchedulePolicy": {
    "vmStartSchedule": {
      "schedule": "START-OPERATION_SCHEDULE"
    },
    "vmStopSchedule": {
      "schedule": "STOP-OPERATION_SCHEDULE"
    },
    "timeZone": "TIME_ZONE",
    "startTime":"INITIATION_DATE",
    "expirationTime":"END_DATE"
  }
}

Ganti kode berikut:

  • PROJECT: project ID Anda.
  • REGION: region tempat instance VM yang ingin Anda sertakan ke jadwal instance ini berada.
  • SCHEDULE_NAME: nama jadwal instance baru.
  • SCHEDULE_DESCRIPTION: Opsional: deskripsi jadwal instance baru.
  • START-OPERATION_SCHEDULE atau STOP-OPERATION_SCHEDULE: Tentukan setidaknya salah satu dari hal berikut:
    • START-OPERATION_SCHEDULE: jadwal yang menjelaskan kapan instance VM yang terpasang dimulai, dengan format ekspresi cron. Jika Anda ingin instance VM untuk dimulai pada waktu tertentu, jadwalkan operasi 15 menit lebih awal dari yang diperlukan. Untuk mengetahui informasi selengkapnya, lihat jadwal operasi mulai.
    • STOP-OPERATION_SCHEDULE: jadwal yang menjelaskan kapan instance VM yang terpasang dihentikan, dengan format ekspresi cron. Jika Anda ingin instance VM untuk berhenti pada waktu tertentu, jadwalkan operasi 15 menit lebih awal dari yang diperlukan. Untuk informasi selengkapnya, lihat jadwal operasi perhentian.
  • TIME_ZONE: zona waktu IANA berbasis lokasi untuk jadwal instance ini. Untuk mengetahui informasi selengkapnya, lihat zona waktu.
  • INITIATION_DATE: Opsional: tanggal pertama jadwal instance berlaku, dengan format stempel waktu RFC 3339. Jika dihilangkan, jadwal akan langsung berlaku. Untuk mengetahui informasi selengkapnya, lihat tanggal mulai.
  • END_DATE: Opsional: tanggal terakhir jadwal instance berlaku, dengan format sebagai stempel waktu RFC 3339. Jika dihilangkan, jadwal akan berlaku tanpa batas waktu. Untuk mengetahui informasi selengkapnya, lihat tanggal akhir.

Setiap jadwal instance memiliki setelan berikut:

jadwal operasi awal, jadwal penghentian operasi

Jadwal yang menjelaskan kapan jadwal instance memulai dan menghentikan instance VM yang terpasang. Jadwal instance dapat memiliki salah satu jadwal ini atau keduanya.

Saat membuat jadwal instance menggunakan Konsol Google Cloud, Anda dapat memilih Start time, Stop time, dan Frequency atau memformat setiap jadwal sebagai ekspresi cron. Saat membuat jadwal instance menggunakan gcloud CLI atau Compute Engine API, Anda harus memformat setiap jadwal sebagai ekspresi cron.

Tabel berikut menentukan kolom ekspresi cron dan nilai yang didukung untuk setiap kolom.

Menit Jam Hari dalam sebulan Month Hari dalam seminggu
0-59 0-23 1-31

dengan 29-31 hanya berlaku untuk bulan-bulan yang relevan

1-12 0-6 atau SUN-SAT (Minggu-Sabtu)

di mana 0=SUN, 1=MON, … 6=SAT

Selain nilai ini, setiap kolom dalam ekspresi cron juga dapat menggunakan karakter khusus berikut.
Karakter khusus Arti Contoh
* apa pun Jika kolom hari dalam sebulan, kolom bulan, dan kolom hari dalam semua ditetapkan ke *, jadwal akan berulang setiap hari.
- rentang Jika kolom hari dalam seminggu ditetapkan ke MON-FRI (atau 1-5), jadwal akan diulang setiap minggu, Senin sampai Jumat.
, list Jika kolom bulan ditetapkan ke 1-6,8-12, jadwal akan diulang setiap bulan, kecuali bulan Juli.

Saat Anda menulis ekspresi cron, pertimbangkan hal berikut:

  • Spasi kosong digunakan untuk memisahkan kolom ekspresi cron. Ingatlah untuk tidak menambahkan spasi kosong tambahan di kolom yang menggunakan karakter khusus.
  • Jika Anda menentukan hari dalam seminggu dan hari dalam sebulan (jika tidak ada kolom yang ditetapkan ke *), jadwal akan menggunakan gabungan dari nilai-nilai tersebut, bukan potongannya. Misalnya, jadwal 0 8 1 * MON dimulai pukul 08.00 setiap hari Senin dan pada hari pertama setiap bulan. Jadwal tersebut tidak dimulai pada pukul 08.00 hanya pada hari Senin yang juga merupakan hari pertama setiap bulan.
zona waktu

Zona waktu IANA berbasis lokasi untuk jadwal awal operasi dan jadwal penghentian operasi. Database zona waktu IANA menentukan daftar nilai yang tersedia. Zona waktu ini hanya digunakan sebagai referensi untuk jadwal operasi mulai dan jadwal penghentian operasi. Zona waktu ini tidak digunakan untuk tanggal mulai dan tanggal akhir. Zona waktu bersifat opsional saat menggunakan gcloud CLI atau Compute Engine API. Jika dihilangkan, nilai default UTC akan digunakan.

Beberapa zona waktu IANA menerapkan waktu musim panas (DST), yang dapat memengaruhi jadwal instance Anda. Detail DST—seperti kapan DST dimulai dan berakhir, serta berapa banyak waktu yang dilewati dan diulang—bervariasi menurut setiap zona waktu.

tanggal mulai, tanggal akhir

Jangka waktu jadwal instance berlaku. Kedua nilai tersebut bersifat opsional. Operasi akan berulang setiap tahunnya kecuali jika Anda menentukan nilai ini untuk membatasi jadwal menjadi satu tahun.

Saat membuat jadwal instance menggunakan konsol Google Cloud, pilih tanggal, waktu, dan zona waktu menggunakan kolom Tanggal mulai dan Tanggal akhir.

Saat membuat jadwal instance menggunakan gcloud CLI atau Compute Engine API, nilai ini diformat sebagai stempel waktu RFC 3339:

  YYYY-MM-DDTHH:MM:SSOFFSET

Ganti kode berikut:

  • YYYY-MM-DD: tanggal dengan format sebagai tahun 4 digit, bulan 2 digit, dan hari 2 digit dari bulan yang dipisahkan dengan tanda hubung.
  • HH:MM:SS: waktu dengan format 2 digit jam menggunakan waktu 24 jam, 2 digit menit, dan 2 digit detik yang dipisahkan oleh titik dua.
  • OFFSET: zona waktu yang diformat sebagai penyeimbang Waktu Universal Terkoordinasi (Coordinated Universal Time/UTC). Misalnya, Waktu Standar Pasifik (PST), yang 8 jam lebih awal dari UTC, ditulis sebagai -08:00. Atau, jika tidak ingin menggunakan offset (zona waktu UTC), tulis Z.

Mencantumkan jadwal instance

Cantumkan jadwal instance untuk melihat semua jadwal instance yang ada untuk project Anda.

Konsol

  1. Di konsol Google Cloud, buka halaman Instance VM.

    Buka instance VM

  2. Klik tab Jadwal instance di bagian atas halaman. Tindakan ini akan menampilkan daftar semua jadwal instance untuk project ini.

gcloud

Untuk melihat daftar semua kebijakan resource, termasuk jadwal instance, menggunakan gcloud CLI, gunakan perintah gcloud compute resource-policies list. Secara opsional, untuk membatasi hasil ke region tertentu, sertakan flag --filter.

gcloud compute resource-policies list \
    [--filter="region:(REGION)"]

Ganti kode berikut:

  • REGION: Opsional: region tempat jadwal instance yang ingin Anda cantumkan berada.

REST

Untuk melihat daftar semua kebijakan resource Anda, termasuk jadwal instance, di region tertentu menggunakan Compute Engine API, buat permintaan menggunakan metode resourcePolicies.list:

GET https://compute.googleapis.com/compute/v1/projects/PROJECT/regions/REGION/resourcePolicies

Ganti kode berikut:

  • PROJECT: project ID Anda.
  • REGION: region tempat jadwal instance yang ingin Anda cantumkan.

Mendeskripsikan jadwal instance

Deskripsikan jadwal instance untuk melihat deskripsi, pengaturan waktu, operasi, dan daftar semua instance VM yang menyertainya.

Konsol

  1. Di konsol Google Cloud, buka halaman Instance VM.

    Buka instance VM

  2. Klik tab Jadwal instance di bagian atas halaman. Tindakan ini akan menampilkan daftar semua jadwal instance untuk project ini.

  3. Klik nama jadwal instance yang ingin Anda deskripsikan. Tindakan ini akan membuka halaman Detail jadwal instance untuk jadwal tersebut.

gcloud

Untuk menjelaskan jadwal instance menggunakan gcloud CLI, gunakan perintah gcloud compute resource-policies describe:

gcloud compute resource-policies describe SCHEDULE_NAME \
    [--region=REGION]

Ganti kode berikut:

  • SCHEDULE_NAME: nama jadwal instance yang ingin Anda deskripsikan.
  • REGION: Opsional: region tempat jadwal instance berada.

Outputnya mirip dengan hal berikut ini:

...
description: Every Monday to Friday in 2022, start VMs at 8 AM and stop VMs at 5 PM.
...
instanceSchedulePolicy:
 expirationTime: '2022-12-31T23:59:59Z'
 startTime: '2022-01-01T00:00:00Z'
 timeZone: UTC
 vmStartSchedule:
   schedule: 0 8 * * MON-FRI
 vmStopSchedule:
   schedule: 0 17 * * MON-FRI
...
name: example-instance-schedule
region: https://www.googleapis.com/compute/v1/projects/example-project/regions/us-west1
resourceStatus:
 instanceSchedulePolicy:
   nextRunStartTime: '2022-01-03T08:00:00Z'
...
status: READY

REST

Untuk mendeskripsikan jadwal instance menggunakan Compute Engine API, buat permintaan menggunakan metode resourcePolicies.get:

GET https://compute.googleapis.com/compute/v1/projects/PROJECT/regions/REGION/resourcePolicies/SCHEDULE_NAME

Ganti kode berikut:

  • PROJECT: project ID Anda.
  • REGION: region tempat jadwal instance berada.
  • SCHEDULE_NAME: nama jadwal instance yang ingin Anda deskripsikan.

Outputnya mirip dengan hal berikut ini:

{
  ...
  "description": "Every Monday to Friday in 2022, start VMs at 8 AM and stop VMs at 5 PM.",
  "name": "example-instance-schedule",
  "instanceSchedulePolicy": {
    "vmStartSchedule": {
      "schedule": "0 8 * * MON-FRI"
    },
    "vmStopSchedule": {
      "schedule": "0 17 * * MON-FRI"
    },
    "timeZone": "UTC",
    "startTime": "2022-01-01T00:00:00Z",
    "expirationTime": "2022-12-31T23:59:59Z"
  },
  "status": "READY",
  "resourceStatus": {
    "instanceSchedulePolicy": {
      "nextRunStartTime": "2022-01-03T08:00:00Z"
    }
  },
  ...
}

Menghapus jadwal instance

Hapus jadwal instance saat Anda tidak lagi memerlukannya dengan menghapus instance VM yang terpasang dan kebijakan resource.

Konsol

  1. Di konsol Google Cloud, buka halaman Instance VM.

    Buka instance VM

  2. Klik tab Jadwal instance di bagian atas halaman. Tindakan ini akan menampilkan daftar semua jadwal instance untuk project ini.

  3. Pilih kotak centang untuk jadwal instance yang ingin dihapus.

  4. Klik Hapus di bagian atas halaman. Tindakan ini akan membuka dialog baru untuk mengonfirmasi tindakan ini.

  5. Pada dialog, klik Hapus.

gcloud

  1. Jika jadwal instance ini disertakan ke instance VM apa pun, hapus instance tersebut.
    1. Untuk memeriksa instance VM mana yang menggunakan jadwal ini, jelaskan jadwal instance.
    2. Untuk setiap instance VM yang dipasangi jadwal ini, hapus jadwal instance.
  2. Untuk menghapus jadwal instance menggunakan gcloud CLI, gunakan perintah gcloud compute resource-policies delete:

    gcloud compute resource-policies delete SCHEDULE_NAME \
       [--region=REGION]
    

    Ganti kode berikut:

    • SCHEDULE_NAME: nama jadwal instance yang ingin Anda hapus.
    • REGION: Opsional: region tempat jadwal instance berada.

REST

  1. Jika jadwal instance ini disertakan ke instance VM apa pun, hapus instance tersebut.
    1. Untuk memeriksa instance VM mana yang menggunakan jadwal ini, jelaskan jadwal instance.
    2. Untuk setiap instance VM yang dipasangi jadwal ini, hapus jadwal instance.
  2. Untuk menghapus jadwal instance menggunakan Compute Engine API, buat permintaan menggunakan metode resourcePolicies.delete:

    DELETE https://compute.googleapis.com/compute/v1/projects/PROJECT/regions/REGION/resourcePolicies/SCHEDULE_NAME
    

    Ganti kode berikut:

    • PROJECT: project ID Anda.
    • REGION: region tempat jadwal instance berada.
    • SCHEDULE_NAME: nama jadwal instance yang ingin Anda hapus.

Menggunakan jadwal instance dengan instance VM

Untuk menggunakan jadwal instance, sertakan jadwal tersebut ke satu atau beberapa instance VM yang ingin Anda ikuti jadwalnya. Anda dapat menyertakan jadwal instance ke instance VM yang ada atau saat membuat instance VM baru. Agar instance VM tidak mengikuti jadwal instance yang terpasang, hapus jadwal dari instance VM tersebut.

Menyertakan jadwal instance saat membuat instance VM baru

Untuk menyertakan jadwal instance ke instance VM baru, Anda harus membuat instance VM di region yang sama dengan jadwal instance yang Anda gunakan. Pelajari lebih lanjut cara membuat instance VM.

Konsol

Anda tidak dapat menyertakan jadwal instance saat membuat instance menggunakan konsol Google Cloud. Agar dapat menggunakan konsol Google Cloud untuk menyertakan jadwal instance ke instance VM baru, buat instance VM, lalu sertakan jadwal ke instance VM.

gcloud

Untuk menambahkan jadwal instance ke instance VM menggunakan gcloud CLI, gunakan perintah gcloud compute instances create dengan flag --resource-policies. Misalnya, untuk membuat instance VM dari image publik dengan jadwal instance terpasang, gunakan perintah berikut:

gcloud compute instances create VM_NAME \
    --resource-policies=SCHEDULE_NAME \
    [--zone=ZONE] \
    [--image IMAGE | --image-family IMAGE_FAMILY] \
    [--image-project IMAGE_PROJECT]

Ganti kode berikut:

  • VM_NAME: nama instance VM tempat Anda ingin menyertakan jadwal instance.
  • SCHEDULE_NAME: nama jadwal instance yang ingin disertakan.
  • ZONE: Opsional: zona tempat instance VM Anda berada.
  • Opsional: buat instance VM dari image publik:
    • IMAGE atau IMAGE_FAMILY: Tentukan salah satu dari hal berikut:
    • IMAGE: versi image publik yang diperlukan. Contoh, --image debian-10-buster-v20200309.
    • IMAGE_FAMILY: kelompok image. Tindakan ini akan membuat VM dari image OS terbaru yang tidak digunakan lagi. Misalnya, jika Anda menentukan --image-family debian-10, Compute Engine akan membuat VM dari versi terbaru image OS dalam kelompok image Debian 10.
    • IMAGE_PROJECT: project yang berisi gambar.

REST

Untuk melampirkan jadwal instance ke instance VM menggunakan Compute Engine API, buat permintaan menggunakan metode instances.insert dan sertakan atribut resourcePolicies. Misalnya, untuk membuat instance VM dari image publik dengan jadwal instance terpasang, buat permintaan berikut:

POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances
{
  "machineType": "zones/MACHINE_TYPE_ZONE/machineTypes/MACHINE_TYPE",
  "name": "VM_NAME",
  "disks": [
    {
      "initializeParams": {
        "sourceImage": "projects/IMAGE_PROJECT/global/images/IMAGE"
      },
      "boot": true
    }
  ],
  "resourcePolicies": [
    "https://compute.googleapis.com/compute/v1/projects/PROJECT/regions/REGION/resourcePolicies/SCHEDULE_NAME"
  ]
}

Ganti kode berikut:

  • PROJECT_ID: ID project untuk membuat VM.
  • ZONE: zona tempat VM dibuat.
  • MACHINE_TYPE_ZONE: zona yang berisi jenis mesin yang akan digunakan untuk VM baru.
  • MACHINE_TYPE: jenis mesin, bawaan atau kustom, untuk VM baru.
  • VM_NAME: name VM baru.
  • Opsional: buat instance VM dari image publik:
    • IMAGE_PROJECT: project yang berisi gambar. Misalnya, jika Anda menentukan debian-10 sebagai kelompok image, tentukan debian-cloud sebagai project image.
    • IMAGE atau IMAGE_FAMILY: menentukan salah satu dari hal berikut ini:
    • IMAGE: versi image publik yang diperlukan. Sebagai contoh, "sourceImage": "projects/debian-cloud/global/images/debian-10-buster-v20200309"
    • IMAGE_FAMILY: kelompok image. Tindakan ini akan membuat VM dari image OS terbaru yang tidak digunakan lagi. Misalnya, jika Anda menentukan "sourceImage": "projects/debian-cloud/global/images/family/debian-10", Compute Engine akan membuat VM dari versi terbaru OS image dalam kelompok image Debian 10.
  • REGION: region tempat jadwal instance berada.
  • SCHEDULE_NAME: nama jadwal instance yang ingin disertakan.

Anda dapat memeriksa keberhasilan jadwal instance dengan memeriksa log audit untuk kebijakan resource jadwal instance dan instance VM yang terpasang. Anda mungkin harus menunggu hingga 15 menit setelah waktu yang dijadwalkan untuk setiap operasi.

Menyertakan jadwal instance ke instance VM yang ada

Anda dapat menyertakan jadwal instance ke instance VM yang ada, yang terletak di region yang sama dengan jadwal instance.

Konsol

  1. Di konsol Google Cloud, buka halaman Instance VM.

    Buka instance VM

  2. Klik tab Jadwal instance di bagian atas halaman. Tindakan ini akan menampilkan daftar semua jadwal instance untuk project ini.

  3. Klik nama jadwal instance yang ingin Anda sertakan. Halaman Detail jadwal instance akan terbuka.

  4. Klik Add instances to schedule. Panel Tambahkan instance ke jadwal akan terbuka.

  5. Pilih kotak centang untuk setiap instance VM yang ingin Anda sertakan jadwalnya.

  6. Klik Tambahkan.

gcloud

Untuk menambahkan jadwal instance ke instance VM menggunakan gcloud CLI, gunakan perintah gcloud compute instances add-resource-policies:

gcloud compute instances add-resource-policies VM_NAME \
    --resource-policies=SCHEDULE_NAME \
    [--zone=ZONE]

Ganti kode berikut:

  • VM_NAME: nama instance VM tempat Anda ingin menyertakan jadwal instance.
  • SCHEDULE_NAME: nama jadwal instance yang ingin disertakan.
  • ZONE: Opsional: zona tempat instance VM Anda berada.

REST

Untuk menyertakan jadwal instance ke instance VM menggunakan Compute Engine API, buat permintaan menggunakan metode instances.addResourcePolicies:

POST https://www.googleapis.com/compute/v1/projects/PROJECT/zones/ZONE/instances/VM_NAME/addResourcePolicies
{
  "resourcePolicies": "https://compute.googleapis.com/compute/v1/projects/PROJECT/regions/REGION/resourcePolicies/SCHEDULE_NAME"
}

Ganti kode berikut:

  • PROJECT: project ID Anda.
  • ZONE: zona tempat instance VM Anda berada.
  • VM_NAME: nama instance VM tempat Anda ingin menyertakan jadwal instance.
  • REGION: region tempat jadwal instance berada.
  • SCHEDULE_NAME: nama jadwal instance yang ingin disertakan.

Anda dapat memeriksa keberhasilan jadwal instance dengan memeriksa log audit untuk kebijakan resource jadwal instance dan instance VM yang terpasang. Anda mungkin harus menunggu hingga 15 menit setelah waktu yang dijadwalkan untuk setiap operasi.

Menghapus jadwal instance dari instance VM

Untuk menghentikan instance VM agar tidak mengikuti jadwal instance, hapus jadwal instance dari instance VM.

Konsol

  1. Di konsol Google Cloud, buka halaman Instance VM.

    Buka instance VM

  2. Klik tab Jadwal instance di bagian atas halaman. Daftar semua jadwal instance untuk project ini ditampilkan.

  3. Klik nama jadwal instance yang ingin Anda hapus. Halaman Detail jadwal instance akan terbuka.

  4. Di bagian Instance Terpasang, pilih kotak centang untuk setiap instance VM yang ingin Anda hapus dari jadwal ini.

  5. Klik Hapus instance dari jadwal. Tindakan ini akan membuka dialog baru untuk mengonfirmasi tindakan ini.

  6. Dalam dialog, klik Hapus.

gcloud

Untuk menghapus jadwal instance dari instance VM menggunakan gcloud CLI, gunakan perintah gcloud compute instances remove-resource-policies:

gcloud compute instances remove-resource-policies VM_NAME \
    --resource-policies=SCHEDULE_NAME \
    [--zone=ZONE]

Ganti kode berikut:

  • VM_NAME: nama instance VM yang jadwal instance-nya ingin Anda hapus.
  • SCHEDULE_NAME: nama jadwal instance yang ingin Anda hapus.
  • ZONE: Opsional: zona tempat instance VM Anda berada.

REST

Untuk menghapus jadwal instance dari instance VM menggunakan Compute Engine API, buat permintaan menggunakan metode instances.removeResourcePolicies:

POST https://www.googleapis.com/compute/v1/projects/PROJECT/zones/ZONE/instances/VM_NAME/removeResourcePolicies
{
  "resourcePolicies": "https://compute.googleapis.com/compute/v1/projects/PROJECT/regions/REGION/resourcePolicies/SCHEDULE_NAME"
}

Ganti kode berikut:

  • PROJECT: project ID Anda.
  • ZONE: zona tempat instance VM Anda berada.
  • VM_NAME: nama instance VM yang jadwal instance-nya ingin Anda hapus.
  • REGION: region tempat jadwal instance berada.
  • SCHEDULE_NAME: nama jadwal instance yang ingin Anda hapus.

Langkah selanjutnya