FreeBSD8.0によるWEBサーバ構築ノート
無料のWEBサーバ用OSとして優れた性能を持つFreeBSD8.0に、GmirrorによるソフトウェアRAID1, BIND9, Apache2.2, MySQL5, PHP5
などのWEBサーバを構築する方法から、バージョン管理ソフトSVN活用方法まで解説します。
レンタルサーバに満足していますか?
最近、日本でも共用のレンタルサーバの価格が安くなってきました。
私も、さくらインターネットやValueドメインのCOREサーバを長らく使用して来ましたが、
多くの問題点と不満があり、2010年3月に自社(自宅)サーバに切り替えました。
自社サーバに切り替えた理由は、以下の3点です。
- 表示速度を安定的に高速化するため。
- データの信頼性を向上するため。
- 費用対効果を最適化するため(専用レンタルサーバ+専用回線との比較)。
ダウンロード時間とダウンロードページ数 (画像をクリックしてご覧下さい)
共用のレンタルサーバだと、1サーバに数十~数百サイトが共存することになりますから、
ユーザ数が少ない間は高速に表示できたとしても、ユーザの増加に伴い表示速度は落ち、安定的に高速表示することはできません。
左図は、900円~1,500円/月クラスのレンタルサーバにあるサイトの2010年3月から6月のGoogleの活動を示したものです(Googleの管理サイトより)。
このサイトは半年程度前に、別サーバから移設したサイトですが、移設当初は2秒程度のダウンロード時間でした。
これがいつの間にか4秒以上、悪い時には10秒以上かかるようになり、ダウンロードページ数も徐々に減少しました。
ユニークアクセス数も1000を超えていましたが、1/10程度にまで落ちてしまいました。
4月終盤に、自社サーバに移転し、ダウンロード時間が大幅に短縮され、クロールページ数も安定的に右肩上がりに変化しました。
特に、データベースを使用したサイトやPHP等により動的にページを表示するサイトでは、
CPUやHDDの使用率が高まりますので、コンピュータの混雑に伴い、ダウンロード時間の増大傾向が顕著のようです。
このため、Googleのクロール速度が遅く、動的に多数のページを作成しても、なかなかGoogleの登録ページ数が増えませんし、
表示速度の悪化によりGoogle検索の上位表示も望めないでしょう。
Googleの検索表示ランキングアルゴリズムはブラックボックスですが、表示速度が遅いサイトを上位に掲載することなどあり得ないでしょう。
また、あるレンタルサーバではデータベースごと消えたケースもありました。
昔に比較して、HDDの信頼性が向上したとはいえ、やはりHDDは壊れるものとしてシステムを構築する必要があります。
少なくともシステムをインストールするHDDくらいは、1台のHDDが壊れてもサイト運営に支障が無いよう、また壊れたHDDをそっくり交換できるよう、RAI1を組みたいものです。
MySQLについては、レプリケーション機能を使用すれば、1台のMasterと複数台のSlaveという形で、2台以上のサーバに保存できますので、この機能の活用をお勧めします。
静的なhtmlのページを表示するのであれば、格安の共用レンタルサーバで十分かも知れません。
しかし、数十万~数百万を超えるページを動的に表示するには共用レンタルサーバでは重すぎますし、
また、専用サーバに専用回線を使用したレンタルサーバ+専用回線との比較だと、自社サーバという選択肢が、がぜん有利です。
データベース(ここではMySQLを使用)を高速表示するためには、SQL文の最適化が必要なケースも出てきます。
しかし、レンタルサーバだと、表示速度の遅延がSQLクエリの問題によるものなのか、それとも他ユーザの影響によるものなのか判断できません。
貴サイトも本格的に高速化を行って、アクセス数を増やしたいのであれば、自社(自宅)サーバに挑戦してみては如何でしょうか?
最近の一般家庭用光回線の速度は下り・上り共に相当高速です。
例えば、NTT東日本のフレッツ光ネクストであれば、下り200Mbps,上り100Mbpsです。
しかしながら、ウェブサイトを閲覧するという一般的な使用方法であれば、上りは殆ど使われることはありません。
この上り回線の空きを放っておく手はないでしょう。上り回線の空き帯域は、立派な専用回線になります。
なぜFreeBSDなのか
サーバOSの選択肢としては、大別してWindows, Linux, FreeBSDの3種類があるでしょう。
Windows2008やRedHat Linuxに代表される商用のOSでは、一台あたり5万円~30万円程度の費用がかかってしまいます。
ソフトウェアに費用をかけるくらいなら、その費用でもう一台のサーバを買った方がはるかに有利でしょう。
また、商用のOSと言えども、ディストリビュータがリリースした構成しかサポートされません。
フリー系のOSであれば自分でカスタマイズして、自己責任で自由に利用できるというメリットもあります。
さらに、ネット上には、商用のOS情報に比較してフリー系のOS情報の方がはるかに多くあります。
フリー系のOSであるLinuxであれば、RedHat Linuxとほぼ同等のCentOSという選択肢もあるでしょう。
むしろ、知名度から言えば、FreeBSDよりもLinuxの方が高いでしょう。
しかし、LinuxはサーバOSとしてもクライアントOSとしても利用されるOSですが、FreeBSDはサーバ専用OSと考えて良いでしょう。
近年、Linuxも高信頼・高性能を目指して改良されていますが、サーバOSとしての性能は、サーバ専用OSであるFreeBSDの方が依然優れているようです。
また、FreeBSDのプロジェクトは、古くから運営されており、「ハンドブック」などの良質なドキュメントが充実しているのも強みです。
さらに、米Yahoo!やさくらインターネット等、WEBサーバとしての実績も豊富であり、安心して導入できるでしょう。
対象となる読者の方
FreeBSDではWindowsのようなGUI(グラフィカルなユーザインターフェース)は使用できません。
ここで対象としている読者は、基本的なUNIXやUNIX上のテキストエディタ(デフォルトはVIエディタ)を多少なりとも使ったことがある方を対象としています。
かといって、それ程構える必要もないでしょう。
必要なコマンドは、必要に応じて解説していますので、そのままコピー・ペーストすればインストールや設定は可能です。
UNIXやVIエディタを勉強しながらFreeBSDをインストールしたいと言う方は、左記の書籍がお勧めです。
ご自分に適したものを手元に置いて、勉強しながら本サイトをご活用下さい。
最終更新日:2010年5月28日