この章では、Apache HTTP サーバーのアベイラビリティ(可用性)を高めるためのRed Hat Enterprise Linuxの設定方法について説明します。
ここでは、Apache HTTP サーバーをフェイルオーバーするクラスタサービスの設定例について説明します。 実際にサービスで使用される変数は構成ごとに異なりますが、 特定の環境用のサービスを設定するのにこれらの例が役に立つでしょう。
まず、クラスタ内のすべてのメンバーでApache HTTP サーバーを設定します。 サービスをフェールオーバーのドメインに割り当てて、 このサービスの実行を設定しなければならないシステムの数を減らすよう考慮します。 説明は、項2.9を参照してください。 クラスタソフトウェアにより、Apache HTTP サーバーを実行するのは一度に1つのクラスタシステムのみ になります。設定は、すべてクラスタメンバー(または、フェイルオーバーのドメインを 使用していればそのメンバー)へのhttpdRPMパッケージの インストール、及びWebサイトのコンテンツを格納する共有ファイルシステムの設定 から構成されます。
クラスタシステムでApache HTTP サーバーをインストールする際、 次のコマンドを実行してシステム起動時にサービスが自動的に起動するので、 クラスタシステムを設定しないでください。
chkconfig --del httpd |
システム起動スクリプトにhttpdを生成させるのではなく、 アクティブなクラスタサーバーで、クラスタインフラストラクチャが行ないます。 これにより、対応するIPアドレスとファイルシステムのマウントがアクティブになるのは、 一度に1つのクラスタメンバー上でだけになります。
httpdサービスを追加する場合、フローティングIPアドレスは、フェイルオーバーやサービス再配置が発生した際にはIPアドレスが あるクラスタから他のクラスタに移動するようなサービスに割り当てられる必要があります。 クラスタインフラストラクチャは、Apache HTTP サーバーを実行中のクラスタシステムのネットワークインターフェイスにこのIPアドレスをバインドします。 このIPアドレスにより、httpdサービスを実行している クラスタシステムは、Apache HTTP サーバーにアクセスしているHTTPクライアントに透過的になります。
Webコンテンツを含んでいるファイルシステムは、クラスタシステムの起動時に共有ディスクストレージに自動的にマウントされてはいけません。その代わりに、クラスタシステム上のhttpdサービスが起動/停止されたときに、 クラスタソフトウェアがファイルシステムをマウント/アンマウントする必要があります。 これにより、クラスタシステムが同じデータに同時にアクセスしてデータが破損するのを 防止します。このため、ファイルシステムを/etc/fstabファイルに含めないでください。