レビュー: CentOS 5 --堅牢なエンタープライズ向けOS

 CentOSプロジェクトが先週、エンタープライズ向けLinuxディストリビューション「CentOS」の2年ぶりのメジャーリリースであるバージョン5をリリースした。そこで今回CentOS 5をダウンロードして試してみたところ、CentOS 5は仮想化などの新機能を追加しながらも堅牢さと信頼性というこれまでのCentOSの伝統を引き継いだリリースであることが分かった。

 CentOS(Community ENTerprise Operating System)ディストリビューションの最新版であるCentOS 5は、フリー(GPLや同様のライセンス)で利用可能になっているRed Hat Enterprise Linux 5のソースコードから構築されている。現時点で対応しているプラットフォームはx86(i586とi686)とx86_64(AMD64とIntel EMT64)だが、IA64など他のプラットフォームにも近日中の対応が予定されている。

 他のサーバ向けディストリビューションと比べた場合のCentOSの主な利点としては、フリー(無料/自由)であるという点以外にも、揺るぎない信頼性と、各リリースのライフサイクルが長いということがある。CentOSプロジェクトでは、CentOS 3については2010年まで、CentOS 4については2012年までメンテナンスアップデートを提供することを予定しており、これらに続く形でCentOS 5についても少なくとも2014年まではメンテナンスが活発に行なわれることになっている。

 CentOS 5は、CD 6枚組(64ビット版はCD 7枚組)またはDVD 1枚組として提供されている。今回私はDVD版をダウンロードし、それを使ってサーバを構築した。CentOSのこれまでのリリースやFedora Coreと同様にインストールは簡単で、特にLinuxのインストールに慣れている人であれば難しいということはまったくないはずだ。インストールは、インストール手順の指示も画面に表示されるグラフィカルインターフェースを使って行なうことができるが、その場合は最低512MBのメモリが必要となる。なおテキスト版のインストーラもあり、こちらを使用する場合は最低128MBのメモリがあれば良い。インストールを新しいサーバ上で行なう場合などすべてのディスクを再フォーマットしても良いというときには、ディスクのパーティショニングを行なう際「自動パーティショニング」オプションを利用すると時間を非常に節約することができるだろう。ただしRAIDを使ってより複雑な設定を行ないたい場合などには、ディスクのパーティショニングを手動調整する必要がある。私の場合、テスト用サーバがデュアルブートマシンだったため、CentOSを空きパーティションにインストールするように手動調整してディスクのパーティショニングを行なった。インストールは特に問題なく進み、インストーラがマシン上の別のOSの存在を正しく認識しブートローダの設定を正しく行なってくれた。

収録パッケージ

 Red Hat Enterprise Linux 5とCentOS 5の主な相違点の一つとして、CentOS 5にはRHELのサーバ版とクライアント版の両方のパッケージが含まれているということがある。Red Hatのレポジトリがすべて一つにまとめられているので、エンドユーザがパッケージをより簡単に扱うことができるようになっている。

 CentOS 5には、通常期待されるサーバ関連のソフトウェアのすべてが含まれている。CentOS 5のカーネルはLinux 2.6.18で、大規模なメモリやデータをサポートするためのエンタープライズ向けの調整がいくらか行なわれている。また、Apache 2.2.3(32ビットのハードウェアプラットフォーム上での2GB以上のファイルのサポートに対応済み)、MySQL 5.0.22、PHP 5.1.6が含まれている。その他にもPostgreSQL 8.1.4や、BIND 9.3.3、Windowsマシンとファイルを共有するためのSamba 3.0などといったサーバ向けのコンポーネントが含まれている。さらにメールサーバ用ソフトウェアとしてPostfix 2.3.3やsendmail 8.13.8に加え、IMAP/POP3デーモンのCyrus 2.3.7や同Dovecot 1.0が含まれている。

 一方デスクトップ用のソフトウェアとしてはCentOS 5には、GNOME 2.16とKDE 3.5.4が含まれている。またOpenOffice.org 2.0.4、ウェブ閲覧用のFirefox 1.5.0.10、電子メール用のThunderbird 1.5.0.10などが含まれる。他にもCentOSにはCD作成から写真/画像操作に至るまで、デスクトップ用アプリケーションが幅広く含まれている。最先端のアプリケーションは含まれていないが、最先端からやや遅れた版を含めているのは「信頼性が低い可能性のある新しい版のパッケージを使うよりも、実績が証明済みの枯れたパッケージを使う方が良い」というCentOS 5の考え方の現れだ(編注:これはCentOSの方針というよりも、Red Hatの方針と言うべきだろう。CentOSプロジェクトは、Red Hat Enterprise Linuxのソース・パッケージに対して商標に関する変更以外は手を加えないというポリシーを掲げているからだ)。

仮想化

 CentOS 5での最大の変更点の一つは、仮想化技術のXenが含まれていることだ。仮想化とは、ゲストと呼ばれる複数のオペレーティングシステムを単一のサーバ上で同時に実行することを可能にする技術だ。つまり仮想化技術を使うと、ホストサーバ上でCPUとメモリを共有する仮想PCまたは仮想サーバを実行することができるようになる。仮想化パッケージを含めるかどうかはインストール時に選択することができる。

 Xenを使用すると、サーバは同時に複数のCentOS 5を単一のハードウェア上で実行することができる。CPUがIntel VT技術やAMD SVM技術でハードウェア仮想化をサポートしている場合には、Windowsなど任意のゲストOSを何ら特別な修正を施すことなしにホストすることもできる。

 CentOS 5では、ゲストOSのインストールと管理のためにvirt-installとvirt-managerという2つのツールが提供されている。virt-installは仮想マシンのインストールと設定を行なうためのシンプルなコマンドラインプログラムだ。virt-managerは稼動中の仮想マシンの監視と管理を行なうためのGUIプログラムで、CPUやメモリの使用状況についての詳細情報の表示や、稼動中の仮想マシンの停止などを行なうことができる。

 なお、CentOS 5では仮想マシンのOSを物理DVDからインストールすることはできないという点に注意しよう(編注:準仮想化の場合の制限、完全仮想化ではこの制限はない)。VMwareやSUSE Linux Enterprise Serverとは異なりCentOSではインストールツールで物理デバイスがサポートされていないため、インターネット(HTTP)経由かNFSにマウントされたDVD経由かのどちらかによるネットワークインストールしか行なうことができない。CentOSがLinux上の仮想化という観点でトップに立つディストリビューションを目指すのであれば、この点を解決する必要があるだろう。

 CentOSの開発者たちが仮想化に関して信頼性を高め実用レベルにするために多くの作業を費やしてきたものはXenであるものの、Linuxで利用可能な仮想化技術は当然ながらXenだけではなく、CentOS 5でも、例えばVMwareInnoTekの仮想化製品なども動くはずだ。

クラスタリングとSELinux

 仮想化に加えてCentOS 5には、クラスタリングやセキュリティの強化などエンタープライズ向けの機能も含まれている。クラスタとは、相互に接続されたノードやメンバーと呼ばれる複数のコンピュータを特定の目的のために協調的に動作させることによって、GFSファイルシステムを使ったファイル共有や高可用性サービスなどのようなサービスを提供するシステムだ。

 クラスタリングのサポートは、オペレーティングシステムのインストール時にインストールすることもできるし、あるいはオペレーティングシステムのインストール後でもsystem-config-packagesプログラムを使うことでいつでもインストールすることができる。クラスタリング用のパッケージは、Clustering(クラスタリング)とCluster Storage(クラスタリングストレージ)という名前でまとめられている。

 また、CentOS 5ではセキュリティを強化するためにSELinuxを利用することもできる。SELinuxとは標準的なLinuxのソースコードをセキュリティ強化のために一部変更したものであり、SELinuxを使うと、ユーザプログラムやシステムサーバに与える権限を各々が仕事を行なうために必要最低限の権限のみに制限することができるようになる。これによりアプリケーションによる不正な動作やあからじめ決められた以上の特権の獲得が阻止され、攻撃者がシステムに与えることができるダメージをなくしたり少なくしたりすることができる。

 SELinuxは主にNSA(米国家安全保障局)によって開発され、2000年にオープンソース開発コミュニティに対して公開された。CentOSではCentOS 4以来取り入れられている。

 これまではSELinuxを利用するにはいろいろと手間がかかり、優れたファイアウォールに防護された安全なLAN環境にいる場合などでは特に、利用をためらうケースも多かった。しかしCentOS 5ではSELinuxを簡単に利用できるようにすることに取り組んでおり、CentOS 5にはアクセス拒否の通知や診断のためのユーザフレンドリなツールであるsetroubleshoot(SELinux Troubleshooting Tool)が含まれている。SELinuxは通常はポリシー違反についての通知をアクセスベクタキャッシュのエントリとしてログに出力するが、SELinux Trouble Shooting Toolを利用するとデスクトップ上でも警告が行なわれ、問題についてのより分かりやすい情報も表示される。

テクノロジープレビュー

 CentOS 5には、まだ業務稼働には向いていないと開発者たちはみなしているものの、プレビューや採用の検討を行なうことができるようにするという目的で、以下のような新技術がいくつか含められている。

  • Stateless Linux:ディスクを持たないクライアントなどを実現するシステム
  • GFS2:Global File Systemのアップデート版
  • AIGLXCompiz:OpenGL拡張を使ってデスクトップに3D効果をもたらすX11用の新しいコンポーネント
  • Systemtap:稼働中のシステムに関する情報を集める、開発者/システム管理者用のインフラストラクチャツール

 今回試した結果CentOS 5は、これまでのCentOSのリリースと同様に安定していて堅牢であることがわかった。サポートが必要であれば、IRCメーリングリスト、フォーラム、優れたFAQなどの多くの方法が無料で提供されている。

 CentOSの最新版であるCentOS 5には数多くの改良点が含まれている。すでにCentOS 4を利用していてPHP 5やMySQL 5など主要なサーバサービスの新しい版へのアップグレードを検討している場合や、そうでなくても単に堅牢な汎用Linuxオペレーティングシステムを利用したいという場合に、CentOS 5は優れた選択肢だ。私はCentOS 5をサーバ用のLinuxディストリビューションとして利用することに決めた。

Gary Simsはイギリスの大学でビジネス情報システムの学位を持ち、ソフトウェアエンジニアとしての経験が10年ある。現在はフリーランスのLinuxライター/コンサルタント。

NewsForge.com 原文