Solstice DiskSuite 4.2.1 リファレンス

第 1 章 DiskSuite の概要

この章では、DiskSuite 全体の構造について解説します。次の表を参考にして、必要な箇所を探してください。

DiskSuite の機能

DiskSuite は多数のディスクと格納されているデータを管理するためのソフトウェア製品です。DiskSuite にはいろいろな使用方法がありますが、そのほとんどの目的は次の 2 つです。

DiskSuite によって入出力のパフォーマンスが向上する場合もあります。

DiskSuite によるディスクの管理方法

DiskSuite は、仮想ディスクを使用して、物理ディスクとディスク上のデータを管理します。DiskSuite では、この仮想ディスクをメタデバイスと呼びます。

メタデバイスは、使用する側からは物理ディスクと同じです。DiskSuite は、メタデバイスに送られた入出力要求を、メタデバイスを構成するメンバーディスクに送ります。

DiskSuite のメタデバイスは、スライス (ディスクパーティション) から構築されます。メタデバイスは、 DiskSuite に付属しているグラフィカルユーザーインタフェースの DiskSuite ツールを使用すれば簡単に構築できます。DiskSuite ツールは、利用できるすべてのスライスの情報を表示します。スライスをメタデバイスオブジェクトまでドラッグするだけで、そのスライスをメタデバイスに割り当てることができます。DiskSuite ツールのかわりに、コマンド行ユーティリティを使用してメタデバイスを構築および修正することもできます。

たとえば、記憶容量を増やしたい場合には、小さなスライスからなる集合を 1 つの大きなスライス (デバイス) として扱うように、DiskSuite でシステムに指示することができます。これらのスライスから大きなメタデバイスを作成したら、すぐに「本物の」スライス (デバイス) と同じように使用することができます。

メタデバイスについての詳しい説明は、「メタデバイス」を参照してください。

DiskSuite は、ミラー化 (データのコピー) と RAID5 メタデバイスを使用して、データの信頼性と可用度を向上させます。DiskSuite のホットスペアは、ミラーや RAID5 メタデバイスに対して、さらに別のレベルのデータ可用度を提供します。

構成を設定したら、DiskSuite ツールを使用して動作の状況を調べることができます。また、DiskSuite の SNMP トラップ生成デーモンを使用すれば、ネットワーク監視コンソールで DiskSuite のエラーメッセージを自動的に受け取ることができます。

DiskSuite ツール

DiskSuite ツールは、DiskSuite の構成を設定および管理するためのグラフィカルユーザーインタフェースです。DiskSuite ツールを起動するためのコマンドは次のとおりです。


# metatool &

DiskSuite ツールは、DiskSuite オブジェクト (メタデバイス、ホットスペア集合、およびメタデバイス状態データベースの MetaDB オブジェクト) をグラフィカルに表示します。DiskSuite ツール上で DiskSuite オブジェクトをドラッグ&ドロップ操作することによって、すばやくディスクを構成したり、既存の構成を変更したりすることができます。

DiskSuite ツールは、物理デバイスとメタデバイスの両方をグラフィカルに表示して、ディスクの管理を容易にします。また、SPARCstorageTM Array 特有の管理手続きも DiskSuite ツールで行えます。

DiskSuite ツールでは、DiskSuite の管理手続きをすべて行えるわけではありません。一部の操作 (ディスクセットの作成と管理など) は、コマンド行インタフェースを使用して実行しなければなりません。

DiskSuite ツールについての詳しい説明は、第 4 章「DiskSuite ツール」を参照してください。

コマンド行インタフェース

DiskSuite ツールを管理するためのコマンドを表 1-1 に示します。詳しい説明は、各コマンドのマニュアルページを参照してください。

表 1-1 コマンド行インタフェースのコマンド

DiskSuite のコマンド 

説明 

growfs(1M)

UFS ファイルシステムを安全に拡張する。 

mdlogd(1M)

mdlogd デーモンと mdlogd.cf 構成ファイルにより、一般 SNMP トラップメッセージを送信する。

metaclear(1M)

アクティブなメタデバイスとホットスペア集合を削除する。 

metadb(1M)

メタデバイス状態データベースの複製を作成および削除する。 

metadetach(1M)

メタデバイスをミラーから切断する。もしくは、トランスメタデバイスからロギングデバイスを切断する。 

metahs(1M)

ホットスペアおよびホットスペア集合を管理する。 

metainit(1M)

メタデバイスを構成する。 

metaoffline(1M)

サブミラーをオフラインにする。 

metaonline(1M)

サブミラーをオンラインにする。 

metaparam(1M)

メタデバイスのパラメータを変更する。 

metarename(1M)

デバイス名を変更、もしくは交換する。 

metareplace(1M)

サブミラーまたは RAID5 メタデバイスのスライスを交換する。 

metaroot(1M)

ルート (/) のミラー化用にシステムファイルを設定する。

metaset(1M)

ディスクセットを管理する。 

metastat(1M)

メタデバイスまたはホットスペア集合の状態を表示する。 

metasync(1M)

リブート時にメタデバイスを再同期処理する。 

metatool(1M)

DiskSuite ツールを起動する。 

metattach(1M)

ミラーにメタデバイスを接続するか、トランスメタデバイスにロギングデバイスを接続する。 

DiskSuite オブジェクトの概要

DiskSuite では、メタデバイス、状態データベースの複製、およびホットスペア集合の 3 種類の基本オブジェクトを作成します。表 1-2 に、これらの DiskSuite オブジェクトの概要を示します。

表 1-2 DiskSuite オブジェクトの概要

DiskSuite オブジェクト 

概要 

目的 

参照先 

メタデバイス (シンプル、ミラー、 RAID5 、トランス)

物理スライスの集まりで、システムからは 1 つの論理デバイスとして認識される。 

ディスク容量を上げて、データの可用度を高めるため。 

「メタデバイス」

メタデバイス状態データベース (状態データベースの複製)

DiskSuite 構成の状態に関するディスク情報を格納するデータベース。 

メタデバイス状態データベースの複製を作成しなければ、DiskSuite は動作できない。 

「メタデバイス状態データベースと状態データベースの複製」

ホットスペア集合

サブミラーまたは RAID5 メタデバイスのスライス障害時に自動的に交換されるように予約されているスライス (ホットスペア) の集まり。 

ミラーおよび RAID5 メタデバイスにおけるデータの可用度を高めるため。 

「ホットスペア集合」


注 -

DiskSuite のグラフィカルユーザーインタフェースである DiskSuite ツールでは、メタデバイス、メタデバイス状態データベース、ホットスペア集合のグラフィカル表現も「オブジェクト」と呼びます。


メタデバイス

メタデバイスとは、システムから 1 つの論理デバイスとして認識される物理スライスの集まりを意味します。DiskSuite のメタデバイスは、標準 UNIX の疑似 (仮想) デバイスと同じです。

メタデバイスを作成するには、単純連結、ストライプ、ミラー化、RAID レベル 5、UFS ロギングのいずれかの方式を使用します。したがって、作成できるメタデバイスの種類は、連結方式メタデバイス、ストライプ方式メタデバイス、ストライプ方式で連結されたメタデバイス、ミラー、RAID5 メタデバイス、トランスメタデバイスとなります。

DiskSuite では、メタディスクドライバという特殊なドライバを使用します。このドライバは、アプリケーションがメタデバイスを物理デバイスとして扱えるように、物理デバイスとメタデバイスとの間の入出力を管理します。このようなドライバは、論理 (または疑似) ドライバと呼ばれます。

メタデバイスの作成と管理は、グラフィカルユーザーインタフェースの DiskSuite ツールか、もしくはコマンド行インタフェースを使用して行います。

メタデバイスの種類を表 1-3 に要約します。

表 1-3 メタデバイスの種類

メタデバイス 

説明 

シンプル

そのままメタデバイスとして使用するか、ミラーやトランスデバイスの基本構築ブロックとして使用します。シンプルメタデバイスには、ストライプ方式、連結方式、ストライプ方式の連結の 3 種類があります。シンプルメタデバイスは、物理スライスのみから構成されます。シンプルメタデバイスだけでは、データの冗長性は提供しません。 

ミラー

複数のコピーを取ることによってデータを複製します。1 つのミラーは、1 つまたは複数のシンプルメタデバイスから構成されます。ミラーを構成するメタデバイスはサブミラーと呼ばれます。 

RAID5

パリティ情報を使用してデータを複製します。データが欠落している場合には、利用できるデータとパリティ情報から、欠落しているデータが再生成されます。RAID5 メタデバイスは、スライスから構成されます。1 つのスライスの領域がパリティ情報用に割り当てられ、RAID5 メタデバイスを構成するすべてのスライスに分配されます。 

トランス

UFS ファイルシステムのログを記録するために使用します。トランスメタデバイスは、1 つのマスターデバイスと1 つのロギングデバイスから構成されます。これらのデバイスとしては、スライス、メタデバイス、ミラー、または RAID5 メタデバイスを使用できます。UFS ファイルシステムは、マスターデバイスに格納されます。 

メタデバイスの使用方法

メタデバイスを使用すると、ディスクの容量を増やしたり、データの可用度を高めたりすることができます。メタデバイスを使用することで、入出力のパフォーマンスが向上する場合もあります。機能的に見れば、メタデバイスはスライスと同じように動作します。メタデバイスはスライスと似ているため、一般ユーザー、アプリケーション、ファイルシステムからはスライスと同じように見えます。物理デバイスと同じように、メタデバイスもブロック型デバイス名または raw デバイス名によってアクセスされます。メタデバイス名は、ブロック型デバイスと raw デバイスのどちらが使用されるかによって変化します。メタデバイス名についての詳しい説明は、「メタデバイスの規約」を参照してください。

メタデバイスに対しては、ほとんどのファイルシステム関連コマンド (mount(1M)、 umount(1M)、ufsdump(1M)、ufsrestore(1M) など) を使用できますが、 format(1M) コマンドは使用できません。メタデバイスにファイルシステムがマウントされていれば、メタデバイスとの間でファイルの読み取り、書き込み、コピーを行えます。

SPARC および x86 システムでは、次のディスクドライブ上にメタデバイスを作成することができます。

メタデバイスの規約

表 1-4 メタデバイス名の例

/dev/md/dsk/d0

ブロック型メタデバイス d0 

/dev/md/dsk/d1

ブロック型メタデバイス d1 

/dev/md/rdsk/d126

raw メタデバイス d126 

/dev/md/rdsk/d127

raw メタデバイス d127 

例 - 2 つのスライスから構成されるメタデバイス

図 1-1 に、ディスク A とディスク B からの 2 つのスライスから構成されるメタデバイスの例を示します。アプリケーションや UFS は、これら 2 つのスライスを、1 つの物理ディスクと同じように扱います。さらに多くのスライスを追加すれば、メタデバイスの容量を増やすことができます。

図 1-1 メタデバイス、物理ディスク、スライスの関係

Graphic

メタデバイス状態データベースと状態データベースの複製

メタデバイス状態データベース (または単に状態データベース) は、DiskSuite 構成の状態に関するディスク情報を格納するデータベースです。DiskSuite 構成への変更は、すべてメタデバイス状態データベースに記録されます。構成や状態が変化すると、DiskSuite はメタデバイス状態データベースを自動的に更新します。構成の変化とは、新しくメタデバイスを作成した場合などを意味します。状態の変化とは、サブミラーに障害が発生した場合などを意味します。

メタデバイス状態データベースは、複数のデータベースコピーの集まりです。各コピーは状態データベースの複製と呼ばれ、データベースのデータが常に有効であることを保証します。メタデバイス状態データベースのコピーを持つことにより、データベースのあるディスクの 1 つが障害を起こしてもデータを保護できます。メタデバイス状態データベースは、既知の状態データベースの複製の位置と状態をすべて記録しています。

メタデバイス状態データベースと状態データベースの複製が作成されるまで、 DiskSuite は動作することができません。DiskSuite で設定するためには、動作しているメタデバイス状態データベースが必要です。

メタデバイス構成を設定する際には、状態データベースの複製を専用のスライスに格納するか、もしくは後でメタデバイスの一部となるスライスに格納するか、のどちらかを選択できます。スライスがメタデバイスで使用される場合、DiskSuite は状態データベースの複製用に割り当てられているスライス領域を認識して、その領域を自動的にスキップします。状態データベースの複製用に割り当てられているスライス領域は、他の目的のために使用してはいけません。

1 つのスライスに複数の状態データベースの複製を格納しておくこともできますが、そうしておくと、システムはその部分に起こる障害に対して脆弱となります。

DiskSuite による状態データベースの複製の使用

状態データベースの複製は、メタデバイス状態データベースのデータが常に正しいものであることを保証します。メタデバイス状態データベースの内容が更新されると、それぞれの複製も更新されます。この更新は、それぞれの複製に対して 1 つずつ行われます (システムがクラッシュした場合に、すべての更新内容が破壊されるのを防ぐためです) 。

システムが状態データベースの複製を消失した場合、DiskSuite は、どの複製に破壊されていないデータが格納されているかを判断しなければなりません。DiskSuite では、多数決アルゴリズムによって、この判断を行います。このアルゴリズムは、過半数 (半数 + 1) の複製が利用できれば、それらの内容は破壊されていないと判断します。このアルゴリズムを有効にするために、ディスク構成を設定する際には 3 つ以上の状態データベースの複製を作成しなければなりません。3 つの複製のうちの 2 つが利用できれば、多数決による意見の一致が得られることになります。

データを保護するため、すべての状態データベースの複製の過半数が利用できない限り、DiskSuite は機能しません。このように、このアルゴリズムはデータを破壊から守ります。

多数決アルゴリズムによって、次のように動作することが保証されます。


注 -

状態データベースの複製の数が奇数であれば、その値を 2 で割って小数点以下を切り捨てた整数値に 1 を足した値が過半数値となります。たとえば、複製が 7 個であれば、過半数値は 4 になります (7 を 2 で割って小数点以下を切り捨てると3 になり、それに 1 を足すと 4 になります) 。


ブート中は、DiskSuite は破壊された状態データベースの複製を無視します。破壊された複製を DiskSuite が作成しなおす場合もありますが、そうでない場合には、管理者が複製を修復するまで、その複製は無視されます。スライスのエラーによって複製が不良になった場合には、スライスを修復または交換してから、複製を使用可能にします。

すべての状態データベースの複製を消失した場合には、ディスク上のすべてのデータを失なってしまうことになります。したがって、多数の複製を別々のドライブやコントローラに分散させて作成しておき、最悪の事態を避けるようにしてください。最初の DiskSuite 構成情報とディスクパーティション情報を保存しておくのも良い方法です。

状態データベースの複製を追加する方法や、状態データベースの複製を消失した場合の復旧方法については、『Solstice DiskSuite 4.2.1 ユーザーズガイド』を参照してください。

メタデバイス状態データベースの規約

ホットスペア集合

ホットスペア集合とは、サブミラーまたは RAID5 メタデバイスでスライス障害が発生した場合に DiskSuite が自動的に交替させるように予約してあるスライス (ホットスペア) の集まりです。ホットスペアにより、ミラーおよび RAID5 メタデバイスのデータ可用度が高まります。ホットスペア集合は、DiskSuite ツールとコマンド行インタフェースのどちらでも作成できます。

ホットスペア集合の機能

エラーが発生すると、DiskSuite はホットスペア集合をチェックして、交換対象のスライスと同じかそれより大きいサイズを持つホットスペアを探します。該当するホットスペアが見つかると、DiskSuite はデータを自動的に再同期させます。適当なサイズのホットスペアが利用できない場合には、交換対象のサブミラーまたは RAID5 メタデバイスのエラーとなります。詳しい説明は、第 3 章「ホットスペア集合」を参照してください。

メタデバイスとディスク領域の拡張

DiskSuite では、スライスを追加することによってメタデバイスを拡張することができます。

メタデバイスに含まれるマウントまたはマウント解除されている UFS ファイルシステムは、停止したりシステムをバックアップしたりすることなく、拡張することができます (ただし、どんな場合でもデータをバックアップしておくべきでしょう) 。メタデバイスを拡張したら、growfs(1M) コマンドでファイルシステムを拡張してください。

一度拡張したファイルシステムを縮小することはできません。これは UFS 側の制限によります。

raw メタデバイスを使用するアプリケーションやデータベースから、新たに追加されたスライスを認識するためには、それぞれ指定の方法で領域を拡張しなければなりません。DiskSuite では、アプリケーションやデータベース用の領域を拡張する機能は提供していません。

メタデバイスの領域を拡張するには、次のような方法があります。

  1. ストライプまたは単純連結にスライス 1 つを追加する。

  2. ストライプまたは単純連結に複数のスライスを追加する。

  3. ミラーのすべてのサブミラーに 1 つまたは複数のスライスを追加する。

  4. RAID5 デバイスに 1 つまたは複数のスライスを追加する。

既存のメタデバイスへのスライスの追加は、DiskSuite ツールまたはコマンド行インタフェースを使用して行います。


注 -

DiskSuite ツールを使用して UFS ファイルシステムを含むメタデバイスを拡張すると、growfs(1M) コマンドが自動的に実行されます。コマンド行インタフェースを使用してメタデバイスを拡張する場合には、growfs(1M) コマンドを手動で実行します。


growfs(1M) コマンド

growfs(1M) コマンドは、サービスやデータを消失することなく UFS ファイルシステムを拡張します。ただし、growfs(1M) コマンドの実行中は、メタデバイスへの書き込みアクセスはできません。ファイルシステムのサイズは、そのファイルシステムが格納されているスライスまたはメタデバイスのサイズまで拡張できます。

growfs(1M) コマンドで -s <サイズ> オプションを使用すると、追加したディスク領域の一部のみを使用するようにファイルシステムのサイズを拡張することができます。


注 -

ミラーを拡張すると、ミラーのサブミラーに領域が追加されます。同じように、トランスメタデバイスを拡張すると、マスターデバイスに領域が追加されます。その後で、ミラーまたはトランスメタデバイスに対して growfs(1M) コマンドを実行します。つまり、領域は構成するデバイスに追加され、growfs(1M) コマンドはトップレベルのデバイスに対して実行されることになります。


システムファイルと起動ファイル

この節では、DiskSuite が正常に機能するために必要なファイルについて説明します。ほとんどの場合は、DiskSuite がこれらのファイル (md.tab ファイルを除く) を自動的にアクセス (更新) しますので、これらのファイルについて考える必要はありません。


注 -

/etc/lvm/md.tab ファイルの構成情報は、実際に使用しているメタデバイス、ホットスペア、および状態データベースの複製の情報と異なる場合があります。このファイルはメタデバイスなどの作成時にのみ使用されます。ブート時に、DiskSuite の構成情報を、このファイルに反映することがありません。



注意 - 注意 -

mddb.cf または md.cf ファイルを直接編集してはいけません。


DiskSuite のシステムファイルについては、マニュアルページを参照してください。

ディスクセット

共有ディスクセット (または単にディスクセット) とは、排他的に共有できる (同時に 1 台のホストのみが使用できる) メタデバイスやホットスペアを含む共有ディスクドライブの集まりです。現時点では、SPARCstorage Array ディスクに対してのみ、ディスクセットをサポートしています。

ディスクセットは、データの冗長性と可用度を高めます。1 台のホストが故障しても、他のホストが故障したホストのディスクセットを引き継ぐことができます 。

詳しい説明は、第 5 章「ディスクセット」を参照してください。