背景
RDSとElasticacheのコストを削減をしてます。
RDSインスタンスのマルチAZを無効にすることでコストを半減した。考えずにElasticacheのインスタンスで同じことをやってみたら、全然効果がなかったです。ちゃんと両者のマルチAZの違いを理解してなかったのでまとめた。
前提
ここのElasticacheはRedisを指してます。
違い
RDS
- マルチAZ
- 有効すると、スタンバイインスタンスを自動的に立ち上げられる
- コストはマルチAZ無効の2倍
- レプリカ
- 別で手動で作成する必要
- インスタンスタイプはプライマリと異なっても大丈夫
Elasticache
- マルチAZ
- レプリカの存在はマルチAZ有効の前提条件なので、レプリカがないと、マルチAZを有効することができない
- マルチAZ自体は無料
- 故障のとき
- 有効
- 一番遅延が短いレプリカへの自動フェイルオーバーを行われる
- 無効
- 新しいリソースを自動的にリクエストする
- 有効
- レプリカ
- Redisクラスターを作成するときか、その後追加することができる
- インスタンスタイプはプライマリと一緒
コスト削減例
例 | 効果 | 説明 |
---|---|---|
RDSインスタンスのマルチAZを無効にする | O | 自動的にスタンバイを削減されるため、コスト半額 |
RDSのレプリカを消す | O | インスタンス数が減ったから |
ElasticacheクラスターのマルチAZを無効にする | X | マルチAZは無料;無効にすると、プライマリが故障するときに、レプリカへの自動フェイルオーバーが行われないだけ、レプリカのコストはかかるまま |
Elasticacheクラスターのレプリカを減らす | O | インスタンス数が減ったから |