Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Mengelola Memori Cadangan
Memori cadangan adalah memori yang disisihkan untuk penggunaan nondata. Saat melakukan pencadangan atau failover, Redis menggunakan memori yang tersedia untuk merekam operasi tulis ke klaster Anda sementara data klaster sedang ditulis ke file .rdb. Jika tidak tersedia memori yang cukup untuk semua operasi tulis, proses tersebut akan gagal. Berikut ini, Anda dapat menemukan informasi tentang opsi untuk mengelola memori cadangan ElastiCache untuk Redis dan cara menerapkan opsi tersebut.
Topik
Berapa Banyak Memori Cadangan yang Anda Butuhkan?
Karena berbagai cara yang ElastiCache mengimplementasikan proses pencadangan dan replikasi, aturan praktisnya adalah mencadangkan 25% dari maxmemory
nilai tipe node dengan menggunakan parameter. reserved-memory-percent
Ini adalah nilai default dan direkomendasikan untuk sebagian besar kasus.
Ketika tipe instans mikro dan kecil burstable beroperasi mendekati maxmemory
batas, mereka mungkin mengalami penggunaan swap. Untuk meningkatkan keandalan operasional pada jenis instans ini selama pencadangan, replikasi, dan lalu lintas tinggi, sebaiknya tingkatkan nilai reserved-memory-percent
parameter hingga 30% pada tipe instans kecil, dan hingga 50% pada jenis instans mikro.
Untuk beban kerja berat tulis pada ElastiCache cluster dengan tiering data, kami sarankan untuk meningkatkan reserved-memory-percent
hingga 50% dari memori node yang tersedia.
Untuk informasi lain, lihat hal berikut:
Parameter untuk Mengelola Memori Cadangan
Mulai 16 Maret 2017, Amazon ElastiCache untuk Redis menyediakan dua parameter yang saling eksklusif untuk mengelola memori Redis Anda, dan. reserved-memory
reserved-memory-percent
Tak satu pun dari parameter ini merupakan bagian dari distribusi Redis.
Bergantung pada kapan Anda menjadi ElastiCache pelanggan, satu atau yang lain dari parameter ini adalah parameter manajemen memori default. Parameter ini berlaku saat Anda membuat klaster atau grup replikasi Redis yang baru dan menggunakan grup parameter default.
-
Untuk pelanggan yang mulai berlangganan sebelum 16 Maret 2017 – Saat Anda membuat klaster atau grup replikasi Redis menggunakan grup parameter default, parameter manajemen memori Anda adalah
reserved-memory
. Dalam hal ini, memori cadangan adalah nol (0) byte. -
Untuk pelanggan yang mulai berlangganan pada atau setelah 16 Maret 2017 – Saat Anda membuat klaster atau grup replikasi Redis menggunakan grup parameter default, parameter manajemen memori Anda adalah
reserved-memory-percent
. Dalam hal ini, 25 persen dari nilaimaxmemory
dari simpul Anda dicadangkan untuk tujuan nondata.
Setelah membaca tentang dua parameter manajemen memori Redis, Anda mungkin lebih memilih untuk menggunakan salah satu yang bukan parameter default Anda atau dengan nilai non-default. Jika demikian, Anda dapat mengubah ke parameter manajemen memori cadangan yang lain.
Untuk mengubah nilai parameter tersebut, Anda dapat membuat grup parameter kustom dan mengubahnya untuk menggunakan parameter dan nilai manajemen memori pilihan Anda. Anda kemudian dapat menggunakan grup parameter kustom setiap kali Anda membuat klaster atau grup replikasi Redis yang baru. Untuk klaster atau grup replikasi yang sudah ada, Anda dapat mengubahnya untuk menggunakan grup parameter kustom.
Untuk informasi selengkapnya, lihat berikut ini:
Parameter reserved-memory
Sebelum 16 Maret 2017, semua ElastiCache untuk manajemen memori cadangan Redis dilakukan dengan menggunakan parameterreserved-memory
. Nilai default reserved-memory
adalah 0. Default ini tidak mencadangkan memori untuk overhead Redis dan memungkinkan Redis untuk mengonsumsi semua memori simpul dengan data.
Mengubah reserved-memory
agar Anda memiliki cukup memori tersedia untuk pencadangan dan failover mengharuskan Anda membuat grup parameter kustom. Pada grup parameter kustom ini, Anda menetapkan reserved-memory
ke nilai yang sesuai untuk versi Redis yang berjalan pada klaster dan jenis simpul dari klaster Anda. Untuk informasi lain, lihat Berapa Banyak Memori Cadangan yang Anda Butuhkan?
Parameter ElastiCache reserved-memory
for Redis khusus ElastiCache untuk Redis dan bukan bagian dari distribusi Redis.
Prosedur berikut menunjukkan cara menggunakan reserved-memory
untuk mengelola memori di klaster Redis Anda.
Untuk mencadangkan memori menggunakan reserved-memory
-
Buat grup parameter kustom yang menentukan keluarga grup parameter yang cocok dengan versi mesin yang Anda jalankan—misalnya, menentukan keluarga grup parameter
redis2.8
. Untuk informasi selengkapnya, lihat Membuat grup parameter.aws elasticache create-cache-parameter-group \ --cache-parameter-group-name
redis6x-m3xl
\ --description "Redis 2.8.x for m3.xlarge node type
" \ --cache-parameter-group-familyredis6.x
-
Hitung jumlah byte memori yang dapat dicadangkan untuk overhead Redis. Anda dapat menemukan nilai
maxmemory
untuk jenis simpul Anda di Parameter khusus jenis simpul Redis. -
Ubah grup parameter kustom agar parameter
reserved-memory
adalah jumlah byte yang Anda hitung pada langkah sebelumnya. AWS CLI Contoh berikut mengasumsikan Anda menjalankan versi Redis sebelum 2.8.22 dan perlu memesan setengah dari node.maxmemory
Untuk informasi selengkapnya, lihat Mengubah grup parameter.aws elasticache modify-cache-parameter-group \ --cache-parameter-group-name
redis28-m3xl
\ --parameter-name-values "ParameterName=reserved-memory, ParameterValue=7130316800
"Anda memerlukan grup parameter kustom terpisah untuk setiap jenis simpul yang Anda gunakan, karena setiap jenis simpul memiliki nilai
maxmemory
yang berbeda. Dengan demikian, setiap jenis simpul membutuhkan nilai yang berbeda untukreserved-memory
. -
Ubah klaster atau grup replikasi Redis untuk menggunakan grup parameter kustom Anda.
Contoh CLI berikut mengubah klaster
my-redis-cluster
untuk menggunakan grup parameter kustomredis28-m3xl
yang dimulai segera. Untuk informasi selengkapnya, lihat Memodifikasi sebuah cluster ElastiCache .aws elasticache modify-cache-cluster \ --cache-cluster-id
my-redis-cluster
\ --cache-parameter-group-nameredis28-m3xl
\ --apply-immediatelyContoh CLI berikut mengubah grup replikasi
my-redis-repl-grp
untuk menggunakan grup parameter kustomredis28-m3xl
yang dimulai segera. Untuk informasi selengkapnya, lihat Mengubah grup replikasi.aws elasticache modify-replication-group \ --replication-group-id
my-redis-repl-grp
\ --cache-parameter-group-nameredis28-m3xl
\ --apply-immediately
reserved-memory-percent Parameternya
Pada 16 Maret 2017, Amazon ElastiCache memperkenalkan parameter reserved-memory-percent
dan membuatnya tersedia di semua versi ElastiCache untuk Redis. Tujuan dari reserved-memory-percent
adalah untuk menyederhanakan manajemen memori cadangan di semua klaster Anda. Hal ini dilakukan dengan memungkinkan Anda memiliki satu grup parameter tunggal untuk setiap keluarga grup parameter (seperti redis2.8
) untuk mengelola memori cadangan dari klaster Anda, terlepas dari jenis simpulnya. Nilai default untuk reserved-memory-percent
adalah 25 (25 persen).
Parameter ElastiCache reserved-memory-percent
for Redis khusus ElastiCache untuk Redis dan bukan bagian dari distribusi Redis.
Jika klaster Anda menggunakan jenis simpul dari keluarga r6gd dan penggunaan memori Anda mencapai 75 persen, tingkatan data akan dipicu secara otomatis. Untuk informasi selengkapnya, lihat Tingkatan data.
Untuk menyimpan memori menggunakan reserved-memory-percent
Untuk menggunakan reserved-memory-percent
untuk mengelola memori pada cluster ElastiCache for Redis Anda, lakukan salah satu hal berikut:
-
Jika Anda menjalankan Redis 2.8.22 atau versi yang lebih baru, tetapkan grup parameter default untuk klaster Anda. Default 25 persen seharusnya sudah memadai. Jika tidak, lakukan langkah yang dijelaskan berikut untuk mengubah nilai.
-
Jika Anda menjalankan Redis di bawah versi 2.8.22, Anda mungkin perlu menyimpan lebih banyak memori dari default 25 persen
reserved-memory-percent
. Untuk melakukannya, gunakan prosedur berikut.
Untuk mengubah nilai persen reserved-memory-percent
-
Buat grup parameter kustom yang menentukan keluarga grup parameter yang cocok dengan versi mesin yang Anda jalankan—misalnya, menentukan keluarga grup parameter
redis2.8
. Grup parameter kustom diperlukan karena Anda tidak dapat mengubah grup parameter default. Untuk informasi selengkapnya, lihat Membuat grup parameter.aws elasticache create-cache-parameter-group \ --cache-parameter-group-name
redis28-50
\ --description "Redis 2.8.x 50% reserved
" \ --cache-parameter-group-familyredis2.8
Karena
reserved-memory-percent
mencadangkan memori sebagai persentasemaxmemory
simpul, Anda tidak memerlukan grup parameter kustom untuk setiap jenis simpul. -
Ubah grup parameter kustom agar
reserved-memory-percent
menjadi 50 (50 persen). Untuk informasi selengkapnya, lihat Mengubah grup parameter.aws elasticache modify-cache-parameter-group \ --cache-parameter-group-name
redis28-50
\ --parameter-name-values "ParameterName=reserved-memory-percent, ParameterValue=50
" -
Gunakan grup parameter kustom ini untuk setiap klaster atau grup replikasi Redis yang menjalankan versi Redis di bawah 2.8.22.
Contoh CLI berikut mengubah klaster Redis
my-redis-cluster
untuk menggunakan grup parameter kustomredis28-50
yang dimulai dengan segera. Untuk informasi selengkapnya, lihat Memodifikasi sebuah cluster ElastiCache .aws elasticache modify-cache-cluster \ --cache-cluster-id
my-redis-cluster
\ --cache-parameter-group-nameredis28-50
\ --apply-immediatelyContoh CLI berikut mengubah grup replikasi Redis
my-redis-repl-grp
untuk menggunakan grup parameter kustomredis28-50
yang dimulai dengan segera. Untuk informasi selengkapnya, lihat Mengubah grup replikasi.aws elasticache modify-replication-group \ --replication-group-id
my-redis-repl-grp
\ --cache-parameter-group-nameredis28-50
\ --apply-immediately
Menentukan Parameter Manajemen Memori Cadangan
Jika Anda adalah ElastiCache pelanggan saat ini pada 16 Maret 2017, parameter manajemen memori cadangan default Anda adalah reserved-memory
dengan nol (0) byte memori cadangan. Jika Anda menjadi ElastiCache pelanggan setelah 16 Maret 2017, parameter manajemen memori cadangan default Anda adalah reserved-memory-percent
dengan 25 persen dari memori node yang dicadangkan. Ini benar tidak masalah ketika Anda ElastiCache membuat cluster Redis atau grup replikasi Anda. Namun, Anda dapat mengubah parameter manajemen memori cadangan menggunakan ElastiCache API AWS CLI atau API.
Parameter reserved-memory
dan reserved-memory-percent
keduanya bersifat saling eksklusif. Grup parameter selalu memiliki salah satu dari keduanya tetapi tidak pernah keduanya. Anda dapat mengubah parameter yang digunakan grup parameter untuk manajemen memori cadangan dengan mengubah grup parameter. Grup parameter harus berupa grup parameter kustom, karena Anda tidak dapat mengubah grup parameter default. Untuk informasi selengkapnya, lihat Membuat grup parameter.
Untuk menentukan reserved-memory-percent
Untuk menggunakan reserved-memory-percent
sebagai parameter manajemen memori cadangan, ubah grup parameter kustom menggunakan perintah modify-cache-parameter-group
. Gunakan parameter parameter-name-values
untuk menentukan reserved-memory-percent
dan memberikan nilai untuknya.
Contoh CLI berikut mengubah grup parameter kustom redis32-cluster-on
sehingga menggunakan reserved-memory-percent
untuk mengelola memori cadangan. Nilai harus diberikan ke ParameterValue
agar grup parameter dapat menggunakan parameter ParameterName
untuk manajemen memori cadangan. Untuk informasi selengkapnya, lihat Mengubah grup parameter.
aws elasticache modify-cache-parameter-group \ --cache-parameter-group-name
redis32-cluster-on
\ --parameter-name-values "ParameterName=reserved-memory-percent, ParameterValue=25
"
Untuk menentukan reserved-memory
Untuk menggunakan reserved-memory
sebagai parameter manajemen memori cadangan, ubah grup parameter kustom menggunakan perintah modify-cache-parameter-group
. Gunakan parameter parameter-name-values
untuk menentukan reserved-memory
dan memberikan nilai untuknya.
Contoh CLI berikut mengubah grup parameter kustom redis32-m3xl
sehingga menggunakan reserved-memory
untuk mengelola memori cadangan. Nilai harus diberikan ke ParameterValue
agar grup parameter dapat menggunakan parameter ParameterName
untuk manajemen memori cadangan. Karena versi mesin lebih baru dari 2.8.22, kami menetapkan nilainya menjadi 3565158400
, yaitu 25 persen maxmemory
dari cache.m3.xlarge
. Untuk informasi selengkapnya, lihat Mengubah grup parameter.
aws elasticache modify-cache-parameter-group \ --cache-parameter-group-name
redis32-m3xl
\ --parameter-name-values "ParameterName=reserved-memory, ParameterValue=3565158400
"