要求事項
サービスの可用性や性能を考慮した構成をK5上で実現したいといった要求事項に対応するパターンです。
一般に、サーバは突如停止する可能性が 0 ではありません。
クラウドでも、設備等の物理的なトラブルや、
トラフィック増による性能劣化など、
何らかの理由でサービス継続ができない場合があります。
K5では、このようなサービス提供の機会損失を防ぎ、可用性や性能を向上させる負荷分散機能として、
ロードバランサーサービスを提供しています。
対応するK5デザインパターン概要
K5では、可用性向上と性能向上のための負荷分散機能として、ロードバランサーサービスを提供しています。
ロードバランサーサービスによる負荷分散の構成としては、以下の2構成が利用可能です。
これらの構成はともに、1つのAZ内の分散でも、複数のAZ間の分散でも可能です。
外部負荷分散構成 | 負荷分散を外部ネットワークに配置し、インターネットからのアクセスを、 外部ネットワークに接続された内部ネットワークの仮想サーバへの通信を負荷分散します |
---|
内部負荷分散構成 | 負荷分散を内部ネットワークに配置し、内部ネットワークの仮想サーバから、 内部ネットワークの仮想サーバへ通信を負荷分散します この構成では、IPSecVPNや構内接続等のセキュアな接続を併用すると、 社内イントラネット環境から負荷分散構成を利用したシステムが利用可能です |
---|
以下では、内部負荷分散構成について記載します。
構造 (イメージ図)
■同一サブネット
- ロードバランサーのアクセス元と同一のサブネットにロードバランサーを配置する構成例です。
- ロードバランサーを外部ネットワークに接続しているサブネットに配置する場合は、
ロードバランサーは 外部負荷分散 (public) も 内部負荷分散 (internal) もどちらも設定可能です。
ロードバランサーをインターネット向けに公開しない場合は、内部負荷分散 (internal) を設定してください。
■異なるサブネット
- 外部ネットワークに接続していないサブネットにロードバランサーを配備する場合は、
内部負荷分散 (internal) のみ設定可能です。
実装サンプル
内部負荷分散を構成する手順は、外部負荷分散構成 と同じ手順で、以下の設定値をかえるだけとなります。
(1) セキュリティグループ "SG_LB" の受信ルール
-
セキュリティグループ/ファイアーウォール併用パターン で設定しているロードバランサー用の "SG_LB" は、
すべての IPアドレスからアクセスを受け付ける設定になっています。
内部負荷分散構成用に変更にする場合は、"SG_LB" の受信のルールに、
ロードバランサーで受け付ける IPアドレス (CIDR形式) またはセキュリティグループを設定してください。
(2) ロードバランサー の配備の項目 "タイプ" の値を "internal" に設定
-
ロードバランサー の配備の項目 "タイプ" の値を "internal" に設定してください。
"internal" で設定すると、内部からアクセスできる FQDN が生成されます。
メリット・効果
ロードバランサーサービスを利用した場合のメリット・効果は以下の通りです。
- 複数台の仮想サーバによる可用性向上/性能向上
- IPSecVPNやその他の構内接続等のセキュアな接続を併用すると、
社内イントラネット環境から負荷分散構成を利用したシステムが利用可能
注意事項
- 本パターンは2017年6月時点のK5(IaaS)で動作検証しています。
- 負荷分散機能で証明書を利用する場合は、APIで証明書を登録してください。
- ロードバランサーは、ロードバランサーが作成された時に生成される 1つの FQDN でのみアクセス可能です。
生成時にロードバランサーに割り当てられたIPアドレスは、メンテナンスにより変更される可能性があります。
- ロードバランサーの名前解決は、インターネットで提供されている K5 の DNS で行います。
インターネットに接続していない環境では、ロードバランサーの名前解決は出来ません。
- ロードバランサーの設定変更後に次の変更を行う場合は、
サービスの状態が InService になってから次の変更を行ってください。
- ロードバランサーは、1つのサブネットに対してグレードごとに以下の個数のIPアドレスが必要です。
必要な個数のIPアドレスを確保できる構成にしてください。
なお、以下の個数は、それぞれのグレードで必要な最大数です。
ロードバランサーのメンテナンスの際に必要な個数も含まれています。
※グレードごとに必要なIPアドレス数
- Standard:
4個
- Middle:
8個
- High:
12個
- K5のロードバランサーサービスでは、L4層の負荷分散とL7層の負荷分散(http/httpsのみ)が可能です。
ただし、L7層の負荷分散では、Cookieを使ったセッション維持のみ可能です。
アクセス先のURLに含まれるドメイン名やパス等に応じて負荷分散条件を設定する負荷分散はできません。
その他
特にありません。
関連資料
(2017年6月検証)