Mengelola jadwal snapshot untuk disk


Dokumen ini menjelaskan cara mengelola jadwal snapshot untuk Persistent Disk zonal dan regional serta Hyperdisk Google Cloud.

Anda dapat mengelola jadwal snapshot sebagai berikut:

  • Melihat jadwal snapshot
  • Mengubah jadwal snapshot
  • Hapus beberapa jadwal snapshot

Anda juga dapat mengonfigurasi pemberitahuan untuk snapshot terjadwal.

Sebelum memulai

  • 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

    1. Install the Google Cloud CLI, then initialize it by running the following command:

      gcloud init
    2. Set a default region and zone.
    3. 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.

Peran dan izin yang diperlukan

Untuk mendapatkan izin yang Anda perlukan guna membuat jadwal snapshot, minta administrator untuk memberi Anda peran IAM berikut pada project:

Untuk mengetahui informasi selengkapnya tentang cara memberikan peran, lihat Mengelola akses ke project, folder, dan organisasi.

Peran bawaan ini berisi izin yang diperlukan untuk membuat jadwal snapshot. Untuk melihat izin yang benar-benar diperlukan, luaskan bagian Izin yang diperlukan:

Izin yang diperlukan

Izin berikut diperlukan untuk membuat jadwal snapshot:

  • Untuk melihat jadwal snapshot: compute.resourcePolicies.list di project atau organisasi
  • Untuk memperbarui jadwal snapshot:
    • compute.resourcePolicies.update pada kebijakan resource
    • compute.resourcePolicies.get pada kebijakan resource
  • Untuk mengganti jadwal snapshot:
    • compute.resourcePolicies.use pada kebijakan resource
    • compute.disks.addResourcePolicies pada disk
    • compute.disks.removeResourcePolicies pada disk
  • Untuk menghapus jadwal snapshot:
    • compute.resourcePolicies.delete pada kebijakan resource
    • compute.disks.removeResourcePolicies pada disk

Anda mungkin juga bisa mendapatkan izin ini dengan peran khusus atau peran bawaan lainnya.

Melihat jadwal snapshot

Untuk mendapatkan daftar jadwal snapshot, gunakan konsol, perintah gcloud, atau metode Compute Engine API. Permintaan ini menampilkan nama, deskripsi, dan region semua jadwal snapshot dalam sebuah project.

Konsol

  1. Di Konsol Google Cloud, buka halaman Snapshot.

    Buka halaman Snapshots

  2. Pilih tab Jadwal snapshot.
  3. Gunakan kolom Filter untuk mempersempit daftar jadwal snapshot.
  4. Klik nama jadwal snapshot untuk melihat detailnya.

gcloud

Untuk melihat daftar jadwal snapshot, gunakan perintah resource-policies list.

 gcloud compute resource-policies list

Untuk melihat deskripsi jadwal snapshot tertentu, gunakan perintah resource-policies describe.

gcloud compute resource-policies describe SCHEDULE_NAME

Ganti SCHEDULE_NAME dengan nama jadwal snapshot.

REST

Buat permintaan GET ke resourcePolicies.aggregatedList untuk menampilkan daftar jadwal snapshot untuk sebuah project.

GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/aggregated/resourcePolicies

Ganti PROJECT_ID dengan nama project.

Melihat jadwal snapshot berdasarkan region

Untuk melihat jadwal snapshot untuk project dalam region tertentu, gunakan konsol Google Cloud, gcloud CLI, atau REST.

Konsol

  1. Di Konsol Google Cloud, buka halaman Snapshot.

    Buka halaman Snapshots

  2. Pilih tab Jadwal snapshot.
  3. Gunakan kolom Filter untuk mencantumkan jadwal snapshot untuk region tertentu.

gcloud

Untuk melihat jadwal snapshot project dalam region tertentu, gunakan perintah resource-policies list.

gcloud compute resource-policies list PROJECT_ID --filter REGION

Ganti kode berikut:

  • PROJECT_ID: nama project
  • REGION: region, misalnya us-west1

REST

Buat permintaan GET ke metode resourcePolicies.list untuk mengambil jadwal snapshot yang dibuat dalam suatu region.

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

Ganti kode berikut:

  • PROJECT_ID: nama project
  • REGION: region, misalnya us-west1

Mengubah jadwal snapshot

Setelah membuat jadwal snapshot, Anda dapat mengubah kolom berikut secara dinamis, menggunakan prosedur Mengupdate jadwal snapshot:

  • Deskripsi
  • Jadwal snapshot
  • Label diterapkan ke snapshot yang dibuat
  • Kebijakan penghapusan disk sumber untuk menangani snapshot yang dibuat secara otomatis jika disk sumber dihapus
  • Kebijakan retensi untuk menentukan durasi penyimpanan snapshot yang dihasilkan dari jadwal snapshot

Untuk memperbarui nilai lain untuk jadwal snapshot, Anda harus menghapus jadwal snapshot dan membuat yang baru, seperti yang dijelaskan dalam artikel Mengganti jadwal snapshot.

Pembaruan jadwal snapshot berlaku di snapshot pertama setelah update. Jika snapshot berjalan saat Anda memperbarui jadwal snapshot, perubahan akan diterapkan pada snapshot berikut.

Memperbarui jadwal snapshot

Anda dapat menggunakan Google Cloud CLI atau Compute Engine API untuk mengubah beberapa properti jadwal snapshot Anda, seperti yang dijelaskan dalam Mengubah jadwal snapshot.

Untuk mengubah properti lain dari jadwal snapshot Anda, gunakan metode yang dijelaskan dalam Mengganti jadwal snapshot.

Konsol

  1. Di Konsol Google Cloud, buka halaman Snapshot.

    Buka halaman Snapshot

  2. Pilih Jadwal snapshot untuk melihat daftar jadwal Anda.
  3. Klik nama jadwal snapshot yang ingin Anda ubah.
  4. Di halaman detail jadwal snapshot, klik tombol Edit jadwal.

gcloud

Gunakan perintah compute resource-policies update untuk memperbarui deskripsi, jadwal, kebijakan retensi, atau label jadwal snapshot.

gcloud compute resource-policies update snapshot-schedule SCHEDULE_NAME \
   --region=REGION \
   --description="DESCRIPTION" \
   --snapshot-labels="KEY=VALUE" \
   --max-retention-days=DAYS \
   --on-source-disk-delete=DELETE_OPTION \
   --start-time=START_TIME \
   SCHEDULE_FLAG

Ganti kode berikut:

  • SCHEDULE_NAME: nama jadwal snapshot.
  • REGION: region tempat jadwal snapshot Anda berada.
  • DESCRIPTION: deskripsi jadwal snapshot. Gunakan kutipan untuk deskripsi Anda.
  • KEY dan VALUE: pasangan nilai kunci yang dapat digunakan untuk mengelompokkan resource yang terhubung atau terkait.
  • DAYS: Jumlah maksimum hari snapshot disimpan sebelum dihapus.
  • DELETE_OPTION: Perilaku retensi snapshot otomatis setelah disk asli dihapus. Nilainya harus berupa salah satu dari:
    • apply-retention-policy: Saat disk sumber dihapus, terus terapkan periode retensi data untuk setiap snapshot yang dibuat berdasarkan jadwal snapshot.
    • keep-auto-snapshots: (Default) Jika disk sumber dihapus, simpan semua snapshot yang dibuat berdasarkan jadwal snapshot, terlepas dari periode retensi.
  • START_TIME: waktu mulai UTC. Waktu harus dimulai di awal jam. Misalnya:
    • 14.00 PST adalah 22:00.
    • Jika Anda menetapkan waktu mulai 22:13, Anda akan menerima error.
  • SCHEDULE_FLAG: salah satu flag berikut:

    • --hourly-schedule=HOURLY_INTERVAL: jumlah jam antara setiap snapshot. HOURLY_INTERVAL harus berupa bilangan bulat antara 1 dan 23. Misalnya, menetapkan --hourly-schedule ke 12, berarti snapshot dihasilkan setiap 12 jam.
    • --daily-schedule: menjalankan snapshot setiap hari, pada waktu START_TIME
    • --weekly-schedule=WEEKLY_INTERVAL: menentukan hari saat Anda ingin snapshot dilakukan. Anda harus menjelaskan hari kerja; nilai-nilainya tidak peka huruf besar/kecil.

    • --weekly-schedule-from-file=FILE_NAME: menentukan file yang berisi jadwal snapshot mingguan. Anda dapat menentukan jadwal mingguan pada hari yang berbeda dalam seminggu dan pada waktu yang berbeda menggunakan file. Misalnya, file Anda mungkin menentukan jadwal snapshot pada hari Senin dan Rabu: none [{"day": "MONDAY", "startTime": "04:00"}, {"day": "WEDNESDAY", "startTime": "02:00"}] Jika Anda menyertakan waktu mulai dalam file, Anda tidak perlu menetapkan jadwal --start-time. Jadwal menggunakan zona waktu UTC. Waktu harus dimulai di awal jam. Contoh:

      • 14.00 PST adalah 22:00.
      • Jika Anda menetapkan waktu mulai 22:13, Anda akan menerima error.

    Flag frekuensi snapshot hourly-schedule, daily-schedule, weekly-schedule, dan weekly-schedule-from-file bersifat eksklusif satu sama lain. Anda hanya dapat menggunakan satu opsi untuk jadwal snapshot Anda.

Contoh:

Untuk mengubah jadwal snapshot ke jadwal harian:

gcloud compute resource-policies update snapshot-schedule SCHEDULE_NAME \
    --region=REGION --daily-schedule --start-time=START_TIME

Untuk mengubah snapshot menjadi jadwal per jam, dan juga memperbarui deskripsi dan label snapshot:

gcloud compute resource-policies update snapshot-schedule SCHEDULE_NAME \
    --region=REGION --description="DESCRIPTION" \
    --hourly-schedule=HOURLY_INTERVAL --start-time=START_TIME \
    --snapshot-labels="KEY=VALUE"

Untuk mengubah kebijakan retensi snapshot dan penghapusan disk sumber untuk jadwal snapshot:

gcloud compute resource-policies update snapshot-schedule SCHEDULE_NAME \
    --region=REGION --max-retention-days=DAYS \
    --on-source-disk-delete=DELETE_OPTION

REST

Buat permintaan PATCH ke metode resourcePolicies untuk memperbarui deskripsi, jadwal, kebijakan retensi, kebijakan penghapusan disk sumber, atau label jadwal snapshot. Dalam isi permintaan, Anda hanya perlu menentukan name dan kolom yang ingin diperbarui.

  • Mengubah deskripsi dan label:

    PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/resourcePolicies/SCHEDULE_NAME
    {
        "name": "SCHEDULE_NAME",
        "description": "DESCRIPTION",
        "snapshotProperties": {
            "labels": {"KEY": "VALUE"}
        }
    }
    
  • Mengubah jadwal snapshot menjadi per jam:

    PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/resourcePolicies/SCHEDULE_NAME
    {
        "name": "SCHEDULE_NAME",
        "snapshotSchedulePolicy": {
            "schedule": {
              "hourlySchedule": {
                  "hoursInCycle": HOURLY_INTERVAL,
                  "startTime": START_TIME
               }
            }
        }
    }
    
  • Mengubah jadwal snapshot menjadi harian:

    PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/resourcePolicies/SCHEDULE_NAME
    {
        "name": "SCHEDULE_NAME",
        "snapshotSchedulePolicy": {
            "schedule": {
              "dailySchedule": {
                  "daysInCycle": DAILY_INTERVAL,
                  "startTime": START_TIME
               }
            }
        }
    }
    
  • Mengubah jadwal snapshot menjadi mingguan:

    PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/resourcePolicies/SCHEDULE_NAME
    {
        "name": "SCHEDULE_NAME",
        "snapshotSchedulePolicy": {
            "schedule": {
               "weeklySchedule": {
                  "dayOfWeeks": [
                     {
                        "day": WEEKLY_INTERVAL,
                        "startTime": START_TIME
                     }
                  ]
               }
            }
        }
    }
    
  • Mengubah kebijakan retensi snapshot:

    PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/resourcePolicies/SCHEDULE_NAME
    {
        "name": "SCHEDULE_NAME",
        "snapshotSchedulePolicy": {
            "retentionPolicy": {
                "maxRetentionDays": DAYS,
                "onSourceDiskDelete":"DELETE_OPTION"
            }
       }
    }
    

Ganti kode berikut:

  • PROJECT_ID: nama project.
  • REGION: region tempat jadwal snapshot berada.
  • SCHEDULE_NAME: nama jadwal snapshot.
  • DESCRIPTION: deskripsi jadwal snapshot. Gunakan kutipan untuk deskripsi Anda.
  • KEY dan VALUE: pasangan nilai kunci yang dapat digunakan untuk mengelompokkan resource yang terhubung atau terkait.
  • HOURLY_INTERVAL: menentukan interval saat Anda ingin snapshot terjadi. Tetapkan jadwal per jam menggunakan bilangan bulat antara 1 dan 23. Agar snapshot dibuat pada waktu yang sama setiap hari, pilih angka yang dibagi secara merata menjadi 24 (1, 2, 3, 4, 6, 8, atau 12). Misalnya, menetapkan --hourly-schedule ke 12, berarti snapshot dihasilkan setiap 12 jam.
  • DAILY_INTERVAL: menentukan jumlah hari antara setiap snapshot. Untuk membuat snapshot setiap hari, gunakan nilai 1.
  • WEEKLY_INTERVAL: menentukan jadwal yang berjalan pada hari tertentu dalam seminggu. Tentukan satu atau beberapa hari. Opsi berikut tersedia: MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY, dan SUNDAY. Anda harus menguraikan hari kerja; mereka tidak peka huruf besar/kecil. Anda dapat menentukan hingga 7 interval untuk dayOfWeeks, satu interval untuk setiap hari dalam seminggu.
  • START_TIME: waktu mulai UTC. Waktu harus dimulai di awal jam. Misalnya:
    • 14.00 PST adalah 22:00 UTC.
    • Jika Anda menetapkan waktu mulai 22:13, Anda akan menerima error.
  • DAYS: Jumlah maksimum hari snapshot disimpan sebelum dihapus.
  • DELETE_OPTION: Perilaku retensi snapshot otomatis setelah disk asli dihapus. Nilainya harus berupa salah satu dari:
    • APPLY_RETENTION_POLICY: Saat disk sumber dihapus, terus terapkan periode retensi data untuk setiap snapshot yang dibuat berdasarkan jadwal snapshot.
    • KEEP_AUTO_SNAPSHOTS: (Default) Jika disk sumber dihapus, simpan semua snapshot yang dibuat berdasarkan jadwal snapshot, terlepas dari periode retensi.

Mengganti jadwal snapshot

Ikuti langkah-langkah berikut untuk menghapus jadwal snapshot dan membuat jadwal baru. Gunakan metode ini untuk mengubah properti jadwal snapshot yang tidak dapat diubah menggunakan prosedur memperbarui jadwal snapshot.

Jika Anda mengganti jadwal snapshot yang sudah terpasang ke disk, Anda harus terlebih dahulu melepaskan jadwal dari disk dan menghapusnya. Kemudian Anda dapat membuat jadwal baru, dan memasangnya ke disk.

Snapshot yang dihasilkan dari jadwal snapshot yang dilepas tidak akan dikelola oleh kebijakan baru. Snapshot tersebut akan dipertahankan tanpa batas waktu sampai Anda menghapusnya.

Gunakan konsol Google Cloud, gcloud CLI, atau REST untuk menghapus dan mengganti jadwal snapshot Anda.

Konsol

  1. Di konsol Google Cloud, buka halaman Disk.

    Buka halaman Disk

  2. Pilih disk dengan jadwal yang ingin Anda lepaskan.
  3. Di halaman Manage disk, klik Edit. Anda mungkin perlu mengklik menu More actions terlebih dahulu.
  4. Buka menu drop-down Jadwal snapshot.
  5. Klik Tidak ada jadwal untuk melepaskan jadwal dari disk.
  6. Anda dapat membuat jadwal baru, atau menukar jadwal saat mengedit opsi disk.
  7. Klik Simpan untuk menyelesaikan tugas.

gcloud

  1. Gunakan perintah gcloud disks remove-resource-policies untuk melepaskan jadwal snapshot dari disk dengan jadwal yang ingin Anda ubah.

    gcloud compute disks remove-resource-policies DISK_NAME \
        --resource-policies SCHEDULE_NAME \
        --region REGION \
        --zone ZONE
    

    Ganti kode berikut:

    • DISK_NAME: nama disk dengan jadwal snapshot yang terpasang
    • SCHEDULE_NAME: nama jadwal snapshot yang ingin Anda lepaskan dari disk ini
    • REGION: region tempat jadwal snapshot Anda berada
    • ZONE: zona tempat disk zonal Anda berada
  2. Gunakan perintah gcloud disks add-resource-policies untuk menambahkan jadwal snapshot baru ke disk.

    gcloud compute disks add-resource-policies DISK_NAME \
         --resource-policies SCHEDULE_NAME \
         --zone ZONE
    

    Ganti kode berikut:

    • DISK_NAME: nama disk dengan kebijakan resource jadwal snapshot
    • SCHEDULE_NAME: nama jadwal snapshot yang ingin Anda tambahkan ke disk ini
    • ZONE: zona tempat disk Anda berada

REST

  1. Lepaskan jadwal snapshot saat ini dari disk dengan membuat permintaan POST ke disks.removeResourcePolicies.

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/disks/DISK_NAME/removeResourcePolicies
    
    {
      "resourcePolicies": [
         "regions/REGION/resourcePolicies/SCHEDULE_NAME"
      ]
    }
    

    Ganti kode berikut:

    • PROJECT_ID: nama project
    • ZONE: zona tempat disk berada
    • DISK_NAME: nama disk dengan jadwal snapshot terkait
    • REGION: lokasi jadwal snapshot
    • SCHEDULE_NAME: nama jadwal snapshot yang Anda hapus dari disk ini
  2. Lampirkan jadwal snapshot baru ke disk dengan membuat permintaan POST ke metode disks.addResourcePolicies.

    POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/disks/DISK_NAME/addResourcePolicies
    
    {
      "resourcePolicies": [
        "regions/REGION/resourcePolicies/SCHEDULE_NAME"
      ]
    }
    

    Ganti kode berikut:

    • PROJECT_ID: nama project
    • ZONE: lokasi disk
    • DISK_NAME: nama disk
    • REGION: lokasi jadwal snapshot
    • SCHEDULE_NAME: nama jadwal snapshot yang Anda terapkan ke disk ini

Hapus jadwal snapshot

Jika Anda menghapus jadwal snapshot, semua snapshot yang dihasilkan secara otomatis terkait jadwal snapshot akan disimpan secara permanen. Namun, setelah dihapus, snapshot tidak dapat dibuat lagi.

Kebijakan retensi Anda adalah bagian dari jadwal snapshot. Setelah jadwal dihapus, kebijakan retensi Anda tidak lagi berlaku. Snapshot yang telah dibuat akan disimpan secara permanen sampai Anda menghapusnya secara manual.

Untuk menghapus jadwal snapshot yang ada, gunakan metode Konsol Google Cloud, Google Cloud CLI, atau Compute Engine API. Jika jadwal sudah terpasang ke disk, lepaskan jadwal dari disk terlebih dahulu, lalu hapus jadwal. Anda tidak dapat menghapus jadwal snapshot yang terpasang pada disk.

Konsol

  1. Di Konsol Google Cloud, buka halaman Snapshot.

    Buka halaman Snapshot

  2. Pilih Jadwal snapshot untuk melihat daftar jadwal Anda.
  3. Pilih jadwal yang tidak terkait dengan disk.
  4. Klik Delete.

gcloud

Untuk menghapus jadwal snapshot, gunakan perintah resource-policies delete.

gcloud compute resource-policies delete SCHEDULE_NAME \
    --region REGION

Ganti kode berikut:

  • SCHEDULE_NAME: nama jadwal snapshot
  • REGION: lokasi jadwal snapshot

REST

Untuk menghapus jadwal snapshot, buat permintaan DELETE ke metode resourcePolicies.delete. Jika jadwal snapshot sudah terpasang ke disk, Anda akan menerima error.

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

Ganti kode berikut:

  • PROJECT_ID: nama project
  • REGION: lokasi jadwal snapshot
  • SCHEDULE_NAME: nama jadwal snapshot

Logging dan pemantauan

Setiap snapshot terjadwal yang terkait dengan disk terus membuat peristiwa sistem, yang dipantau dan dicatat ke dalam log setiap saat. Log audit peristiwa sistem selalu diaktifkan.

Log ini memberikan informasi perilaku tentang snapshot terjadwal Anda untuk setiap disk terkait. Anda dapat melihat log dari menu Logging di konsol Google Cloud.

Untuk mengetahui informasi selengkapnya tentang cara menggunakan Logs Explorer, lihat Melihat log menggunakan Logs Explorer.

Konsol

  1. Di Konsol Google Cloud, buka halaman Logs Explorer.

    Buka halaman Logs Explorer

  2. Di menu drop-down Audited resource, arahkan kursor ke Disk, lalu pilih All disk_id.

  3. Di menu drop-down All logs, pilih cloudaudit.googleapis.com/system_event lalu klik OK.

  4. Di menu drop-down Any log level, pilih jenis log.

Langkah selanjutnya