Amazon ElastiCacheの設定

【連載】

AWSで作るクラウドネイティブアプリケーションの基本

【第22回】Amazon ElastiCacheの設定

[2019/08/07 08:00]川畑 光平 ブックマーク ブックマーク

開発ソフトウェア

前回は、「Spring Session」と「Spring Data Redis」を使ってセッション情報を共有するアプリケーションを実装し、ローカル環境に構築したRedisにアクセスできるところまで確認しました。今回は、Amazon ElastiCache(Redis用)を実際に構築してみましょう。

Amazon ElastiCache(Redis)の設定

AWSでElastiCacheを構築するにあたっては、下記のように事前にElastiCacheノードを配置するためのVPC(Virtual Private Cloud)を構築しておく必要があります。

あらかじめ構築しておくVPC

VPCの作成については、第4回に詳細な手順をまとめています。そちらの解説で登場するNATゲートウェイやインターネットゲートウェイ、プライベートサブネットは今回必ずしも必要ありませんが、パブリックサブネットだけの構築でも入力内容は変わらないので、適宜参考にしていただければと思います。

また、ElastiCacheはセキュリティグループによってアクセス制御されます。セキュリティ上、VPCネットワーク内からのアクセスのみ受け付ける設定が望ましいため、VPC作成後には、以下の手順に沿ってElastiCacheに割り当てるセキュリティグループ、Amazon ElastiCacheクラスターを作成してください。

セキュリティグループの作成

AWSコンソールの「EC2」サービスから、セキュリティグループメニューを選択して「セキュリティグループの作成」ボタンを押下し、以下の項目を入力します。

■セキュリティグループ名:任意のセキュリティグループ名を入力します。

■説明:セキュリティグループで任意の説明文言を入力します。

■VPC:作成したVPCを選択します。

■セキュリティグループのルール

◆タイプ:カスタムTCPを選択します。
◆プロトコル:TCPを入力します。
◆ポート範囲:Redisのデフォルトポートである6379を設定します。
◆ソース:VPCのCIDRを設定します。

「セキュリティグループの作成」画面

Amazon ElastiCacheクラスターの作成

セキュリティグループを作成した後、AWSコンソールの「ElastiCache」サービスから、「テーブルの作成」ボタンを押下し、以下の項目を入力します。

■クラスターエンジン:Redisを選択します。

■クラスターモードが有効:シャーディングを有効化するクラスターモードを設定します。特にサンプルではシャーディングは必要ないのでここではチェックしません。

■Redisの設定

◆名前:20文字内で任意のRedisクラスタ名を入力します。
◆説明:任意の説明文言を入力します。
◆エンジンバージョンの互換性:最新バージョンを選択します。
◆ポート:デフォルト(6379)を選択します。
◆パラメータグループ:Redisで使用するパラメータグループを指定します。詳細はこちらを参照してください。
◆ノードのタイプ:キャッシュのスペックを選択します。
◆レプリケーション数:リードレプリカの数を指定します。

クラスターエンジンの選択とRedisの設定

■Redisの詳細設定

◆自動フェイルオーバーを備えたマルチAZ:マルチAZ構成にする場合チェックします。
◆サブネットグループ:新規作成を選択します。
◆名前:フェイルオーバーのための複数のサブネット構成に対する任意のグループ名を入力します。
◆説明:任意の説明文言を入力します。
◆VPC ID:作成しているVPCのIDを選択します。
◆サブネット:Redisレプリカを配置するVPCサブネットを複数選択します。
◆優先アベイラビリティゾーン:フェイルオーバーで優先するAZを選択します。

Redisの詳細設定

■セキュリティ

◆セキュリティグループ:上記で作成したセキュリティグループを指定します。
◆保管時の暗号化:Redis内のデータを暗号化する必要がある場合チェックします。
◆送信中の暗号化:Redisとの通信時に暗号化を行う場合チェックします。

■クラスタへのデータのインポート:構築時にデータを設定する場合、S3にデータを配置し、オブジェクトキーを指定します。

■バックアップ

◆自動バックアップの有効化:Redis内のデータをバックアップする場合チェックします。
◆バックアップ保存期間:バックアップの保存期間を設定します。
◆バックアップウィンドウ:バックアップ期間を細かく指定する場合にチェックします。

■メンテナンス

◆メンテナンスウィンドウ:メンテナンス期間を指定する場合にチェックします。
◆SNS通知のトピック:重要なクラスターイベントの通知が送信されるよう設定する場合はトピックを設定します。

セキュリティ/バックアップ/メンテナンス

* * *

以上で、ElastiCacheの作成は完了です。次回はアプリケーションロードバランサーを構築した後、アプリケーションをECSコンテナ化してデプロイし、セッション情報をRedisに共有するよう設定します。

著者紹介


川畑 光平(KAWABATA Kohei) - NTTデータ 課長代理

金融機関システム業務アプリケーション開発・システム基盤担当を経て、現在はソフトウェア開発自動化関連の研究開発・推進に従事。

Red Hat Certified Engineer、Pivotal Certified Spring Professional、AWS Certified Solutions Architect Professional等の資格を持ち、アプリケーション基盤・クラウドなどさまざまな開発プロジェクト支援にも携わる。2019 APN AWS Top Engineers & Ambassadors選出。

※ 本記事は掲載時点の情報であり、最新のものとは異なる場合がございます。予めご了承ください。

一覧はこちら

連載目次

もっと知りたい!こちらもオススメ

若手CTOが導く! テックカンパニー化に向けたDMM.comのエンジニア評価制度改革

若手CTOが導く! テックカンパニー化に向けたDMM.comのエンジニア評価制度改革

動画配信、オンラインゲームから太陽光発電まで、40以上のさまざまな事業を手がけるDMM.com。同社は昨年、技術志向のテックカンパニーへと変革していくため、「当たり前を作り続ける」というDMM TECH VISIONを公開した。

関連リンク

この記事に興味を持ったら"いいね!"を Click
Facebook で IT Search+ の人気記事をお届けします

会員登録(無料)

注目の特集/連載
[解説動画] Googleアナリティクス分析&活用講座 - Webサイト改善の正しい考え方
[解説動画] 個人の業務効率化術 - 短時間集中はこうして作る
知りたい! カナコさん 皆で話そうAIのコト
教えてカナコさん! これならわかるAI入門
対話システムをつくろう! Python超入門
Kubernetes入門
AWSで作るクラウドネイティブアプリケーションの基本
PowerShell Core入門
徹底研究! ハイブリッドクラウド
マイナビニュース スペシャルセミナー 講演レポート/当日講演資料 まとめ
セキュリティアワード特設ページ

一覧はこちら

今注目のIT用語の意味を事典でチェック!

一覧はこちら

ページの先頭に戻る