Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Backup dan pulihkan ElastiCache untuk Redis
Amazon ElastiCache klaster Anda dapat menggunakan backup untuk memulihkan klaster atau menyemai klaster baru. Backup terdiri dari metadata klaster, beserta semua data di dalam klaster. Semua backup ditulis ke Amazon Simple Storage Service (Amazon S3), yang menyediakan penyimpanan tahan lama. Setiap saat Anda dapat memulihkan data Anda dengan membuat klaster Redis yang baru dan mengisinya dengan data dari backup. Dengan ElastiCache, Anda dapat mengelola backup menggunakanAWS Management Console, yangAWS Command Line Interface(AWS CLI), dan ElastiCache API
Dimulai dari Redis versi 2.8.22, metode backup dipilih berdasarkan memori yang tersedia. Jika memori yang tersedia cukup, dihasilkanlah proses anak yang menulis semua perubahan ke memori dicadangkan dari cache, sementara cache sedang di-backup. Tergantung pada jumlah tulis ke cache selama proses backup, proses anak ini dapat mengonsumsi semua memori dicadangkan, menyebabkan backup menjadi gagal.
Jika memori yang tersedia tidak cukup, proses latar belakang yang kooperatif dan tak bercabang akan diterapkan. Metode tak bercabang dapat mempengaruhi latensi dan throughput. Untuk informasi selengkapnya, lihat Cara penerapan sinkronisasi dan backup.
Untuk informasi lain tentang dampak proses backup terhadap kinerja, lihat Dampak backup terhadap kinerja.
Berikutnya, Anda dapat menemukan gambaran umum tentang bekerja dengan backup dan pemulihan.
penting
Meskipun jarang terjadi, kadang-kadang proses backup gagal untuk membuat backup, termasuk backup akhir. Memori dicadangkan yang tidak cukup sering menyebabkan kegagalan backup. Oleh karena itu, pastikan bahwa Anda memiliki memori dicadangkan yang memadai sebelum mencoba melakukan backup. Jika memori Anda tidak cukup, Anda dapat mengosongkan beberapa kunci atau meningkatkan nilai reserved-memory-percent
.
Untuk informasi lain, lihat hal berikut:
Jika Anda ingin menghapus klaster dan penting untuk menyimpan datanya, Anda dapat mengambil tindakan pencegahan tambahan. Untuk melakukan ini, buat backup manual terlebih dahulu, pastikan bahwa statusnya tersedia, dan kemudian hapus klaster tersebut. Melakukan ini memastikan bahwa jika backup gagal, Anda masih memiliki data cluster tersedia. Anda dapat mencoba lagi membuat backup, mengikuti praktik terbaik yang diuraikan sebelumnya.
Topik
- Kendala Backup
- Biaya backup
- Dampak backup terhadap kinerja
- Backup saat menjalankan Redis 2.8.22 dan yang lebih baru
- Backup saat menjalankan versi Redis sebelum 2.8.22
- Meningkatkan kinerja backup
- Menjadwalkan backup otomatis
- Membuat backup manual
- Membuat backup akhir
- Menggambarkan backup
- Menyalin backup
- Mengekspor backup
- Memulihkan dari backup dengan opsi perubahan ukuran klaster
- Penyemaian klaster baru dengan backup yang dibuat secara eksternal
Kendala Backup
Pertimbangkan kendala berikut saat merencanakan atau membuat backup:
-
Saat ini backup dan pemulihan hanya didukung untuk klaster yang berjalan pada Redis.
-
Untuk klaster Redis (mode klaster dinonaktifkan), backup dan pemulihan tidak didukung
cache.t1.micro
simpul Semua jenis simpul cache lain didukung. -
Untuk klaster Redis (mode klaster diaktifkan), backup dan pemulihan didukung untuk semua jenis simpul.
-
Dalam jangka waktu 24 jam, Anda dapat membuat tidak lebih dari 20 backup manual per simpul di klaster.
-
Redis (mode klaster diaktifkan) hanya mendukung pelaksanaan backup pada tingkat klaster (untuk API atau CLI, tingkat grup replikasi). Redis (mode klaster diaktifkan) tidak mendukung pelaksanaan backup di tingkat serpihan (untuk API atau CLI, tingkat grup simpul).
-
Selama proses backup, Anda tidak dapat menjalankan operasi API atau CLI apa pun lainnya di klaster.
-
Jika menggunakan klaster dengan tingkat data, Anda tidak dapat mengekspor cadangan ke Amazon S3.
-
Anda dapat mengembalikan cadangan cluster menggunakan tipe node r6gd hanya untuk cluster menggunakan tipe node r6gd.
Biaya backup
Menggunakan ElastiCache, Anda dapat menyimpan satu backup untuk setiap klaster Redis secara gratis. Ruang penyimpanan untuk backup tambahan dikenakan tarif $0,085/GB per bulan untuk semua Wilayah AWS. Tidak ada biaya transfer data untuk membuat backup, atau untuk memulihkan data dari backup ke klaster Redis.
Dampak backup terhadap kinerja
Proses backup tergantung pada versi Redis yang Anda jalankan. Mulai dari Redis 2.8.22, prosesnya adalah tak bercabang.
Backup saat menjalankan Redis 2.8.22 dan yang lebih baru
Dalam versi 2.8.22 dan yang lebih baru, backup Redis mempunyai pilihan dua metode. Jika memori tidak cukup untuk mendukung backup bercabang ElastiCache menggunakan metode tanpa forkless yang menggunakan pengolahan latar belakang kooperatif. Jika terdapat cukup memori untuk mendukung proses simpan bercabang, proses yang sama digunakan seperti pada versi Redis sebelumnya.
Jika beban tulis tinggi selama backup tak bercabang, proses tulis ke cache akan tertunda. Penundaan ini memastikan Anda tidak mengakumulasi terlalu banyak perubahan sehingga menghalangi keberhasilan backup.
Backup saat menjalankan versi Redis sebelum 2.8.22
Backup dibuat menggunakan operasi BGSAVE asli dari Redis. Proses Redis pada simpul cache memunculkan proses anak untuk menulis semua data dari cache ke file .rdb Redis. Diperlukan waktu hingga 10 detik untuk memunculkan proses anak. Selama waktu itu, proses induk tidak dapat menerima permintaan aplikasi yang masuk. Setelah proses anak berjalan secara lepas, proses induk melanjutkan kembali operasi normal. Proses anak akan berhenti saat operasi backup selesai.
Selama backup ditulis, memori simpul cache tambahan digunakan untuk proses tulis baru. Jika penggunaan memori tambahan ini melebihi memori tersedia dari simpul, pemrosesan dapat menjadi lambat karena paging berlebihan, atau menjadi gagal.
Meningkatkan kinerja backup
Berikut ini adalah panduan untuk meningkatkan kinerja backup.
-
Mengatur
reserved-memory-percent
parameter - Untuk mengurangi paging berlebihan, kami sarankan agar Anda menyetelreserved-memory-percentparameter Parameter ini mencegah Redis mengonsumsi semua memori yang tersedia dari simpul, dan dapat membantu mengurangi jumlah paging. Anda mungkin juga melihat peningkatan kinerja hanya dengan menggunakan simpul yang lebih besar. Untuk informasi lebih lanjut tentangreserved-memorydanreserved-memory-percentparameter, lihatMengelola Memori Cadangan. -
Membuat backup dari replika baca — Jika Anda menjalankan Redis di grup simpul dengan lebih dari satu simpul, Anda dapat melakukan backup dari simpul primer atau salah satu replika baca. Karena sumber daya sistem yang diperlukan selama BGSAVE, sebaiknya Anda membuat backup dari salah satu replika baca. Pada saat backup sedang dibuat dari replika, simpul utama tetap tidak terpengaruh oleh kebutuhan sumber daya BGSAVE. Simpul utama dapat terus melayani permintaan tanpa menjadi lambat.
Untuk melakukan ini, lihat Membuat backup manual (konsol) dan pada bidang Nama Klaster di jendela Membuat Backup, pilih replika, alih-alih simpul primer default.
Jika Anda menghapus grup replikasi dan meminta backup akhir, ElastiCache selalu mengambil backup dari simpul primer. Hal ini memastikan bahwa Anda menangkap data Redis yang paling baru, sebelum grup replikasi dihapus.