ご利用ガイド ロードバランサーを使う
目次
・VPS 3.0の場合
・VPS 2.0の場合
ConoHaのロードバランサーは、VPSに対してトラフィックを振り分ける機能を提供します。負荷分散を行ったり、冗長構成のシステムを作ることができます。パケット転送方法はDSR方式です。VPSからクライアントへ直接パケットを転送する必要があるため、VPS(OS)側にも設定が必要です。
VPS 3.0の場合
ロードバランサーの作成手順
事前に こちら をご参考にバージョンを3.0に切り替えてください。
[1] 画面上部から「VPS」を選択します。
[2] 画面左メニューから「ネットワーク」、「ロードバランサー」の順で選択します。
[3] 「+ロードバランサー」を選択します。
[4] ポップアップが表示されるので、任意のネームタグを設定し、「はい」をクリックします。
[5] 作成されたロードバランサーをクリックすると、バーチャルIPアドレスやUUIDが確認できます。
ロードバランサーの設定手順
次に作成したロードバランサー側の設定を行います。
[1] 対象のロードバランサーを選択し、バランシング設定の項目からバランシングを設定するポート番号を選択します。
[2] 設定画面が表示されるので、右上の工具アイコンをクリックします。
[3] バランシング方法を「ラウンドロビン」「リーストコネクション」から任意のものを選択します。
- ラウンドロビン: 各サーバーに均等に振り分ける
- リーストコネクション: 最も接続数の少ないサーバーに振り分ける
[4] ご運用に合わせてヘルスモニタの設定も可能です。
ヘルスモニタとは、ロードバランサーから振り分け先のサーバーに対し、どのようにヘルスチェック(死活監視)するかを定義するものです。HTTP、HTTPS、TCP、PINGの4つのプロトコルから選択することができます。
レイヤー7のプロトコルの場合、バランシング先の負荷になるため、バランシング先の数が少ないケースやサーバースペックが潤沢でない場合は、「TCP」や「PING」を推奨します。
[5] バランシングするサーバーを設定します。バランシング先IPの項目にある「+」アイコンをクリックします。
[6] プルダウンメニューに作成済みのVPSが表示されるので、対象のVPSを選択し、「保存」をクリックします。
[7] 設定完了後、バランシング先のポート毎に設定内容が表示されます。
VPS側の設定について
ロードバランサーのパケット転送方法はDSR方式です。VPSからクライアントへ直接パケットを転送する必要があり、ネットワークの設定を変更する必要があります。ここではループバックインターフェイスの設定例をご説明します。
「Ubuntu 22.04」の設定例
サーバーにSSHやコンソールから接続し、コマンドライン操作が必要となります。
事前にSSHでの通信を許可するセキュリティグループの設定が必要となります。
セキュリティグループの設定方法は こちら
[1] サーバーにSSHでログイン後、設定ファイルが格納されているディレクトリに移動します。
# cd /etc/netplan/
[2] ループバックインターフェイス設定ファイル向けに既存ファイルのコピーします。
※本手順ではコピー先のファイル名を「51-lo.yaml」とした場合の手順を記載致します。
# cp -p /etc/netplan/50-cloud-init.yaml /etc/netplan/51-lo.yaml
[3] 手順[2]で作成した設定ファイルにループバックインターフェイス用の記述を追記します。
# vi /etc/netplan/51-lo.yaml
設定ファイルに追記する内容は以下となります。
「***.***.***.***」の箇所は、ロードバランサーのバーチャルIPアドレスに置き換えてください。
network:
version: 2
ethernets:
lo:
addresses:
- ***.***.***.***/32
[4] 手順[3]で作成した設定ファイルの設定を有効化します。
# netplan apply
「CentOS Stream 9」の設定例
サーバーにSSHやコンソールから接続し、コマンドライン操作が必要となります。
事前にSSHでの通信を許可するセキュリティグループの設定が必要となります。
セキュリティグループの設定方法は こちら
[1] サーバーにSSHでログイン後、ダミーインターフェイスの設定を行います。物理サーバーがバーチャルサーバー宛のARPに応答しないようにするために、Non-ARPingの設定を行います。
本手順ではダミーインターフェース名を「lb-dummy」とした場合の手順を記載致します。
また、「***.***.***.***」の箇所は、ロードバランサーのバーチャルIPアドレスに置き換えてください。
# nmcli connection add type dummy ifname lb-dummy ipv4.method manual ipv4.addresses ***.***.***.***/32 ipv6.method ignore
[2] sysctl.confにループバックインターフェイスに関する設定を追記します。
# vi /etc/sysctl.conf
設定ファイルに追記する内容は以下となります。
net.ipv4.conf.all.arp_ignore = 1
net.ipv4.conf.all.arp_announce = 2
[3] 手順[2]で記述した設定を有効化します。
# sysctl -p
[4] 手順[3]の有効化後、以下のコマンドを実行し設定が反映されているか確認します。
# ip addr show
VPS 2.0の場合
ロードバランサーの作成手順
事前に こちら をご参考にバージョンを2.0に切り替えてください。
[1] 画面上部から「VPS」を選択します。
[2] 画面左メニューから「ネットワーク」、「ロードバランサー」の順で選択します。
[3] 「+ロードバランサー」を選択します。
[4] 申し込み画面が表示されるので「追加」をクリックします。
[5] ポップアップが表示されるので、内容確認し「はい」をクリックします。
ヘルスモニターの作成手順
ヘルスモニタとは、ロードバランサーから振り分け先のサーバーに対し、どのようにヘルスチェック(死活監視)するかを定義するものです。HTTP、TCP、PINGの3つのプロトコルから選択することができます。
レイヤー7のプロトコルの場合、バランシング先の負荷になるため、バランシング先の数が少ないケースやサーバースペックが潤沢でない場合は、「TCP」や「PING」を推奨します。
[1] ヘルスモニターの項目右側にある工具アイコンをクリックします。
[2] 設定画面が表示されるので、「+」アイコンをクリックします。
[3] 各種項目を設定し、「保存」をクリックします。
ロードバランサーの設定手順
次に作成したロードバランサー側の設定を行います。
[1] 対象のロードバランサーを選択し、バランシング設定の項目からバランシングを設定するポート番号を選択します。
[2] 設定画面が表示されるので、右上の工具アイコンをクリックします。
[3] バランシング方法を「ラウンドロビン」「リーストコネクション」から任意のものを選択します。
ヘルスモニターは こちら で作成した任意のものを設定します。
- ラウンドロビン: 各サーバーに均等に振り分ける
- リーストコネクション: 最も接続数の少ないサーバーに振り分ける
[4] バランシングするサーバーを設定します。バランシング先IPの項目にある「+」アイコンをクリックします。
[5] プルダウンメニューに作成済みのVPSが表示されるので、対象のVPSを選択し、「保存」をクリックします。
[6] 設定完了後、バランシング先のポート毎に設定内容が表示されます。
VPS側の設定について
ロードバランサーのパケット転送方法はDSR方式です。VPSからクライアントへ直接パケットを転送する必要があり、ネットワークの設定を変更する必要があります。ここではループバックインターフェイスの設定例をご説明します。
「Ubuntu 22.04」の設定例
[1] サーバーにSSHでログイン後、設定ファイルが格納されているディレクトリに移動します。
# cd /etc/netplan/
[2] ループバックインターフェイス設定ファイル向けに既存ファイルのコピーします。
※本手順ではコピー先のファイル名を「11-lo.yaml」とした場合の手順を記載致します。
# cp -p /etc/netplan/10-gmovps.yaml /etc/netplan/11-lo.yaml
[3] 手順[2]で作成した設定ファイルにループバックインターフェイス用の記述を追記します。
# vi /etc/netplan/11-lo.yaml
設定ファイルに追記する内容は以下となります。
「***.***.***.***」の箇所は、ロードバランサーのバーチャルIPアドレスに置き換えてください。
network:
version: 2
ethernets:
lo:
addresses:
- ***.***.***.***/32
[4] 手順[3]で作成した設定ファイルの設定を有効化します。
# netplan apply
「CentOS Stream 9」の設定例
[1] サーバーにSSHでログイン後、ダミーインターフェイスの設定を行います。物理サーバーがバーチャルサーバー宛のARPに応答しないようにするために、Non-ARPingの設定を行います。
本手順ではダミーインターフェース名を「lb-dummy」とした場合の手順を記載致します。
また、「***.***.***.***」の箇所は、ロードバランサーのバーチャルIPアドレスに置き換えてください。
# nmcli connection add type dummy ifname lb-dummy ipv4.method manual ipv4.addresses ***.***.***.***/32 ipv6.method ignore
[2] sysctl.confにループバックインターフェイスに関する設定を追記します。
# vi /etc/sysctl.conf
設定ファイルに追記する内容は以下となります。
net.ipv4.conf.all.arp_ignore = 1
net.ipv4.conf.all.arp_announce = 2
[3] 手順[2]で記述した設定を有効化します。
# sysctl -p
[4] 手順[3]の有効化後、以下のコマンドを実行し設定が反映されているか確認します。
# ip addr show
- 問題は解決できましたか?
-