ネイバークラウドプラットフォームの商品の使用方法をより詳細に提供し、様々なAPIの活用を支援するために、 [マニュアル] と [APIリファレンス] を区別して提供しています。
> >
Load Balancer APIリファレンスショートカット>>
Load Balancerマニュアルショートカット>>
を使用する前に、
Classic環境で利用できます。
Q.Public LoadalancerとPrivate Load Balancerの違いは何ですか?
区分</ th> | Public Load Balancer </ th> | Private Load Balancer </ th> </ tr> </ thead> |
---|---|---|
利用方法</ th> | (DNSドメイン名)でLoad Balancer利用</ td> | Virtual IP方式でLoad Balancer利用</ td> </ tr> |
マルチゾーンサポート</ th> | KR-1、KR-2または両方ジョンすべてのロードバランサプロセスの作成が可能</ td> | KR-1、KR-2の中から択一してロードバランサのプロセス生成</ td> </ tr> |
対象サーバーのバインド</ th> | ロードバランサとサーバーの位置とは無関係に保有しているすべてのサーバーをバインド</ td> </ tr> </ tbody> </ table> |
Q。 Load Balancerは、いくつまで作成することができますか?
*生成可能なLoad Balancerの数は特に限定されていません。
Q。一つのLoad Balancerの数台のサーバーをバインドすることができますか?
*一つのLoad Balancerは、最大50台のサーバーをバインドすることができます。
Q。一つのLoad Balancerに複数台のサーバーを適用することができますか?
*一つのLoad Balancerで複数のゾーン(Zone)にあるサーバーを適用することができます。他のLoad Balancerに適用されたサーバーにも適用可能です。
Q。 Load Balancerでサポートされているアルゴリズムは、どのようなものがありますか?
Round Robin </ th> | - ロードバランシングに指定されたサーバーに対して公平に順番に要求を転送する方式 - サーバー接続数や応答時間に関係なく、グループ内のすべてのサーバーを同じように処理して、一般的な構成であり、他のアルゴリズム比べて最も速い</ td> </ tr> |
---|---|
Least Connection </ th> | - クライアントの要求を最も少ない数のコネクションがついているサーバーに割り当ててくれる方式 - サーバの性能が同様に構成されているときに最も効果的なトラフィック分散が可能</ td> </ tr> |
Source IP Hash </ th> | - クライアントのSource IPアドレス情報をもとにhashた結果によってロードバランシング - SSLプロトコルを使用している場合、Source IP Hashアルゴリズムを推奨</ td> </ tr> </ tbody> </ table> |
Q。サービスのドメインにLoad Balancerのドメイン名を設定する方法を教えてください。
1 \。コンソールでLoad Balancerを作成した後の下部から照会される接続情報の確認
2 \。 DNSにCNAME設定:お客様の保有するサービスドメイン名のCNAMEレコードで指定されたLoad Balancerのドメイン名を登録します。
- 例:顧客が、example.comドメインを保有している場合
zone apex(= root domain)のCNAME登録はできません。 (RFC1033)
例えば、以下のような設定はできません。
Load Balancer DNS名で照会されるIPは、固定IPではなく、後に変動することがあります。したがって指定されたDNS名の代わりに、照会されるパブリックIPを直接サービスに登録して使用しないように注意が必要です。
LBで提供されているDNS名は変更されないので、DNS名で登録された場合には、サービスに影響がありません。
Q。 Load Balancerの作成手順は、どうなりますか?
コンソールに接続した後、次の手順を使用して作成することができます。
1 \。コンソール接続:ネイバークラウドプラットフォームで提供されるコンソールに接続します。
2 \。プロモーションの選択:Npacプロモーション(無料)または有料商品(有料)を選択します。 (Npacお客様の場合)
3 \。 Load Balancerの生成:Load Balancerの名前とネットワークタイプ、プロトコル、負荷分散アルゴリズムを選択します。
4 \。サーバーの追加:Load Balancerに適用するサーバーを追加します。
5 \。設定情報の表示:Load Balancerの設定情報を確認して生成します。
Load Balancer(ロードバランサ)を作成する
Step 1.コンソール接続
コンソール に接続します。
① Networkingで「Load Balancer」メニューを選択します。
② 作成したLoad Balancerがないので、次のようなフレーズが表示されます。
保有しているLoad Balancerがありません。 ロードバランサの作成をクリックして、新規Load Balancerを生成します。
生成されたサーバーがなくてもLoad Balancer生成が可能です。
③Load Balancerを作成するには、 Load Balancer生成ボタンをクリックします。
Step 2. Load Balancerを作成
Load Balancerの名前を入力して、設定値と負荷分散アルゴリズムを選択します。
① Load Balancerの名前を入力します。
② ロードバランサのリスナーのIPタイプを選択します。インターネットサービスに利用する場合Public IPを選択してください。
③ ロードバランサを作成するZoneを選択します。 Public IPロードバランサは、両方のジョンの両方に作成して、サービスの可用性をより高めることができます。 ロードバランサが配置されzoneに関係なく、アカウントが保有しているすべてのサーバーを接続することができます。
※ ただし、Security Monitoringサービスの利用者に限って追加費用が発生することがありますので、ご確認お願いいたします。
④ プロトコルを選択して、Load Balancerポート、サーバポートを入力します。
⑤ L7 Health Check(オプション)を入力します。
プロトコルは、HTTP / HTTPSの場合、必ずスラッシュ(/)で始まるものとしHealth Checkしようとするコンテンツのパスを入力します。
例: / somedir / index.html
*例: / index.html
、/ dir / index.html
⑥ Proxy ProtocolはTCP、SSLプロトコル利用時のみチェックボックスが有効になります。
⑦ HTTP / 2は、HTTPSプロトコル利用時のみチェックボックスが有効になります。
⑧ 追加ボタンをクリックすると、設定した内容を確認することができ、修正/削除が可能です。
⑨ ロードバランシングアルゴリズムを選択します。
- Round RobinとLeast Connection、Source IP Hashの中から選択します。
⑩ 次のボタンをクリックします。
Load Balancerの設定時の注意事項
Load Balancerのプロトコル、Load Balancerポート、サーバーポート、L7 Health Check(オプション)を設定する方法は以下の通りです。
1 \。一つのLoad Balancerは、プロトコル20個まで追加可能です。
2 \。一つのLoad Balancerに設定したプロトコルは、適用サーバーの両方に反映されます。
3 \。一つのLoad BalancerでLoad Balancerポートはオーバーラップがないはずです。
- 22、3389、64000、65130、65131、18080〜18095のポートはLoad Balancer管理用に使用されて利用することができません。
4 \。一つのLoad Balancerからサーバーのポートは、オーバーラップが可能になります。
5 \。プロトコルは、HTTP / HTTPSの場合、L7 Health Checkを設定することができます。
- Load Balancer SSL設定の場合
SSL Offloading方法でSSL認証を処理しているので、Load Balancerと接続されたサーバには、重複してSSLの設定を行う必要がありません。 Load Balancerポートとサーバーのポートを同じように「443」に設定しておらず、サーバーのポートは、「80」のポートに設定することをお勧めします。
Load Balancer Proxy Protocolを設定する
Proxy ProtocolとLoad Balancerで、TCP、SSLプロトコル利用時、Proxy環境でConnectionを要求しているクライアントのIPアドレス(Original Client IP address)を確認することができるプロトコルです。
- Load Balancerの設定時に、プロトコル固有のClient IPチェックは、以下の表を参照してください。
HTTP、HTTPS | TCP、SSL |
---|---|
X-Forwarded-For | Proxy Protocol |
- Load Balancer rule設定時proxy protocolを使用を選択すると、Load Balancerで以下のようにrequestを呼び出します。
PROXY_STRING + single space + INET_PROTOCOL + single space + CLIENT_IP + single space + PROXY_IP + single space + CLIENT_PORT + single space + PROXY_PORT + "\ r \ n" 例> PROXY TCP4 125.209.237.10 125.209.192.12 43321 80 \ r \ n </ pre>
Proxy ProtocolをサポートするapacheとNginXバージョンは以下の通りです。
- Apache 2.2
- Apache 2.4
- NginX 1.11.12
- Proxy Protocolを設定する方法は次のとおりです。
1 \。管理コンソールで、Load Balancerの作成または設定の変更時に、 Load Balancerの設定> proxy protocol オプションを選択して、機能を有効にします。
2 \。 Apacheのバージョンに応じて、次のように設定します。
Apache 2.2
$ wget --no-check-certificate https://raw.githubusercontent.com/ggrandes/apache22-modules/master/mod_myfixip.c
$ / {Apacheのインストール先のパス} / bin / apxs -c -i mod_myfixip.c
Apache 2.4
$ wget --no-check-certificate https://raw.githubusercontent.com/ggrandes/apache24-modules/master/mod_myfixip.c
$ / {Apacheのインストール先のパス} / bin / apxs -c -i mod_myfixip.c
apxsのパスを確認することができない場合は、http-develパッケージをインストールした後確認*
/ {Apacheのインストール先のパス} /conf/httpd.confファイルに以下の設定を追加
LoadModule myfixip_module modules / mod_myfixip.so <IfModule mod_myfixip.c> RewriteIPResetHeader off RewriteIPAllow 10.31.0.0/16 #LB IP帯域に設定(e.g. LB IPが125.209.197.92である場合125.209.0.0/16) </ IfModule mod_myfixip.c>
3 \。 nginxのは、以下のように設定します。
nginxのHTTPモジュールが含まれていることを確認
$ nginx -V 2>&1 | grep - 「http_realip_module」
- nginx confファイルに以下の設定を追加
http { proxy_set_header X-Real-IP $ proxy_protocol_addr; proxy_set_header X-Forwarded-For $ proxy_protocol_addr; log_format main '$ proxy_protocol_addr - $ remote_user [$ time_local]」 #既存のログフォーマットに追加 ' "$ request" $ status $ body_bytes_sent」 ' "$ http_referer" "$ http_user_agent"'; server {listen 80 proxy_protocol; set_real_ip_from LB IP帯域1(192.168.0.0/16); set_real_ip_from LB IP帯域2(192.168.0.0/16); real_ip_header proxy_protocol} }
- nginx confファイルに以下の設定を追加
プライベートLoad Balancer
外部に露出されず、内部でのロードバランシングが必要な場合、プライベートLoad Balancerを活用することができます。
プライベートLoad Balancerの使い方はグローバルIPアドレスベースのLoad Balancerと同じでドメインを使用せずに提供されたプライベートIPアドレスを利用してアクセスします。
Global Region環境では、プライベートベースLoad Balancerを使用する場合、専用網を使用することにより、信頼性の高い高速なロードバランシングが可能です。
Step 3. SSL証明書を追加する(プロトコルがHTTPS / SSLの場合)
Certificate Managerで登録したSSL証明書を選択します。
証明書の管理方法は、[Certificate Managerを使用ガイド](../ security / security-15-1.md)で確認することができます。
プロトコルは、HTTP / TCPの場合は、すぐに「サーバの追加」のステップに進みます。
① 次のボタンをクリックします。
Step 4.サポートするSSL ProtocolとCiphers suite確認(プロトコルがHTTPS / SSLの場合)
サポート可能なSSL ProtocolとCiphers適用テンプレート、適用されたSSL Ciphersを確認します。
① SSLとTLSのサポート可能なバージョンを確認します。
- TLSv1、TLSv1.1、TLSv1.2サポート
② 適用SSL Ciphersを確認します。
- 全体Ciphers中、チェックされた項目は、SSL通信時LBからの接続を許可するCiphersです。
③ 次のボタンをクリックします。
Step 5.サーバーの追加
適用するサーバーを選択します。
① 適用するサーバーを選択します。
- 適用するサーバーをダブルクリックすると、右側「適用サーバー」テーブルに移動されます。
② 次のボタンをクリックします。
Step 6.設定情報を表示する
設定した内容を最終確認します。
① 設定情報、ロード・バランシング・アルゴリズム、適用サーバーが正常に設定されていることを確認します。
② 最終確認後は、ロードバランサの作成ボタンをクリックします。
Load Balancerのリストから確認
生成されたLoad Balancerをリストから確認します。
① 作成したLoad Balancerがリストに表示されます。
- 接続情報(DNS)サーバー台数を確認することができます。
② 当該Load Balancerを選択し、一番下にの内容を表示を介してACG Load Balancer(ncloud-load-balancer)を確認することができます。
Load Balancer管理する
Load Balancerの状態を変更するためACG設定
Load Balancerは、状態が運営中でなければなら正常に動作し運営中状態の変更のためにACGの設定が必要です。
ネイバークラウドプラットフォームで提供されるLoad Balancerは、Internal用途(プライベートロードバランサ)の機能を提供します。 (Load Balancerの設定時に指定し「Load Balancerポート」は、Any(0.0.0.0/0)帯域でオープンされます。)
Load BalancerにバインドされているサーバーのACGにLoad Balancerの許可規則が適用されている必要があります。
① ACGメニューからACGを選択して、 ACG設定ボタンをクリックします。
② Load Balancerとバインドサーバーとのネットワーク通信のためには、以下のプロトコルは、アクセスソース、許可ポートを設定が求められます。
アクセスのソース:「ncloud-load-balancer」を入力します。 (Load Balancerメニューの下部に「内容表示」で確認できます。)
プロトコル、許可ポート:Load BalancerのプロトコルとサーバーのポートがACGに適用されている必要があります。
Load Balancerの状態を変更するためのサーバーの設定
Load Balancerは、状態が運営中でなければなら正常に動作し運営中状態の変更のためにサーバーの設定が必要です。
① ーバーでLoad Balancerの設定ポート情報と関連した設定が完了すると、ステータスが「アクティブ」に変更されます。
- 設定例:80ポート
② ロードバランサの状態を確認ボタンをクリックすると、Load Balancerのサーバーの80ポートにHealth Checkした結果の値を示します。
参照
Linuxサーバでは、HTTP(ポート番号80)設定例
サーバー接続後 [root @ jsy-s-0522-1525]#service httpd start (HTTPデーモンの起動) [root @ jsy-s-0522-1525] #vi /var/www/html/index.html (indexファイルの設定、Load Balancer L7 Health Checkのために設定した名前と同じに設定)</ pre>
注意事項:ncloud-load-balancerグループの場合ACG許可規則を追加した後、ルールを削除してもVMのLBの継続的なヘルスチェック要請があれば、許可ルールがなくてもVMとの通信が可能な場合があるので、通信を確実にブロックする接続されたLBの再起動をお勧めします。
Load Balancerの設定を変更
Load Balancerの作成時に設定した内容を変更します。
①設定変更Load Balancerを選択します。
②ロードバランサの設定を変更ボタンをクリックします。
適用サーバーの追加/削除が必要な場合*適用サーバーの変更ボタンをクリックして利用し、その他のオプションは、内容の一覧表示のオプションを変更する機能を利用します。
③Load Balancerの名前はデフォルトで出力され、Load Balancerの設定とロードバランシングアルゴリズムを変更して、確認ボタンをクリックします。
適用サーバーの変更
Load Balancerの作成時に適用したサーバーを変更します。
① 適用サーバーを変更するLoad Balancerを選択します。
② 適用サーバーの変更*ボタンをクリックします。
③ 変更適用サーバーを「サーバー全体」のリストからダブルクリックして右側の「適用サーバー」リストに移動させた後、確認ボタンをクリックします。
監視
Load Balancerの監視を確認してみてください。
① 監視を確認するLoad Balancerを選択します。
② 監視ボタンをクリックします。
③ 当該Load Balancerの監視を確認することができます。
SSL証明書の管理
Certificate Managerメニューに移動し、証明書を管理することができます。
Connection idle timeout、HTTP Keep-alive設定を変更する
Load BalancerのConnection idle timeoutまたはHTTP Keep-alive設定を変更します。
①変更Load Balancerを選択します。
②変更する項目を確認し、 EDIT ボタンをクリックして修正、保存します
HTTP Keep-alive:接続されたconnectionを一定時間の間維持しながら、再接続を要求するとき、既存の接続されたConnectionを再利用するためのオプションです。
Connection Idle Timeout:Load Balancerとの接続されたconnectionを維持する時間に対応する時間が経過するとConnectionが強制的にcloseされて接続が解除されます。 Long transactionをサポートするapplicationが必要な場合は、そのオプションを調節してConnection接続時間を設定します。 (Default:60秒、60〜3,600秒に設定可能です。)
Load Balancer削除
Load Balancerを削除します。
① 削除Load Balancerを選択します。
② ロードバランサの削除ボタンをクリックします。
③ 削除Load Balancerを確認して削除ボタンをクリックします。
関連情報ショートカット
下ガイドで関連情報を確認することができます。
- [サーバーの作成ガイド](../../ compute / compute-1-1-v2.md)
- [ACG使用ガイド](../../ compute / compute-2-3.md)
- [サーバ - ロードバランサAPIスタートガイド](../../ networking / networking-4-2.md)
- [Certificate Managerを使用ガイド](../../ security / security-15-1.md)