Oracle Cloud Infrastructure 上にロードバランサーを実装してみた
こんにちは。Oracle Cloud Infrastructure(OCI)特集 編集部です。
今回は先日開設された東京リージョンにロードバランサーを実装したいと思います。
ロードバランサーの実装につきましては前回の記事「Oracle Cloud Infrastructure Classic上にロードバランサーを実装してみた」でもご紹介しました。
今回構築する環境も前回同様のものとなりますので、そちらの説明は割愛させていただきます。
※今回もOCI-C上のすべてのサーバーがインターネットに接続されており、セキュアな構成ではありません。
OSなどの環境情報は、以下の通りです。
■Webサーバー#1
OS :Windows Server 2016 SE
Webサーバーソフト :IIS
■Webサーバー#2
OS :Windows Server 2016 SE
Webサーバーソフト :IIS
1.Webサーバーの作成
Windowsサーバーの作成方法については、「Oracle Cloud InfrastructureでWindowsサーバーを建ててみた」でご紹介させていただきましたので、そちらをご参照ください。
※今回作成するWebサーバーはそれぞれ別のサブネットに作成します。
また、IISのインストール方法に関しては「Oracle Cloud Infrastructure Classic上にロードバランサーを実装してみた」にて紹介しております。
2.ロードバランサーの作成
前提
ロードバランサーを作成するために、Webサーバーのサブネットとは別にロードバランサー用のサブネットを作成しておきます。
※セキュリティリストに関しては、後程ルールを追加します。この段階ではWebサーバーのセキュリティリストと分けて作成してもらえればOKです。
左上のメニューから「ネットワーキング」→「ロード・バランサ」を選択します。

「ロード・バランサ」の作成を選択します。

ロードバランサーを作成するための情報を入力していきます。
- ロード・バランサ情報
名前 :任意の名前(名前を付けない場合は、自動的に名前が付けられます)
シェイプ :今回は100Mbpsを選択
表示タイプ :今回はパブリック・ロード・バランサを選択 - ネットワーク情報
仮想クラウド・ネットワーク :対象のクラウド・ネットワークを選択
サブネット :ロード・バランサを作成するサブネットを選択 - リスナー情報
プロトコル :HTTPを選択
ポート :80 - バックエンド・セット情報
トラフィック分散ポリシー :今回は重み付けラウンド・ロビンを選択
バックエンド・サーバーのIPアドレス :今回はコンピュート・インスタンスのプライベートIPアドレスの選択→対象のWebサーバを選択
「作成」を選択します。


ここで完了と言いたいところですが、ヘルスチェックが失敗しているため、ロードバランサーがうまく動いておりません。
セキュリティリストを設定していないことが原因と考える方もいらっしゃると思いますが、セキュリティリストを設定しても、ヘルスチェックで躓いたままでした…。
色々調査をしたところ、ロードバランサー側がWebサーバーをうまく見つけられていないためだと考えられます。

それではバックエンド・セット情報を編集していきます。
最初からバックエンド・セットの編集画面に行くことができれば良いのですが、2019年6月時点では一旦ロードバランサーを作成してからでないと編集画面にいけないため、ひとまずはこの手順で作成していきます。
「バックエンド・セット」→対象のバックエンド・セット→「バックエンドの編集」を選択します。


現在登録されているバッグエンドの定義は一旦削除します。
- 新しくバックエンドを定義します。
Webサーバー2台分を登録します。
インスタンスOCID :WebサーバのOCIDを入力
(OCIDはインスタンス詳細画面から確認できます)
ポート :80
加重 :何も入力しない
左端に青いチェックが入っていることを確認します。入っていない場合はチェックを入れてください。
チェックを入れることでロードバランサーとWebサーバ間の通信に必要なセキュリティルールが自動で追加されます。
「送信」を選択します。

セキュリティ・リスト・ルールの追加をします。
- ロード・バランサ・サブネット
ロードバランサー用のセキュリティリストを選択 - バックエンド・サブネット
Webサーバー用のセキュリティリストを選択
左上のアイコンが「受入れ済み」(オレンジ)から「成功」(緑色)に変わったら、「ルールの作成」を選択します。


対象のセキュリティリストにルールが追加されたことを確認します。


5~10分ほどすると、ヘルスチェックが「OK」と表示されるようになります。


ロードバランサーのIPアドレスをブラウザで検索し、きちんと割り振りが出来ていることを確認します。
(Webサーバー1号機は#1、2号機は#2を画面に表示しています。)


以上、今回はOCIでロードバランサーを作成してみました。
セキュリティリストの自動ルール追加が個人的に便利だなと思いました!
興味のある方は是非お試しください。