Amazon VPCでロードバランサーを使う
Amazon VPCでELBの設定ができるようになった
つい最近、VPC内でELB(ロードバランサー)の設定ができるようになりました。今回はこれを試してみたいと思います。
VPCとインターネットゲートウェイの設定
VPCはデフォルト設定で作成しました。
インターネットゲートウェイもデフォルト設定で作成しました。
サブネットの設定
ELBを使う上で最も重要なのがサブネットの設定です。東京リージョンには2つのアベイラビリティゾーンがありますので分散配置をします。今回は、10.0.0.1/24をAZのap-northeast-1bに配置、10.0.1.0/24をAZのap-northeast-1aに配置します。
ルートテーブルの設定
ルートテーブルについての設定はウィザード形式で特に出てきませんでしたので少々ハマりました。VPCとインターネットゲートウェイの間でのルーティングについて記述する必要があります。また、関連しているサブネットについても追加する必要があります。
以下は、VPCとインターネットゲートウェイを通じた外部とのルーティングについて設定しています。
さらに、Associationsタブで関連するサブネットを指定しています。
VPC用のインスタンスをAZ毎に起動する
ロードバランサーから振り分けられるリスエストに応答するためにインスタンスをAZ毎に立ち上げます。今回はAmazon Linux 32bitのm1.smallタイプを指定しました。初期設定では、Webサーバーが起動していませんので、起動完了後にSSHログインしてWebサーバーを動かす必要があります。VPC内のインスタンスにSSH接続するためにEIP(固定IPアドレス)付与によるIP接続が最も簡単です。セットアップが完了したらEIPはリリースしておきましょう。
ELB(ロードバランサー)を作成する
ELBを新規作成します。その際にVPCの選択をしてください。今回は80番ポートを振り分けているだけです。ここでは、EC2用のELBと同じようにSSL Terminationやセッション維持型ロードバランサーの設定ができます。
死活監視のポートを設定したら次はサブネットの指定です。事前に作成済みのサブネットがありますので2つとも指定します。AZが分かれていることを確認してください。
ELBにセキュリティグループを設定する
EC2上のELBにもセキュリティグループは存在しますが以下のように設定変更はできません。
一方で、VPCのELBはセキュリティグループを後から変更でき、さらに複数指定することもできます。
ELBの状態を確認してブラウザから動作確認
ELBにインスタンスを追加してしばらく待つと、以下のように稼働状態になります。
ブラウザから動作確認をする
ブラウザから動作確認をします。ELBのDNS名で繋がるのですが、今回はついでにRoute 53を用いてZone Apexでの動作確認をしました。
まとめ
VPC内でロードバランサーの設定ができる事が分かりました。ここまで画面から細かく設定できるとなると、何をどのように設定すべきか分からなくなってしまいますねw。そんなときにはAWS Solution Providerの弊社におまかせあれ〜(笑)。今日から君もVPC戦士だ!