一瞬でのバックアップを実現するSolaris ZFS:OpenSolarisで始めるブログサーバ構築(4)(2/4 ページ)
この連載では、サーバOSとして十数年発展してきた「Solaris」をオープンソース化した「OpenSolaris」を紹介し、ブログサーバ「Roller」と組み合わせて運用していくうえで有用なさまざまな知識を紹介していきます。(編集部)
ZFS上にブログサーバ環境を構築してみよう!
ここからは、ZFSによる実際のストレージプールの作成方法や管理方法を紹介しましょう。そのほかの特長についても、項目ごとにその都度説明することにします。
では、早速、前回のブログサーバ環境をZFS上に構築してみましょう。前回は、Solarisコンテナを用いて、ブログサーバとデータベースを異なるゾーン上に構築する方法を紹介しましたが、今回は、これらのゾーンをZFS上に構築します。
1 ストレージプールの作成
まず、基本的なストレージプールの作り方を紹介します。ストレージプールの作成や管理は、zpool(1M)コマンドで行います。例えば、2つの未使用の物理ディスク「c1t1d0」と「c1t2d0」を使用する場合、以下のように入力します。
*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***
これでmypoolというストレージプールが作成できます。これらのディスクはすべて、/dev/dskディレクトリに作成され、適切な名前が自動的に割り当てられます。このストレージプールは1つの大きなスライスで構成され、データは両方のディスクに動的にストライピングされます。
このようなデータの冗長構成について、ZFSは、「ミラー」および「RAID-Z」という構成を用意しています。上記の2つのディスクをミラー構成にしたければ、ZFS作成時のキーワードとしてmirrorを指定するだけです。
*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***
データは、両方のミラーにまたがって動的にストライプ化され、各ディスク間で適切に冗長化されます。
また、RAID-ZはRAID-5に似ていますが、可変ストライプ幅を使用しているので、RAID-5に起こる「書き込みホール」の問題がありません。RAID-Zでは、シングルパリティのraidzとダブルパリティのraidz2(RAID-6相当)の指定が可能です。いずれも、上記コマンドで、キーワードにraidzやraidz2を指定するだけで設定できます(ただし、それぞれ適切な数のディスクが必要になることはお忘れなく)。
いずれにせよ、たった1行のコマンドを実行するだけでRAID環境を構築できます。一度ZFSを使うと、もうほかのファイルシステムには戻りたくなくなるかもしれませんね。
ディスクの冗長化の説明をした後ですが、今回テストに使用したマシンには未使用のディスクがなかったので、mkfileで20GBytesのファイルを作成し、その上にストレージプールを作成することにします。もし手元に未使用のディスクがあれば、それを使ってください(物理ディスクが1つしかなくてもストレージプールは作成できます)。
*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***
これでストレージプールが作成できました。zpool listコマンドで確認してみましょう。
*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***
dfコマンドを実行してみると、すでに/mypoolでマウントされていることが確認できます。
zpool(1M)コマンドの実行だけで、ストレージプールを作り、プールと同じ名前のファイルシステムとマウントポイントを自動的に作成し、実際にマウントするところまで行ってくれます。しかも、コマンドに要する時間は一瞬です。約20GBytesのファイルシステムが、formatやnewfsコマンドの実行なしに一瞬で作成できるのです。これだけでもかなり魅力を感じますね。
2 ZFSファイルシステムの作成
次に、ゾーン用のファイルシステムを作成します。ZFSファイルシステムの作成や管理には、zfs(1M)コマンドを使用します。
*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***
ここでマウントポイントを変えたければ、以下の方法で変更できます。
*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***
これでゾーン用のZFSファイルシステムの作成は終了です。あとは前回と同様、zonecfgを使ってゾーンを構成します。
*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***
前回と異なっている点は、zonepathで指定した先のファイルシステムが、ZFSファイルシステムになっているという点だけです。
あとは、zoneadmコマンドを使ってアプリケーションをインストール、ブートして、Apache Rollerのセットアップを行ってください。同じようにdb_zoneのzonepathには/export/zones/db_zoneを指定してゾーンを作成してみてください。
これで、両方のゾーンがZFSファイルシステムの上に構築されました。
関連記事
▼第2回 Cool Stackで手軽に「SAMP」
http://www.atmarkit.co.jp/flinux/rensai/opensolaris02/opensolaris02a.html
容易なストレージプールの拡張
ZFSの扱いやすさが分かっていただけたと思いますが、ZFSのメリットはこれだけではありません。例えば、データがどんどん大きくなって、ディスクが足りなくなってきたとしましょう。こんなときもZFSであれば、以下のコマンドを実行するだけで、簡単にストレージを拡張することができます。
*** 一部省略されたコンテンツがあります。PC版でご覧ください。 ***
Copyright © ITmedia, Inc. All Rights Reserved.