Apacheのインストール:バイナリパッケージとソースファイルのメリット


Apacheのインストール方法

  • 基本unix系です。私は、CentOS or Linuxをいつも利用することが多いです。
  • インストール方法は2種類ある。
  • Apacheソフトウェア財団が入るしているソースアーカイブをビルドし、インストールする方法
  • 各ディストリビューション(LinuxやUbuntuなど)提供しているバイナリパッケージにてインストールする方法。  *ざっくり言うと、yum installやapt-get install

バイナリパッケージのメリット

  • バイナリパッケージを利用できるなら、わざわざソースファイルを利用する必要はないと思う。
  • 主要なLinuxディストリビューション(Fedora / CentOS / Ubuntu)には、あらかじめバイナリパッケージが用意されている。
  • パッケージ管理ユーティリティを利用すると、インストール、削除、アップデート、依存関係の管理も簡単。
  • パッケージによっては、プラットフォームのパフォーマンスを最大限引き出せるよう、バイナリレベルで最適化されている場合もある。
  • Apacheにおいてはモジュール機構を採用しているので、機能追加のたびに再ビルドする必要はない。  *設定ファイルの変更でほとんど対応可能。

ソースファイルからのインストールが必要なケース

  • 使用しているプラットフォームに適合したバイナリパッケージが手に入らない場合
    • 基本的にはあまりないかな。。。
  • 安定している旧バージョンをあえてインストールしたい場合。
    • Apache 2.4 /2.2 / 2.0といった複数のバージョンが平行でメンテナスされているので、旧式の安定したバージョンを使いたい場合があるかも!?
  • いち早く最新のApacheを使用したい場合
    • 最新版Apacheのリリースはソースファイルが先。
    • 但し、脆弱性が高まる可能性もあるのでリスクは考慮した方がいい。
  • インストールパスを変更したい場合
    • ソースファイルからのインストールする理由はこれだけかも。
    • 設定ファイル、ディレクトリ配置などをオプションで指定することが可能。
  • 複数のバージョンを同時にインストールしたい場合
    • インストールパス等を変更し、旧バージョンを残しながら、移行までの間利用することが可能。
  • Apacheモジュールを静的に組み込みたい場合
    • モジュール機能の拡張は「動的」で、サーバの負担となり、起動速度や実行速度が低下する。
    • ビルド時のオプションに含むことでApacheのコア機能にモジュールを「静的」に組み込むことが可能。
  • MPMを変更する場合
    • Unix系ではApache2.2まではMPMを切替るためにソースファイルを再ビルドする必要がある。
    • 2.3以降では、動的に切り替えることが可能。

まとめ:感想

  • 最初から利用するモジュールが決まっていれば、MPMに含めて静的モジュールとしてビルド可能なので、ソースインストールがオススメ。
  • もしくは、バージョンを統一してどんな時期でも「完全に同じインストール」をする必要がある場合。
    • 小案件のプロジェクトで同じApacheを利用する場合はこっちの方がいいかも。横展開が楽。バージョン差異でのバグや脆弱性対応などがあればしやすい。
  • それ以外は、バイナリパッケージがオススメ。
    • 正直ネットの情報もバイナリパッケージのインストールが多い。

記事を書いた理由:メモ

  • Apache、Nginxなど様々なWebサーバ用OSSがある。
  • Apacheをインストールする際に、いつもどっちがいいか迷うので簡潔に記録しておきたかったのが理由です。

参考

  • 本:サーバ構築の実際が分かる Apache[実践] 運用/管理