
もし仮に再起動が掛かると、AOFファイルからデータ復旧しようとするので、いま格納されているデータが消えてしまいます。
なので、検証方法を以下の手順で試してみます。
- AOF無しのElasitCacheRedisを作成
- 幾つかデータを格納する
- AOF有りのパラメータグループを作成
- AOF有りのパラメータグループを設定
- データが入っているか確認
結論
先に結論から行くと再起動しません。よかったね。 バックアップウィンドを追加しても再起動しませんでした。 EC2上にRedisを構築したときは、AOFを途中から有りにする場合は、手順を間違うとAOFからデータ吸いだしてしまい、 データが消えてしまいます。 この辺りはAWSが良しなにしてくれているみたいです。AOF無しのElasitCacheRedisを作成
m1.smallでRedis 2.8で構築。 パラメータグループはdefault.redis2.8を設定。幾つかデータを格納する
まずEC2にRedisをインストールする。 こちらの記事を参考にしてサクっと入れました。あざす! AWS EC2にredisをインストールするデータを格納
$ redis-cli -h ***********.apne1.cache.amazonaws.com
***********.apne1.cache.amazonaws.com:6379> set mykey myvalue
OK
***********.apne1.cache.amazonaws.com:6379> get mykey
"myvalue"
***********.apne1.cache.amazonaws.com:6379> set myhoge myhoge
OK
***********.apne1.cache.amazonaws.com:6379> get myhoge
"myhoge"
※当たり前ですがこの状態でリブートかけると、↑で入れたデータはきれいさっぱり消えました。
AOF有りのパラメータグループを作成
Create Cache Parameter Groupから新しいグループを作成。 appendonlyの項目をyesに変更。これでおkです。AOF有りのパラメータグループを設定
さきほど作成したパラメータグループをmodifyして、設定。 この時にstatusがmodifyになり、チェックボックスがグルグルになります。データが入っているか確認
$ redis-cli -h ***********.apne1.cache.amazonaws.com
***********.apne1.cache.amazonaws.com:6379> get mykey
"myvalue"
***********.apne1.cache.amazonaws.com:6379> get myhoge
"myhoge"
おk!ちゃんとデータが入ってますね。
この状態で再起動しても、ちゃんとデータは残っていますので、安心。
ちなみにCache EventにはUpdated to use a CacheParameterGroup 【パラメータグループ名】となっていました。