Mengelola pencadangan

Halaman ini menjelaskan cara melakukan operasi pencadangan Memorystore for Redis Cluster. Sebelum membaca halaman ini, Anda harus memahami Cadangan.

Sebelum memulai

  1. Pastikan Anda atau akun pengguna yang Anda gunakan memiliki izin yang diperlukan untuk tindakan yang perlu Anda lakukan.

    Peran Admin Redis dan Editor Redis dapat melakukan semua operasi pencadangan. Peran Redis Viewer dapat melihat dan mengekspor cadangan.

  2. Instal dan update Google Cloud CLI.

Mulai pencadangan sesuai permintaan

Gunakan perintah berikut untuk membuat cadangan sesuai permintaan:

gcloud

gcloud redis clusters create-backup INSTANCE_ID \
--backup-id=BACKUP_ID \
--ttl=TTL_PERIOD \
--project=PROJECT_ID \
--region=REGION

Ganti kode berikut:

  • INSTANCE_ID adalah ID instance Memorystore for Redis Cluster.
  • BACKUP_ID adalah ID untuk cadangan seperti december-2024-backup
  • TTL_PERIOD menentukan time to live (TTL) untuk cadangan. Cadangan akan otomatis dihapus setelah mencapai batas TTL. Setel ke jumlah hari. Contoh, 14d. Nilai minimumnya adalah 1 hari. Jika tidak ditentukan, nilai defaultnya adalah 100 tahun.
  • PROJECT_ID adalah project ID Anda.
  • REGION adalah region tempat cluster Anda berada (misalnya, us-east1).

Perintah ini menampilkan nama operasi dengan format berikut:

projects/PROJECT_ID/locations/REGION/operations/operation-UID

Anda dapat menggunakan perintah gcloud redis operations describe untuk memeriksa status operasi:

gcloud redis operations describe projects/PROJECT_ID/locations/REGION/operations/operation-UID

Anda juga dapat menggunakan perintah gcloud redis operations list untuk mencantumkan semua operasi dalam project dan region.

Mengonfigurasi jadwal pencadangan otomatis

Anda dapat mengonfigurasi jadwal pencadangan harian saat membuat cluster baru atau mengaktifkan jadwal pencadangan harian di cluster yang ada.

Membuat cluster dengan jadwal pencadangan otomatis yang diaktifkan

Contoh berikut menunjukkan cara menetapkan jadwal pencadangan harian saat Anda membuat cluster baru. Untuk mengetahui opsi lainnya yang tersedia saat membuat cluster, lihat Membuat instance.

gcloud

gcloud redis clusters create INSTANCE_ID \
--automated-backup-mode=ENABLED \
--automated-backup-start-time=START_TIME \
--automated-backup-ttl=RETENTION_POLICY

Ganti kode berikut:

  • INSTANCE_ID adalah ID instance Memorystore for Redis Cluster yang Anda buat.
  • START_TIME A menentukan kapan pencadangan akan dimulai. Tentukan waktu dalam format HH:00 pada siklus 24 jam dalam waktu UTC. Misalnya, 23:00.
  • RETENTION_POLICY menentukan jumlah hari untuk menyimpan setiap cadangan. Disetel ke jumlah hari, misalnya, 7d. Durasi maksimumnya adalah 365 hari dan default-nya adalah 35 hari.

    Meskipun setelah cluster dihapus, cadangan akan dipertahankan selama periode retensi dengan maksimum 365 hari. Anda harus menghapus cadangan secara manual untuk menghapus cadangan sebelum periode retensi berakhir.

Mengaktifkan pencadangan terjadwal di cluster yang ada

gcloud

gcloud redis clusters update INSTANCE_ID \
--automated-backup-mode=enabled \
--automated-backup-start-time=START_TIME \
--automated-backup-ttl=RETENTION_POLICY

Ganti kode berikut:

  • INSTANCE_ID adalah ID instance Memorystore for Redis Cluster yang Anda perbarui.
  • START_TIME Stempel waktu yang menentukan kapan pencadangan harus dimulai. Stempel waktu harus berada di tingkat jam dan menentukan periode satu jam saat pencadangan dimulai, misalnya, 2024-01-01T01:00:00Z.

  • RETENTION_POLICY menentukan jumlah hari untuk menyimpan setiap cadangan. Disetel ke jumlah hari, misalnya, 7d.

    Meskipun setelah cluster dihapus, cadangan akan dipertahankan selama periode retensi. Anda harus menghapus cadangan secara manual untuk menghapus cadangan sebelum periode retensi berakhir.

Menonaktifkan pencadangan terjadwal

Gunakan perintah berikut untuk menonaktifkan pencadangan terjadwal di cluster:

gcloud

gcloud redis clusters update INSTANCE_ID \
--automated-backup-mode=disabled

Ganti INSTANCE_ID dengan ID instance Memorystore for Redis Cluster yang Anda update.

Serentak antara operasi pencadangan dan update cluster

Operasi update pada cluster dan operasi pemeliharaan dapat membatalkan operasi pencadangan yang sedang berlangsung dalam situasi berikut:

  • Jika ada operasi yang sedang berlangsung untuk mengupdate cluster, permintaan operasi pencadangan akan ditolak.
  • Jika ada operasi pencadangan yang sedang berlangsung, operasi masuk untuk memperbarui cluster dapat membatalkan dan membuat operasi pencadangan yang sedang berlangsung gagal.
  • Dalam situasi yang jarang terjadi, operasi pemeliharaan dan pencadangan mungkin bertepatan dan menyebabkan operasi pencadangan dilewati untuk instance tersebut.

Mencantumkan dan mendeskripsikan pencadangan

Bagian berikut menunjukkan cara menemukan informasi tentang cadangan yang tersedia.

Mencantumkan koleksi cadangan

Koleksi cadangan mencakup semua cadangan di bawah cluster. Gunakan perintah berikut untuk mencantumkan koleksi cadangan dalam project dan region yang ditentukan:

gcloud

gcloud redis clusters backup-collections list \
--project=PROJECT_ID \
--region=REGION

Ganti kode berikut:

  • REGION adalah region tempat cluster Anda berada (misalnya, us-east1).
  • PROJECT_ID adalah project ID Anda.

Perintah ini akan menampilkan daftar koleksi cadangan yang mirip dengan berikut ini:

BACKUP_COLLECTION_NAME                CLUSTER_NAME                                           CLUSTER_UID
6d9e1ff4-0f89-4c0a-a941-155dd4c3a213  projects/PROJECT_ID/locations/REGION/clusters/cluster1  6e539aed-ee7b-4eea-83ad-b4715b1ef160
dda2f551-b416-47ff-b1cf-684e00483dc9  projects/PROJECT_ID/locations/REGION/clusters/cluster2  57130520-636c-4ac7-ad7e-86f7cfb32838

Mencantumkan cadangan dalam kumpulan cadangan

Gunakan perintah berikut untuk mencantumkan cadangan dalam koleksi cadangan:

gcloud

gcloud redis clusters backups list \
--backup-collection=BACKUP_COLLECTION
--project=PROJECT_ID \
--region=REGION

Ganti kode berikut:

  • BACKUP_COLLECTION adalah nama koleksi cadangan.
  • REGION adalah region tempat cluster Anda berada, seperti us-east1.
  • PROJECT_ID adalah project ID Anda.

Perintah ini akan menampilkan daftar cadangan yang mirip dengan berikut ini:

BACKUP_NAME  STATE   CREATE_TIME                     EXPIRE_TIME
backup-1     ACTIVE  2024-11-10T03:52:40.899882388Z  2124-11-10T03:53:02.856981736Z
backup-2     ACTIVE  2024-11-11T03:48:22.137134936Z  2124-11-11T03:48:44.130735425Z

Mendeskripsikan pencadangan

Gunakan perintah berikut untuk mengambil informasi tentang pencadangan tertentu:

gcloud

gcloud redis clusters backups describe BACKUP_NAME \
--backup-collections=BACKUP_COLLECTION
--project=PROJECT_ID \
--region=REGION

Ganti kode berikut:

  • BACKUP_NAME adalah nama cadangan seperti 2024-05-01-10-15-00.
  • BACKUP_COLLECTION adalah nama koleksi cadangan.
  • REGION adalah region tempat cluster Anda berada, seperti us-east1.
  • PROJECT_ID adalah project ID Anda.

Perintah ini menampilkan informasi tentang cadangan yang mirip dengan berikut ini:

backupFiles:
- createTime: '2024-11-10T03:52:55.539Z'
fileName: 3d2774dab822137c5bac9386f3fa69ee4c73b928.rdb
sizeBytes: '694879680'
- createTime: '2024-11-10T03:52:54.742Z'
fileName: 7f5d99faaefc63ed8292a71da2552db3b06cdcff.rdb
sizeBytes: '694925906'
- createTime: '2024-11-10T03:52:54.972Z'
fileName: 0aac1092a3fb81515aefb6b2421f31eb346c3961.rdb
sizeBytes: '694784169'
cluster: projects/PROJECT_ID/locations/us-east1/clusters/cluster1
clusterUid: 57130520-636c-4ac7-ad7e-86f7cfb32838
createTime: '2024-11-10T03:52:40.899882388Z'
expireTime: '2124-11-10T03:53:02.856981736Z'
name: projects/PROJECT_ID/locations/us-east1/backupCollections/dda2f551-b416-47ff-b1cf-684e00483dc9/backups/december-2024-backup
nodeType: REDIS_HIGHMEM_MEDIUM
shardCount: 3
state: ACTIVE
totalSizeBytes: '2084589755'

Menghapus cadangan

Gunakan perintah berikut untuk menghapus cadangan:

gcloud

gcloud redis clusters backups delete BACKUP_NAME \
--backup-collection=BACKUP_COLLECTION
--project=PROJECT_ID \
--region=REGION

Ganti kode berikut:

  • BACKUP_NAME adalah nama cadangan seperti 2024-05-01-10-15-00.
  • BACKUP_COLLECTION adalah nama koleksi cadangan.
  • REGION adalah region tempat cluster Anda berada, seperti us-east1.
  • PROJECT_ID adalah project ID Anda.

Mengekspor cadangan ke bucket penyimpanan

Anda dapat mengekspor cadangan ke bucket Cloud Storage. Bucket tujuan harus berupa bucket regional dan harus berada di region yang sama dengan cadangan. Memorystore for Redis Cluster harus memiliki izin untuk mengakses bucket Cloud Storage dan membuat folder serta objek di dalam bucket.

Langkah-langkah berikut menunjukkan cara mengekspor cadangan.

  1. Memorystore for Redis Cluster harus memiliki izin untuk mengakses bucket Cloud Storage tujuan. Beri agen layanan Memorystore for Redis Cluster akses ke resource Cloud Storage.

    Agen layanan Memorystore for Redis Cluster menggunakan format penamaan berikut:

    service-PROJECT_NUMBER@cloud-redis.iam.
    

    Ganti PROJECT_NUMBER dengan nomor project dari project tempat cluster atau cadangan berada.

    Beri agen layanan peran yang memberikan izin storage.buckets.get, storage.objects.create, storage.objects.delete, dan storage.folders.create. Misalnya, perintah berikut memberikan peran Storage Admin untuk bucket yang ditentukan kepada agen layanan Memorystore untuk Cluster Redis:

    gcloud

    gcloud storage buckets add-iam-policy-binding gs://BUCKET_NAME \
    --member=serviceAccount:service-PROJECT_NUMBER@cloud-redis.iam. \
    --role=roles/storage.admin
    

    Ganti kode berikut:

    • BUCKET_NAME adalah nama bucket tujuan.
    • PROJECT_NUMBER adalah nomor project yang digunakan dalam nama agen layanan.
  2. Gunakan perintah gcloud redis clusters backups export untuk mengekspor cadangan ke bucket Cloud Storage.

    gcloud

    gcloud redis clusters backups export BACKUP_NAME \
    --region=REGION \
    --backup-collection=BACKUP_COLLECTION \
    --gcs-bucket=BUCKET
    

    Ganti kode berikut:

    • BACKUP_NAME adalah nama cadangan Memorystore for Redis Cluster.
    • BACKUP_COLLECTION adalah nama koleksi cadangan.
    • REGION adalah region tempat koleksi cadangan berada, seperti us-east1.
    • BUCKET_NAME adalah bucket Cloud Storage, yang tidak memiliki gs:// sebagai awalan.

    Bucket harus berupa bucket regional dan harus berada di region yang sama dengan cadangan. Memorystore for Redis Cluster harus memiliki izin untuk mengakses bucket Cloud Storage dan membuat folder serta objek di dalam bucket.

Memulihkan data dari cadangan

Untuk memulihkan data dari cadangan, Anda dapat mengisi cluster baru dari cadangan terkelola di project yang sama atau mengisi cluster baru dari file RDB di bucket penyimpanan. Untuk mengisi cluster dari file RDB, Memorystore for Redis Cluster harus memiliki izin untuk mengakses file.

Menyemai cluster baru dari cadangan

Contoh berikut menunjukkan cara mengimpor data dari cadangan ke cluster baru. Cadangan harus berada di region yang sama dengan cluster baru. Akun utama yang membuat cluster harus memiliki izin redis.backups.get untuk cadangan.

Untuk mengetahui opsi lainnya yang tersedia saat membuat cluster, lihat Membuat instance.

gcloud

gcloud redis clusters create INSTANCE_ID \
--import-managed-backup=BACKUP_NAME \
--region=REGION

Ganti kode berikut:

  • INSTANCE_ID adalah ID instance Memorystore for Redis Cluster yang Anda buat.
  • BACKUP_NAME adalah nama cadangan yang dikelola. Contoh, projects/PROJECT_ID/locations/REGION/backupCollections/BACKUP_COLLECTION_ID/backups/BACKUP_ID.
  • REGION adalah region tempat cluster Anda berada, seperti us-east1.

Menyemai cluster baru dari file RDB di bucket penyimpanan

Contoh berikut menunjukkan cara mengimpor data dari file RDB di bucket Cloud Storage ke cluster baru. Bucket harus berupa bucket regional di region yang sama dengan cluster baru atau bucket dual-region dengan satu region yang sama.

Untuk mengisi cluster dari file RDB di Cloud Storage, Anda harus memberikan akses Memorystore for Redis Cluster ke bucket dan objek Cloud Storage, lalu menjalankan operasi pembuatan.

  1. Memorystore for Redis Cluster harus memiliki izin untuk mengakses objek Cloud Storage. Beri agen layanan Memorystore for Redis Cluster akses ke resource Cloud Storage.

    Agen layanan Memorystore for Redis Cluster menggunakan format penamaan berikut:

    service-PROJECT_NUMBER@cloud-redis.iam.

    Ganti PROJECT_NUMBER dengan nomor project project tempat Anda akan membuat cluster baru.

    Beri agen layanan peran yang memberikan izin storage.buckets.get dan storage.objects.get. Misalnya, perintah berikut memberikan peran Storage Admin ke bucket Cloud Storage:

    gcloud

    gcloud storage buckets add-iam-policy-binding gs://BUCKET_NAME --member=serviceAccount:service-PROJECT_NUMBER@cloud-redis.iam. --role=roles/storage.admin
    

    Ganti kode berikut:

    • BUCKET_NAME adalah nama bucket tempat file RDB berada.
    • PROJECT_NUMBER adalah nomor project yang digunakan dalam nama agen layanan.
  2. Contoh berikut menunjukkan cara mengimpor data dari file RDB di bucket Cloud Storage ke cluster baru. Untuk mengetahui opsi lainnya yang tersedia saat membuat cluster, lihat Membuat instance.

    gcloud

    gcloud redis clusters create INSTANCE_ID \
    --import-gcs-object-uris=URI \
    --region=REGION
    

    Ganti kode berikut:

    • INSTANCE_ID adalah ID instance Memorystore for Redis Cluster yang Anda buat.
    • URI adalah satu atau beberapa URI Cloud Storage yang dipisahkan dengan koma (,). Misalnya, gs://my-bucket/folder/file1.rdb,gs://my-bucket/folder/file2.rdb.
    • REGION adalah region tempat cluster Anda berada, seperti us-east1.

Metrik Cloud Monitoring

Anda dapat menggunakan metrik Cloud Monitoring untuk memantau operasi pencadangan dan impor terbaru. Untuk mengetahui daftar metrik yang tersedia untuk cadangan Memorystore for Redis Cluster, lihat Metrik cadangan.

Langkah berikutnya