【アプリレイヤー編】プライベート負荷分散パターン:マルチロードバランサー
マルチロードバランサーを利用して、プライベート側で通信を負荷分散するパターンです。
解決したい課題/要求事項
-
社内向けなどセキュアな環境でWebシステムを構築する際に、以下要求を解決したい
-
専用線など閉域網で接続されたオンプレミス環境から通信を負荷分散したい
-
複数のプライベートLANを使用した環境下で負荷分散したい
-
複数台のWebサーバーを配備することで負荷を分散させたい
-
SSLアクセラレーターの機能をWebサーバー側に持たせたくない
-
ニフクラでの解決パターン
-
ニフクラのマルチロードバランサーにルートテーブルを付与したうえで、負荷分散の機能とSSLアクセラレーターの機能を持たせることができる
実装
-
マルチロードバランサーは、プライベートネットワークにおけるサーバーの負荷分散にも対応したロードバランサーで、L4(レイヤー4)に対応している
※主に以下のような用途での利用を想定- <用途例1>
-
オンプレミス環境から閉域網経由などプライベートネットワークへの通信をニフクラの仮想サーバーに振り分けたい場合
- <用途例2>
-
ニフクラ内のプライベートLAN間で負荷分散を行いたい場合
補足
-
グローバルIPアドレスを利用しないサーバーでプライベートLANのNICにIPアドレスを付与する際は以下のような方法で設定可能
-
ルーターの DHCP を利用する
-
コンソール を利用してログインしOS上でIPアドレスを設定する
-
Linux系のサーバーでrootのパスワードを設定していない場合は、シングルユーザーモードでログインし、パスワードを設定可能
FAQ シングルユーザーモードでのログイン
-
-
注意点
-
構成により考慮すべき設定項目が変わる
-
マルチロードバランサーでは、ワンアーム構成かツーアーム構成かを選択できるが、選んだ構成によってIPアドレスの透過非透過が変わる
-
それに伴い、ネットワークの設定上考慮すべき点が異なってくる
-
ツーアーム構成ではネットワーク設計上配慮すべき事項が増える
-
ツーアーム構成ではマルチロードバランサーにアクセスしたIPアドレスが透過するため、負荷分散対象の仮想サーバーにルーティング設定を必要とする
-
ネットワーク経路について考慮不足が無いよう、より注意深く設計設定を行う必要がある
※その他の仕様/制限事項等については、 クラウド技術仕様/制限値(ネットワーク:マルチロードバランサー) を参照
本パターンの構成要素
本パターンを実現するためのニフクラサービス構成要素例は以下表の通りです。
- <用途例1>
サービス名 |
タイプ |
用途 |
数量 |
備考 |
---|---|---|---|---|
10Mbps |
- |
1 |
- |
|
c2-medium |
- |
2 |
- |
|
グローバルIPアドレスを利用しない |
2 |
- |
||
- |
- |
1 |
- |
|
- |
- |
1 |
- |
|
- |
- |
1 |
- |
- <用途例2>
サービス名 |
タイプ |
用途 |
数量 |
備考 |
---|---|---|---|---|
10Mbps |
- |
1 |
- |
|
c2-medium |
- |
3 |
- |
|
グローバルIPアドレスを利用しない |
3 |
- |
||
- |
サーバー、ルーター用 |
3 |
- |
|
- |
- |
2 |
- |
|
router.small |
- |
1 |
- |
経路設定
マルチロードバランサー利用時の構成、振り分け先サーバーの経路設定などの詳細は クラウド技術仕様/制限値(ネットワーク:マルチロードバランサー:構成) を参照する
terraform サンプル
本パターンについてterraformで作成可能なサンプルをGitHubで公開しています。
ご参考にしてください。
> プライベート負荷分散パターン:マルチロードバランサー Terraformサンプル
Appendix:実現不可能構成
本構成例は以下により、実現不可能な構成となるため留意する
-
マルチロードバランサーで振り分け対象とできる仮想サーバーは、ニフクラ内のマルチロードバランサーの所属するネットワークと同一のネットワークに所属する仮想サーバーのみとなる