環境構築機能でApacheの冗長構成にサーバを増設してみよう

作成日 2015/11/27
更新日 2015/12/25

概要

本ドキュメントは、Hinemos ver.5.0 から追加された環境構築機能の概要を理解されている方向けに、具体的なユースケースをご紹介します。

なお、環境構築機能について知りたい方には、Hinemos ver.5.0入門編④の技術情報をご覧ください。

Hinemos ver.5.0 入門編④ Hinemos ver.5.0でシステム構築をやってみよう

環境構築機能でApache の冗長構成にサーバを増設してみよう

今回は、Apacheの負荷分散環境で、バックエンドサーバとなる Apache を増設するための構築手順を環境構築機能で行います。また、環境構築実行後は、バックエンドサーバとしてすぐにエントリできるように、Apache のインストールだけでなく、Web コンテンツの準備も環境構築設定に含めます。

なお、Apache で行う負荷分散については、mod_proxy および mod_proxy_balancer の利用を想定しています。詳細は、以下の技術文書をご確認ください。

mod_proxy

mod_proxy_balancer

前提条件

対象とする負荷分散構成は、mod_proxy と mod_proxy_balancer を導入した Apache をフロントエンドとし、バックエンドも Apache とする。
負荷分散環境にバックエンドサーバの追加を行う。フロントエンドサーバの構築およびフロントエンドサーバへのバックエンドサーバの登録は、対象外とする。
Apache への追加設定は、設定ファイルの転送で行う。
Apache は、2.4 を使用する。

要件

Web コンテンツは、git 経由でインストールする。
コンテンツの配置完了後は、Apache の起動を行う。
対象 OS は、Linux とする。

↓クリックすると画像が拡大されます↓

設定方法

上記要件を満たす環境構築設定には、以下の各処理に対応した環境構築モジュールで構成されます。

1. Apache のインストール

2. Web コンテンツの配置

2-1. git のインストール

2-2. Web コンテンツの配置用ディレクトリ作成

2-3. git から Web コンテンツのクローン

3. Apache の設定変更

3-1. 設定ファイルを Hinemos マネージャへアップロード

3-2. 設定ファイル転送用ファイル配布モジュールの作成

4. Apache の起動

ここからは、環境構築機能の設定内容について、順を追って説明いたします。

まずは、バックエンドサーバの管理に利用するスコープを作成します。

バックエンドサーバ用スコープの準備

バックエンドサーバ用スコープを作成します。

作成したスコープには、バックエンドサーバとなるノードを配置して下さい。

↓クリックすると画像が拡大されます↓

次に、環境構築設定を作成します。

環境構築設定の作成

環境構築設定の作成は、環境構築パースペクティブの環境構築[構築・チェック]ビューで、作成ボタンを押下してください。

↓クリックすると画像が拡大されます↓

以降は、環境構築モジュールの作成になります。

1. Apache のインストール

Apache のインストールは、コマンド実行モジュールを使用します。

↓クリックすると画像が拡大されます↓

2. Web コンテンツの配置

Web サーバに配置する Web コンテンツは、git から取得します。そのため、git のインストール後に、Web コンテンツの配置ディレクトリ作成、git からWeb コンテンツ取得という内容の環境構築モジュールを作成します。なお、Web コンテンツは、実際の環境のコンテンツをご利用ください。

2-1. git のインストール

git のインストールには、コマンド実行モジュールを使用します。

各設定については、Apache のインストールと同様です。

↓クリックすると画像が拡大されます↓

2-2. Web コンテンツの配置用ディレクトリ作成

コマンド実行モジュールで、ディレクトリを作成します。なお、Web コンテンツの配置先は、Apache が既定で管理する /var/www/html の配下ではなく /var/www_contents/content01 とします。このディレクトリを Apache に認識させるため、後続のファイル配布モジュールで設定を追加します。

↓クリックすると画像が拡大されます↓

2-3. git から Web コンテンツのクローン

リモートの git から、git コマンドで Web コンテンツを取得します。

今回はgit プロトコルを使用することとします。

なお、例として記載した実行コマンドの内の”x.x.x.x” をリモートの git サーバのアドレスに変換してください。

git clone git://x.x.x.x/content01/ /var/www_contents/content01

↓クリックすると画像が拡大されます↓

3. Apache の設定変更

git から取得した Web コンテンツを Apache に認識させます。Apache の設定変更は、既存設定ファイルを編集しなくても、部分的な設定を記載した設定ファイル追加で可能です。そのため、ファイル配布モジュールで設定ファイルを転送し、新規に作成したディレクトリに対するマッピングとそのディレクトリに対するセキュリティ情報を追加します。

転送する設定ファイルの内容は、以下のとおりです。

                Alias /contents/content01 ${contents_dir}
                <Directory ${contents_dir}>
                  Require all granted
                </Directory>
                

なお、今回のケースでは、転送時に設定ファイル内の文字列変換を行います。上記の設定ファイル中の “${contents_dir}“ が /var/www_contents/content01/ に変換されます。設定内容については、後述の ”3-2” をご確認ください。

3-1. 設定ファイルを Hinemos マネージャへアップロード

Hinemos マネージャへのアップロードは、環境構築パースペクティブの環境構築[ファイルマネージャ]ビューから行います。

↓クリックすると画像が拡大されます↓

3-2. 設定ファイル転送用ファイル配布モジュールの作成

↓クリックすると画像が拡大されます↓

4. Apache の起動

Apache の起動は、コマンド実行モジュールを使用します。

↓クリックすると画像が拡大されます↓

環境構築の実行

環境構築の実行については、環境構築機能でHinemosエージェントをアップデートしてみようの”手順3. 環境構築の実行”をご確認ください。

以上で、設定および実行は終了です。

バックエンドサーバの準備が整った後は、フロントエンドサーバに適切な設定を追加する必要があります。詳細については、以下の技術文書をご確認ください。

mod_proxy

mod_proxy_balancer

今回は、バックエンドサーバの追加を環境構築機能で実施しました。

普段実行するコマンドやファイル転送を環境構築機能に設定するだけで、Web コンテンツの配置も含めた Apache の構築処理が何度でも実行できるようになりました。また、構築に関わる操作を環境構築機能に登録すると、環境の維持管理に必要な処理が明示化されるので、引き継ぎが容易になるというメリットもあります。

環境構築機能は、日常の基本的な作業を模倣しますので、処理の自動化以外にも上記のような副次的な効果が見込めます。みなさんも、是非ご利用いただき、日々の業務の効率化に役立ててください。

関連情報

お問い合わせ