Menggunakan pemulihan point-in-time (PITR)

Halaman ini menjelaskan cara memulihkan cluster ke status terakhir sebelumnya. Memulihkan data ke titik waktu tertentu ke cluster AlloyDB untuk PostgreSQL direkomendasikan untuk pemulihan cepat dari kehilangan data skala besar.

Sebelum memulai

  • Project Google Cloud yang Anda gunakan harus sudah diaktifkan untuk mengakses AlloyDB.
  • Anda harus memiliki salah satu peran IAM ini di Google Cloud project yang Anda gunakan:
    • roles/alloydb.admin (peran IAM bawaan Admin AlloyDB)
    • roles/owner (peran IAM dasar Pemilik)
    • roles/editor (peran IAM dasar Editor)

    Jika Anda tidak memiliki salah satu peran ini, hubungi Administrator Organisasi Anda untuk meminta akses.

  • Anda harus memiliki semua peran IAM ini di project Google Cloud yang Anda gunakan:
    • compute.networks.list
    • compute.addresses.create
    • compute.addresses.list
    • compute.globalAddresses.create
    • compute.globalAddresses.list
    • servicenetworking.services.addPeering

    Untuk mendapatkan izin ini sambil mengikuti prinsip hak istimewa terendah, minta administrator Anda untuk memberi Anda peran roles/alloydb.admin (IAM bawaan Admin AlloyDB).

Memulihkan dari titik waktu terbaru

AlloyDB memungkinkan Anda memulihkan sepenuhnya data cluster aktif dari titik waktu mana pun dalam rentang terbaru tertentu.

Periode PITR yang tersedia

Anda dapat memulihkan dari titik waktu mana pun setelah momen yang lebih baru dari dua momen berikut:

  • Momen yang diwakili oleh batas periode pemulihan Anda. Misalnya, jika Anda memiliki periode pemulihan 14 hari, maka momen ini adalah 14 hari di masa lalu.

  • Waktu pembuatan cadangan terlama yang diambil sejak Anda terakhir kali mengaktifkan pencadangan berkelanjutan. Jika Anda membuat cluster dengan mengaktifkan pencadangan berkelanjutan, dan Anda belum menonaktifkan pencadangan berkelanjutan sejak saat itu, maka momen ini secara efektif menjadi waktu pembuatan cadangan terlama cluster Anda.

Jika Anda menonaktifkan dan kemudian mengaktifkan kembali pencadangan berkelanjutan, Anda tidak dapat melakukan pemulihan point-in-time hingga Anda atau AlloyDB membuat cadangan baru pertama cluster. Cadangan ini dapat berupa cadangan sesuai permintaan, atau cadangan harian pertama yang diambil AlloyDB setelah Anda mengaktifkan pencadangan berkelanjutan. Untuk mengetahui informasi selengkapnya tentang jenis pencadangan, lihat Ringkasan pencadangan dan pemulihan data.

Melakukan pemulihan point-in-time

  1. Gunakan Google Cloud konsol atau Google Cloud CLI untuk melakukan pemulihan.

    Konsol

    1. Buka halaman Cluster.

      Buka Cluster

    2. Klik cluster di kolom Nama Resource.

    3. Klik Perlindungan data.

    4. Di bagian Pulihkan dari titik waktu, klik Pulihkan.

    5. Di kolom Target time, masukkan tanggal dan waktu untuk memulihkan.

    6. Di kolom Cluster ID, masukkan nama untuk cluster baru.

    7. Di kolom Network, pilih jaringan Virtual Private Cloud yang akan digunakan oleh cluster baru.

    8. Jika Anda ingin mengenkripsi pencadangan berkelanjutan dan log perubahan data cluster ini menggunakan kunci enkripsi yang dikelola pelanggan (CMEK), bukan enkripsi default yang dikelola Google, ikuti langkah-langkah tambahan berikut:

      1. Klik Opsi enkripsi lanjutan.

      2. Klik tombol pilihan Customer-managed encryption key (CMEK).

      3. Klik daftar Pilih kunci yang dikelola pelanggan, lalu pilih kunci.

    9. Klik Pulihkan.

    gcloud

    Gunakan perintah gcloud alloydb clusters restore, dengan menentukan cluster dan stempel waktu. Perhatikan bahwa, tidak seperti memulihkan dari cadangan, pemulihan point-in-time mengharuskan cluster asli masih ada. Anda tidak dapat melakukan pemulihan semacam ini pada cluster yang dihapus.

    gcloud alloydb clusters restore NEW_CLUSTER \
      --source-cluster=SOURCE_CLUSTER \
      --point-in-time=TIMESTAMP \
      --region=REGION

    Perintah ini menampilkan operasi, yang statusnya dapat Anda kueri menggunakan perintah gcloud alloydb operations describe.

    gcloud alloydb operations describe OPERATION_ID \
      --region=REGION

    Ganti kode berikut:

    • NEW_CLUSTER: ID yang akan digunakan dengan cluster baru.

    • SOURCE_CLUSTER: ID cluster untuk memulihkan data.
      Untuk memulihkan dari cluster dalam project yang berbeda, ganti dengan jalur cluster lengkap dalam format berikut:
      projects/SOURCE_PROJECT/locations/SOURCE_REGION/clusters/SOURCE_CLUSTER

    • TIMESTAMP: Deskripsi titik waktu untuk memulihkan data, yang dinyatakan dalam format RFC 3339—misalnya, 2012-11-15T16:19:00.094Z. Anda dapat menentukan pecahan detik sekecil mikrodetik.

      Perhatikan bahwa stempel waktu ini harus ada dalam periode retensi yang Anda tentukan saat membuat cluster.

    • REGION: Region yang berisi cluster sumber, dan tempat AlloyDB membuat cluster baru. Contoh: us-central1.

    • PROJECT_ID: ID project tempat cluster baru berada.

    Jika Anda ingin mengenkripsi data cluster baru dengan kunci enkripsi yang dikelola pelanggan (CMEK), bukan enkripsi yang dikelola Google, Anda harus memberikan argumen tambahan berikut:

    • --kms-key=KEY_ID: ID kunci CMEK yang akan digunakan. * --kms-keyring=KEYRING_ID: ID dari key ring kunci. * --kms-location=LOCATION_ID: ID region keyring tersebut. Perhatikan bahwa region ini harus cocok dengan region cluster.
    • --kms-project=PROJECT_ID: ID project keyring.

    Untuk memulihkan ke cluster dengan Private Service Connect yang diaktifkan, pastikan Anda menambahkan flag --enable-private-service-connect.

  2. Setelah AlloyDB selesai membuat cluster, buat instance utama untuk cluster tersebut. Instance tersebut memungkinkan Anda mengakses data yang dipulihkan. Perhatikan bahwa konfigurasi instance baru tidak harus sama persis dengan instance utama asli.

  3. Opsional: Buat instance pool baca.

Anda dapat mulai menggunakan cluster setelah operasi pemulihan selesai.

Langkah berikutnya