LVS セットアップノート: 負荷分散アルゴリズム

LVS セットアップノート: 負荷分散アルゴリズム

先ほど、負荷分散を完了するための最初のステップである Linux LVS インストール プロセスを紹介しました。具体的な負荷分散設定を紹介する前に、まず負荷分散アルゴリズムとは何かを理解しましょう。これは主に LVS がサポートするアルゴリズムに依存します。3 つのリクエスト転送方法については既に説明したので、ここでは詳細には触れません。アルゴリズムの具体的な内容を見てみましょう。

負荷分散のための8つのスケジューリングアルゴリズム

次のステップは、実際のニーズに応じて負荷分散方法とスケジューリング アルゴリズムを選択することです。現在、LVS には 3 つの主要な要求転送方法と 8 つのスケジューリング アルゴリズムがあります。要求転送方法に応じて、構築されたクラスターのネットワーク トポロジ、インストール方法、パフォーマンスも異なります。LVS は、LVS/NAT、LVS/TUN、LVS/DR の 3 種類のクラスターを構築するために使用できます。ニーズに応じて 1 つを選択できます。転送方法を選択すると、使用されるスケジューリング アルゴリズムによって、負荷分散全体のパフォーマンスが決まります。さまざまなアルゴリズムがさまざまなアプリケーション シナリオに適しています。特別な場合のためにスケジューリング アルゴリズムを設計する必要がある場合もあります。LVS のアルゴリズムは徐々に充実しています。当初、LVS は 4 つのスケジューリング アルゴリズムのみを提供していましたが、後に次の 8 つに開発されました。

負荷分散アルゴリズム 1. ラウンドロビン

スケジューラは、「ラウンドロビン」スケジューリング アルゴリズムを使用して、外部要求をクラスタ内の実サーバーに順番に分散します。実際の接続数やサーバー上のシステム負荷に関係なく、各サーバーを平等に扱います。

負荷分散アルゴリズム 2. 加重ラウンドロビン

スケジューラは、「加重ラウンドロビン」スケジューリング アルゴリズムを使用して、実サーバーのさまざまな処理能力に基づいてアクセス要求をスケジュールします。これにより、強力な処理能力を持つサーバーがより多くのアクセス トラフィックを処理できるようになります。スケジューラは、実サーバーの負荷状態を自動的に照会し、重みを動的に調整できます。

負荷分散アルゴリズム 3. 最小接続

スケジューラは、「最小接続」スケジューリング アルゴリズムを使用して、確立されたリンクの数が最も少ないサーバーにネットワーク要求を動的にスケジュールします。クラスタ システムの実際のサーバーのシステム パフォーマンスが類似している場合、「最小接続」スケジューリング アルゴリズムによって負荷のバランスをより適切に取ることができます。

負荷分散アルゴリズム 4. 重み付け最小接続

クラスタ システム内のサーバーのパフォーマンスが大きく異なる場合、スケジューラは「重み付け最小リンク」スケジューリング アルゴリズムを使用して、負荷分散パフォーマンスを最適化します。重みが高いサーバーは、アクティブな接続負荷の大部分を負担します。スケジューラは、実際のサーバーの負荷を自動的に照会し、重みを動的に調整できます。

負荷分散アルゴリズム 5. 局所性に基づく最小接続

「ローカリティベースの最小リンク」スケジューリング アルゴリズムは、ターゲット IP アドレスの負荷分散アルゴリズムであり、現在は主にキャッシュ クラスタ システムで使用されています。このアルゴリズムは、要求されたターゲット IP アドレスに基づいて、ターゲット IP アドレスによって最後に使用されたサーバーを検索します。サーバーが使用可能で過負荷でない場合は、要求がそのサーバーに送信されます。サーバーが存在しない場合、またはサーバーが過負荷で、ワークロードが半分のサーバーがある場合は、「最小リンク」原則を使用して使用可能なサーバーが選択され、要求がサーバーに送信されます。

負荷分散アルゴリズム 6. レプリケーションによる局所性ベースの最小接続

「ローカリティベースの最小リンクとレプリケーション」スケジューリング アルゴリズムもターゲット IP アドレスの負荷分散アルゴリズムであり、現在は主にキャッシュ クラスタ システムで使用されています。LBLC アルゴリズムとの違いは、LBLC アルゴリズムがターゲット IP アドレスからサーバ グループへのマッピングを維持するのに対し、LBLC アルゴリズムはターゲット IP アドレスからサーバへのマッピングを維持することです。このアルゴリズムは、要求のターゲット IP アドレスに基づいてターゲット IP アドレスに対応するサーバ グループを見つけ、「最小接続」の原則に従ってサーバ グループからサーバを選択し、サーバが過負荷でない場合は要求をサーバに送信します。サーバが過負荷の場合は、「最小接続」の原則に従ってクラスタからサーバを選択し、サーバ グループに追加して要求をサーバに送信します。同時に、サーバ グループが一定期間変更されていない場合は、最もビジーなサーバをサーバ グループから削除して、レプリケーションの度合いを減らします。

負荷分散アルゴリズム 7. 宛先ハッシュ

「ターゲット アドレス ハッシュ」スケジューリング アルゴリズムは、要求のターゲット IP アドレスをハッシュ キーとして使用し、静的に割り当てられたハッシュ テーブルから対応するサーバーを検索します。サーバーが使用可能で過負荷でない場合は、要求がサーバーに送信され、そうでない場合は何も返されません。

負荷分散アルゴリズム 8. ソースハッシュ

「ソース アドレス ハッシュ」スケジューリング アルゴリズムは、要求のソース IP アドレスをハッシュ キーとして使用し、静的に割り当てられたハッシュ テーブルから対応するサーバーを検索します。サーバーが使用可能で過負荷でない場合は、要求がサーバーに送信され、そうでない場合は何も返されません。

これらのアルゴリズムの原理を理解することで、特定のアプリケーションに最適なスケジューリング アルゴリズムを選択し、リアル サーバーを最大限に活用できるようになります。もちろん、独自のアルゴリズムを開発することもできますが、これはこの記事の範囲外です。アルゴリズムの原理に関する関連情報を参照してください。

<<:  データベース列ストレージ: 最適な圧縮アルゴリズムを設計するための近道

>>:  ロードバランサーのアルゴリズムと原理を探る

ブログ    
ブログ    

推薦する

2020 年のトップ 10 テクノロジー トレンド

変化だけが唯一不変です。これは私たちの職業生活にも当てはまります。最近はテクノロジーが非常に急速に発...

NVIDIA DLSS 3.5 がリリースされました!新しいAI「光再構成」は超リアルな光と影を実現し、新旧両方のグラフィックカードでサポートされています。

人工知能は世界を変えており、グラフィックス コンピューティングも例外ではありません。 5 年前、NV...

2020年のディープラーニング開発のレビュー

近年の傾向に倣い、ディープラーニングは 2020 年も最も急速に成長している分野の 1 つであり続け...

IDC: 生成型 AI への支出は今後 5 年間で年間 73% 増加し、2027 年には 1,430 億ドルに達する

IDCによると、世界の企業は2023年に160億ドル(ITホーム注:現在は約1169.6億人民元)を...

Googleの2018年度PhDフェローシップが発表され、選ばれた8人の中国人学生は全員国内の大学を卒業した。

[[225280]] 2018年度Google PhDフェローシップ(北米、ヨーロッパ、中東)の候...

「機械学習」CNNを徹底理解

[[212238]]前世紀、科学者は視覚神経のいくつかの特性を発見しました。視神経には局所的な知覚が...

マスク氏:ニューラリンクが初めて人体にチップを埋め込み、製品化へ

マスク氏の脳コンピューターインターフェース企業ニューラリンクがついに人間に対する臨床研究を開始した。...

遅い二次アルゴリズムと高速ハッシュマップについての簡単な説明

[[424110]]こんにちは、みんな!昨日、プログラミング面接の準備をしていて、アルゴリズムの基礎...

エッジでの機械学習を活用して生産ラインの品質を向上させる方法

機械学習アルゴリズムは、予知保全、製品品質管理の改善、機械異常検出、生産ライン監視、サプライチェーン...

ニューラルネットワークに基づくマルウェア検出分析

今日、あらゆる業界にとって、「マルウェアを効果的に検出する方法」は、ネットワーク セキュリティに関す...

Linux SNMP アルゴリズムと機能モジュール

Linux SNMP を十分に学習したい場合は、いくつかのモジュールに精通している必要があります。そ...

ネイチャー誌の表紙:AIの翼に乗って、データが計算社会科学を「担う」

シュメール王国の時代から、この賢明な王国の人々はデータを記録し、国勢調査を実施し、食糧を配給し始めま...

Panda-Gym のロボットアームシミュレーションを使用したディープ Q 学習強化学習

強化学習 (RL) は、エージェントが試行錯誤を通じて環境内でどのように動作するかを学習できるように...

298.2億ドル規模のロボット市場がなぜこれほど不振なのか?

以前、マッキンゼー・グローバル・インスティテュートは、2030年までに約70%の企業が少なくとも1つ...