LAMP環境におけるHAクラスタはどうなりますか?

kirill-sh-eVWWr6nmDf8-unsplash.jpg

質問

LAMP環境におけるHAクラスタはどうなりますか?
インライン構成とワンアーム構成で説明してください。


解答

LAMP(Linux, Apache, MySQL/MariaDB, PHP)環境でのHAクラスタ構成は、
基本的に 「Webサービス+DBを止めずに動かし続ける」 ために、複数ノード+フェイルオーバー機構を使う形になります。

ここではご質問の インライン構成ワンアーム構成 の違いを、LAMPのHAクラスタに当てはめて説明します。


1. インライン構成(Inline Mode)

構成イメージ

[ユーザー]    ↓[HAクラスタ機器(ロードバランサー/フェイルオーバー)]   ↓[Webサーバ群 (Apache/PHP)]   ↓[DBクラスタ (MySQL/MariaDB)]
  • HAクラスタ(例:Pacemaker + Corosync, Keepalived)が通信経路上に物理的にインラインで配置されます。

  • クライアントからの通信は必ずHAノードを通過してWebサーバへ。

  • フェイルオーバー時は、通信経路ごと切り替わる

特徴

  • ユーザーから見たIPや経路が完全に透過(切替時も同じIPでアクセス可能)

  • 構成管理がわかりやすい(全通信を制御できる)

  • ネットワーク的に機器がボトルネック化するリスクあり

LAMPでの適用例

  • HAProxyやLVSをインラインに設置し、Apache/PHPサーバを負荷分散

  • MySQLはGalera ClusterやDRBD+PacemakerでHA化

  • ロードバランサー自体もPacemakerで2ノード冗長化し、仮想IP(VIP)で切替


2. ワンアーム構成(One-arm Mode)

構成イメージ

[ユーザー]   ↓[スイッチ]───[HAクラスタ機器]               │               └───[Webサーバ群]                    ↓                    [DBクラスタ]
  • HAクラスタ機器(ロードバランサー)が既存ネットワークの一部にぶら下がる形で接続

  • 通信は直接サーバへ行き、HAクラスタ機器は振り分け制御だけ行う

  • 機器はトラフィックをフルプロキシするのではなく、パケットを制御・転送するだけ(DSRやSNAT利用)

特徴

  • ネットワーク構成の変更が少ない(既存ネットワークに後付けしやすい)

  • 機器の負荷は低め(全トラフィックを経由しない場合もある)

  • フェイルオーバーは機器側のみで行うが、クライアント側設定(ARPやルーティング調整)が必要な場合あり

LAMPでの適用例

  • HAProxyをワンアーム構成で配置し、Apache群に負荷分散

  • MySQLは別途HAクラスタ構成(例:MySQL InnoDB ClusterやDRBD+Pacemaker)

  • ロードバランサーが直接トラフィックをプロキシせず、パケットの経路だけ制御


3. まとめ(比較表)

項目インライン構成ワンアーム構成
配置経路上に直接配置ネットワークにぶら下がる
フェイルオーバー影響範囲経路ごと切替ロードバランサー部分のみ
導入難易度ネットワーク変更が必要既存構成に追加しやすい
パフォーマンス負荷全トラフィック通過で負荷大制御部分のみ通過で負荷軽め
LAMP適用時VIPで完全透過な切替転送制御中心、経路は維持





世界の地下都市 大解剖 立体イラストで巡る、見えない巨大インフラ [ マーク・オーブンデン ]

価格:3520円
(2025/8/23 10:57時点)
感想(0件)


平成金融史 バブル崩壊からアベノミクスまで (中公新書 2541) [ 西野 智彦 ]

価格:1012円
(2025/6/10 10:28時点)
感想(3件)


 



この記事へのコメント

広告です。クリックいただけると励みになります。