HAProxy ロードバランシング

HAProxy ロードバランシングについて学習します。このモジュールでは、HAProxy のインストール、HTTP ロードバランシング、ダッシュボードと統計情報、TCP レイヤーのバランシング、ACL およびスマートルーティングを扱います。実践的なラボと実世界の課題を通じて、これらの必須の Linux スキルを習得します。

DevOps EngineerAnsibleDevOpsLinux

💡 このチュートリアルは英語版からAIによって翻訳されています。原文を確認するには、 ここをクリックしてください

はじめに

HAProxy は接続を分散し、異常なバックエンドをローテーションから外し、アプリケーション層の条件でリクエストを振り分けられます。この実践コースでは、応答から各判断を確認できる小さなローカルサービスを使い、それらの動作を構築・検証します。

HTTP のラウンドロビン、統計ページ、TCP プロキシ、パス ACL によるバックエンド選択を設定します。最後のチャレンジでは、3 ノードの模擬 Web クラスターにアクティブチェックを追加し、一つのバックエンドを停止・再開してフェイルオーバーと自動復帰を確認します。

学習内容

  • HAProxy をインストールし、設定を特定・バックアップしてサービスを確認する
  • HTTP frontend と backend を定義し、ラウンドロビン分散を検証する
  • アクティブヘルスチェックを追加し、ノードの除外と復帰を観察する
  • ポート 8404 で内蔵統計ページを有効化してアクセスする
  • TCP モードの負荷分散を設定し、単純なリスナーでテストする
  • パス接頭辞 ACL を定義し、一致するリクエストを別 backend へ送る
  • 設定を検証し、HAProxy を再起動または再読み込みして curl と nc で試す

このコースの対象者

この中級コースは、HAProxy 設定、トラフィック分散、基本的なフェイルオーバーを実践したい Linux 管理者、DevOps 担当者、バックエンド学習者を対象としています。

前提知識: Linux シェル、sudo、サービス、設定ファイル、IP アドレス、TCP ポート、基本的な HTTP リクエストの概念に慣れていること。

学習環境: HAProxy、ローカル Python HTTP サーバー、Netcat リスナー、管理者権限を備えた単一の Linux ラボマシンです。全バックエンド「ノード」は localhost 上の異なるポートです。

よくある質問

実際の複数サーバークラスターを扱いますか?

いいえ。同一マシンの異なるポートで軽量サービスを動かしますが、HAProxy の分散、ヘルスチェック、フェイルオーバー、復帰、ACL ルーティングは実際に検証します。

TCP ラボで本物の MySQL クラスターを設定しますか?

いいえ。ポート 3307 と 3308 の Netcat リスナーで TCP ラウンドロビンを可視化します。MySQL の導入、レプリケーション、DB セッションは扱いません。

本番セキュリティや高度な HAProxy 運用も扱いますか?

いいえ。TLS 終端、統計認証、シークレット、stick table、セッション維持、流量制限、ログ基盤、HAProxy 自体の高可用性は範囲外です。統計リスナーは隔離ラボで意図的に単純かつ認証なしです。

講師

labby
Labby
Labby is the LabEx teacher.