[入門編] Ubuntu Serverとその他のサーバーOSを比較する
Ubuntu ServerのOSバージョンとisoイメージ
Ubuntu Serverは、2013年12月現在、LTS版として12.04.3がリリースされています。RHEL6.4やRHEL6.5がリリースされる度にisoイメージが異なるのと同様、Ubuntu ServerでもポイントリリースごとにOSのisoイメージが異なります。RHELの場合は、isoイメージをRed Hat Networkから入手しますが、Ubuntu Serverのisoイメージはubuntu.comのサイトから入手できます。次期LTS版が登場する2014年4月の時点では、LTS版として14.04 LTSと12.04.4 LTS、非LTS版は13.10がUbuntu Serverの利用候補になります。非LTS版とLTS版のリリースの後にハードウェアベンダー提供のサポート・マトリクスに掲載されたUbuntu Serverのバージョンと対応するサーバー機種をチェックしておくことをお勧めします。
対応アーキテクチャ
RHELの対応アーキテクチャは、32ビットのx86アーキテクチャ(i386版)、x86アーキテクチャの64ビット版(x86_64版)、IBM社のPOWERとSystem zのアーキテクチャに対応しているのに対し、Ubuntu Serverは、i386版、x86_64版の他に、ARM版が存在します。
一般的なx86サーバーには、Ubuntu Serverのx86_64版のisoイメージを使ってインストールを行いますが、省電力であるARMプロセッサを搭載した高密度なカートリッジサーバーとx86_64版の混在の利用が考えられます。UbuntuのWebサイトには、超省電力チップを搭載したカートリッジ型のサーバー「HP Moonshot」とUbuntu Serverの親和性に関する情報が掲載されています。
インストーラが特徴的なUbuntu Server
一般的にRHELやCentOS、SLES等のインストールはGUIによるマウス操作によって行いますが、Ubuntu Serverのインストールはテキストベースで、キーボード操作によって行います。
Ubuntu Serverのインストーラは、パーティショニング、ユーザー作成、各種パッケージのインストールを行う機能以外に、MaaS(Metal-as-a-Service)と呼ばれるクラウド型のOS自動配備用サーバーの構築を半自動的に行う機能も有しています。MaaSを選択してインストールを行えば、簡単にOS配備用のサーバーを構築できるため、大量のスケールアウト型サーバーを導入する技術的なハードルを大きく下げることができます。これは、サービスプロバイダ等のスケールアウト基盤を大量に導入されるユーザーにとって重要な点です。
OS配備用のサーバー構築は、DHCP、TFTP、NFS、HTTPのプロトコルと、isoイメージ、ブート用のイメージ等の用意やノードの登録用の設定ファイル等を管理者が手動で準備し、管理者向けのWebインタフェース等を自作して管理する場合が一般的です。またクラウド型の配備になると、セキュリティやマルチテナントを意識した開発が必要になり、OSを配備するだけでも大きな負担になります。MaaSを導入すれば、これらの管理・開発の負担を軽減することができます。
Ubuntu Serverのインストーラで選択可能な様々なファイルシステム
RHELでサポートされる主なファイルシステムは、ext4やXFSです。Red Hat社のNASアプライアンス製品「Red Hat Storage」では、昨今のビッグデータを意識した利用を想定し、XFSの利用が必須となっていますが、Ubuntu Serverでも同様にXFSの利用が可能です。またreiserfsやJFS、btrfsなどのファイルシステムもサポートしています。ただし、サーバー用途で安定的に利用する場合は、現在ユーザー環境に導入されているファイルシステム周りの管理スクリプトや技術者のスキル等を考慮し、実績のあるファイルシステムを利用する方がよいでしょう。
その他のポイントとして、利用するファイルサイズ、ファイルの総容量によって、XFSの選択を考慮する必要があります。Ubuntu Serverでは、OS領域にext4ファイルシステムを利用するのが一般的です。また、GlusterFS等の分散型のファイルシステムの利用を視野に入れたビッグデータ向けのスケールアウト型NAS用途としては、XFSでの利用が一般的です。
LVMの利用シーンで比較する
RHEL系のOSでは、共有ストレージ型のHAクラスタのボリュームの利用にLVMを使うことがありますが、Ubuntu ServerでのLVMの利用シーンは主に、スケールアウト型のNAS向けの分散ファイルシステム等が考えられます。実際、Red Hat Storage等のファイルシステムではLVMが必須ですが、GlusterFSのような分散ストレージ基盤でUbuntu Serverを採用する場合も、LVMを使うことになります。Ubuntu ServerのLVMの基本機能や使用感は、RHELやCentOSとあまり変わりませんので、Red Hat系OSでのLVMの運用ノウハウを活かすことができます。
ソフトウェアRAIDの利用には注意が必要
Ubuntu Serverは、RHELのインストーラと同様にソフトウェアRAIDが選択可能です。ただし、Ubuntu ServerのソフトウェアRAIDは、RHELの場合と同様に、サーバーのCPUリソースを消費する点と、ハードディスク障害時の管理と障害切り分け等が煩雑化するため注意が必要です。ハードウェアベンダーからRAIDコントローラーのドライバーがUbuntu Server向けにリリースされていない場合等の特殊な事情においてのみ、ソフトウェアRAIDを検討してください。Ubuntu Serverでも、ソフトウェアRAIDはインストーラレベルで設定の機能を有していますが、実際の運用では、障害復旧手順等を確実に把握しておく必要がありますので、導入前に障害通知試験や障害復旧試験を十分に行ってください。