GNU/Linux >> Linux の 問題 >  >> Ubuntu

s0.d1.smallBMCサーバーでロードバランサーを設定する方法

はじめに

phoenixNAPベアメタルクラウドで事前構成されたシングルCPUインスタンスは、負荷分散のための理想的なソリューションです。ソフトウェアロードバランサーは要求の厳しいハードウェアを必要とせず、最も安価なBMCインスタンスで十分です。

このチュートリアルでは、phoenixNAPのs0.d1.smallBMCサーバーインスタンスでのロードバランサーのセットアップ例について説明します。

前提条件

  • ベアメタルクラウド(BMC)アカウント。
  • sudo権限を持つコマンドライン/ターミナルへのアクセス。
  • 安定したインターネット接続を使用したブラウザへのアクセス。

負荷分散とは何ですか?

負荷分散により、大量のトラフィックが複数のサーバーに分散され、単一のインスタンスが過負荷にならないようになります。負荷分散の最終目標は、全体的な処理効率とユーザーエクスペリエンスの向上です。

ロードバランサーはバックエンドサーバーの状態を監視し、最適なリクエストとサーバーリソースの処理を保証します。たとえば、ロードバランサーは、サーバーがリクエストを受信できない場合にトラフィックを再ルーティングするのに役立ちます。

ロードバランサーとしてのS.0BMCインスタンス

ソフトウェアベースのロードバランサーは、LinuxプロセスとしてBMCサーバーに簡単にセットアップできます。たとえば、HAproxyサーバーユーティリティは、BMCインスタンスにロードバランサーとしてインストールおよび構成するのが簡単です。

セットアップの構造は次のとおりです。

  • 小さなBMCインスタンスはロードバランサーとして機能します。
  • 3つのテストサーバーはサーバーファームとして機能します。

指示に従って、ロードバランサーを使用してサンプルのローカルWebアプリケーションをセットアップします。

ステップ1:SSHキーを生成する

SSH経由でBMCに接続するために使用するマシンでキーペアを生成します。使用するBMCポータルに保存されたキーがある場合は、この手順をスキップしてください。

1.ターミナルを開きます( CTRL + ALT + T

2.新しいSSHキーを生成します:

ssh-keygen

このコマンドはkeygenプロセスを開始します。

3.手順に従ってキーペアを作成します。 id_rsaの下に保存したい既存のキーがある場合 、キー名を変更します。それ以外の場合は、 Enterを押します デフォルトの場所を選択し、既存のキーを上書きします。

セキュリティを強化するためにパスフレーズを追加します。

プロセスが完了すると、出力にキーペアの場所とランダムアート画像が出力されます。

4. id_rsa.pubを開きます Viを使用したファイル:

sudo vi ~/.ssh/id_rsa.pub

5.ファイルの内容をコピーして、エディターを終了します。

:q

次の手順では、 id_rsa.pubを使用します 内容。

ステップ2:s0.d1.small BMCインスタンスをデプロイし、SSH経由で接続する

1.phoenixNAPクライアントポータルのクレデンシャルを使用してBMCポータルにログインします。

2.[新しいサーバーの展開]をクリックします サーバー ページ。

3.場所を選択します 最初のセクションのサーバー用。直後に課金モデルを選択してください。

4. s0.d1.smallを選択します サーバーからのBMCインスタンス セクション。

5.次のセクションでオペレーティングシステムを選択します。 Ubuntu Bionicを使用しています 。 次へを押します [インスタンスの詳細]ページに進みます。

6.サーバーのホスト名とオプションの説明を入力します。

7.前のセクションで新しいキーを生成した場合は、[新しいパブリックSSHキーを追加する]をクリックします。 id_rsa.pubを貼り付けます 新しいキーを追加するためのコンテンツ。ポータルにキーを保存している場合は、保存したキー名を入力してリストから選択します。

8. IP割り当てを購入するか、既存の割り当てを割り当てます。このガイドをテストするには、1つのパブリックIPが必要であるため、 / 31 IP割り当ての最小要件。

9.詳細をもう一度確認し、[新しいサーバーの導入]をクリックします。 ボタンをクリックして、準備ができたらプロセスを完了します。

10.ホスト名を入力してBMCインスタンスを見つけ、名前をクリックしてサーバーの詳細を表示します。ステータスが電源オンと表示されると、サーバーの準備が整います。 。

割り当てられたIP パブリックIPにあります サーバーの詳細のセクション ページ。

次のステップでアドレスを使用します。

10.ターミナルで次のコマンドを実行して、マシンにSSHで接続します。

ssh [email protected]<your public IP>

出力で信頼性の確認を求められた場合は、はいと入力します 場所を既知のホストに追加し、BMCサーバーに接続します。

ステップ3:HAProxyをインストールする

1. HAProxyリポジトリを追加します:

sudo add-apt-repository ppa:vbernat/haproxy-1.8

2. Enterを押します リポジトリを追加するように求められたとき。

3.プロセスが完了したら、パッケージを更新します。

sudo apt-get update

4.最後に、次のコマンドを使用してHAProxyをインストールします。

sudo apt-get install haproxy

ステップ4:テストWebサーバーを作成する

1.サーバーとして機能する3つのディレクトリを作成します。

mkdir server{1..3}

2.サーバーごとにランディングページを作成します。

touch server{1..3}/index.html

3.各index.htmlを編集します ファイル:

sudo vi server1/index.html

4.次のコンテンツを追加します。

<!DOCTYPE html>
<html>
        <title>Server 1</title>
        <body>Connected!</body>
</html>

5.同じコンテンツをserver2/ index.htmlに追加します およびserver3/ index.html 。タイトルタグの内容をServer 2に変更します およびServer 3 敬意を表して。

ステップ5:HAProxyロードバランサーを構成する

1. HAProxyのデフォルト設定を編集します:

sudo vi /etc/haproxy/haproxy.cfg

2.ファイルからすべてを削除し、次の内容を追加します。

defaults
  mode http
  timeout client 10s
  timeout connect 5s
  timeout server 10s
  timeout http-request 10s

frontend myfrontend
  bind 127.0.0.1:80
  default_backend myservers

backend myservers
  balance roundrobin
  server server1 127.0.0.1:8000
  server server2 127.0.0.1:8001
  server server3 127.0.0.1:8002

構成ファイルには3つのセクションがあります。

  • defaults 以降のすべてのセクションで定義されている共有設定です。このセクションでは、一般的な接続の問題を回避するために待機時間を設定します。
  • frontend HAProxyがリクエストを受信するアドレスとポートを定義します。 default_backend 線は、ロードバランサーが接続を中継する場所を指します。
  • backend 次の手順で定義される、複数のサーバーのサーバーアドレスとポートを格納します。負荷分散アルゴリズムはラウンドロビンに設定されています 。

3.ファイルを保存して閉じます:

:wq

4. HAProxyを再起動して、構成を適用します。

sudo systemctl restart haproxy

出力はコンソールに何も出力しません。

ステップ6:サーバーを実行してロードバランサーをテストする

1.さらに3つのターミナルタブを開き、サーバーにログインします。

ssh [email protected]<your public IP>

これで、4つのターミナルタブが開きます。

2.各タブで、サーバーフォルダに移動します。

cd server1
cd server2
cd server3

3.異なるポートの各ターミナルタブでテストサーバーを実行します:

python3 -m http.server 8000 --bind 127.0.0.1
python3 -m http.server 8001 --bind 127.0.0.1
python3 -m http.server 8002 --bind 127.0.0.1

4. 4番目のタブで、 curlを使用して接続をテストします

curl 127.0.0.1:80

コマンドをさらに2回実行して、ロードバランサーが正しく機能することを確認します。

ラウンドロビン負荷分散アルゴリズムにより、要求が各サーバーに1回ルーティングされ、負荷が分散されます。

ロードバランサーとしてS.0を使用する理由

S.0 BMCサーバーをロードバランサーとして構成することは、サーバーのクラスターの速度とリソース容量を最大化するための安価な方法です。

s0.d1.smallBMCサーバーをロードバランサーとして使用する利点は次のとおりです。

  • 低コスト 。インスタンスは最小で最も安価なオファーであり、構成はロードバランサーのワークロードを簡単に処理します。ユースケースに応じて、1時間ごと、1か月ごとに支払うか、延長予約を行います。
  • 効果的なネットワーク過負荷処理 。汎用インスタンスは、トラフィックの多いWebサイトで一般的に使用され、すべてのリソースをバランスの取れた方法で利用します。
  • セキュリティの向上と高可用性 。ネットワークは堅牢で、高速で、低遅延で、信頼性があります。さらに、各サーバーには20 GbpsのDDoS保護が付属しており、攻撃を受けたときに最大の可用性とセキュリティを確保します。

Ubuntu
  1. Ubuntu22.04でWireGuardを設定する方法

  2. HAProxyロードバランサーを設定する方法

  3. Debian11サーバーでSFTPサーバーをセットアップする方法

  1. CentOS 8でDHCPサーバーをセットアップする-その方法は?

  2. Debian11にHAProxyロードバランサをインストールして設定する方法

  3. Ubuntu20.04にHAProxyロードバランサーをインストールして構成する方法

  1. BMCWindowsServerにアクセスする方法

  2. Ubuntu16.04でTeamSpeakサーバーをセットアップする方法

  3. Linux で Wekan Kanban サーバーをセットアップする方法