名前 | 形式 | 機能説明 | オプション | 使用例 | ファイル | 終了ステータス | 属性 | 関連項目 | 注意事項
/usr/sbin/metaset -s setname [-M-a -h hostname]
/usr/sbin/metaset -s setname -A{enable | disable}
/usr/sbin/metaset -s setname [-A{enable | disable}] -a -h hostname...
/usr/sbin/metaset -s setname -a [-l length] [-L] drivename...
/usr/sbin/metaset -s setname -C {take | release | purge}
/usr/sbin/metaset -s setname -d [-f] -h hostname...
/usr/sbin/metaset -s setname -d [-f] drivename...
/usr/sbin/metaset -s setname -j
/usr/sbin/metaset -s setname -r
/usr/sbin/metaset -s setname -w
/usr/sbin/metaset -s setname -t [-f] [-u tagnumber] [y]
/usr/sbin/metaset -s setname -b
/usr/sbin/metaset -s setname -P
/usr/sbin/metaset -s setname -q
/usr/sbin/metaset -s setname -o [-h hostname]
/usr/sbin/metaset [-s setname]
/usr/sbin/metaset [-s setname] -a | -d [ [m] mediator_host_list]
metaset コマンドは、指定されたディスクセット内のディスクのセットを管理します。名前が付けられたディスクセットには、ローカルセット内にないすべてのディスクセットが含まれています。ディスクセットにより高可用性構成が実現されますが、Solaris ボリュームマネージャそれ自体は実際には高可用性環境を実現していません。
単一所有者ディスクセット構成は SAN 上のストレージまたはファブリック接続ストレージを管理し、また指定したディスクのセットに対して名前空間の制御および状態データベースの複製の管理を行います。
共有ディスクセット構成では、複数のホストが同じディスクのセットに物理的に接続されています。一方のホストが故障すると、もう一方のホストがそのディスクに対して排他的にアクセスすることになります。各ホストは共有ディスクセットを制御できますが、一度に共有ディスクセットを制御できるのは 1 つのホストのみです。
ディスクセットに新しいディスクを追加する際には、Solaris ボリュームマネージャがディスクの形式を検査します。必要に応じて、状態データベースの複製用の適切な容量を使用して、適切に設定された予約済みのスライス 7 (または EFI ラベル付きのデバイス上のスライス 6) をディスクが持つよう、Solaris ボリュームマネージャはディスクのパーティションを再設定します。スライス 7 (または EFI ラベル付きのデバイス上のスライス 6) の正確なサイズは、ディスクのジオメトリに依存します。従来のディスクセットの場合、スライスは 4M バイトを下回ることはなく、シリンダの境界がどこに存在するかに応じて、6M バイトに近づくことが多くなります。複数所有者ディスクセットの場合、スライスは最小で 256M バイトです。スライス 7 の最小サイズは将来変更される可能性があります。この変更は、状態データベースの複製のサイズ、および状態データベースの複製に格納される情報を含む、さまざまな要因に基づいて行われます。
ディスクセットで使用するためには、ディスクには特定の基準を満たす専用のスライス (6 または 7) が必要です。
スライスはセクター 0 から始まる必要がある
スライスにはディスクラベル用の十分な容量が含まれている必要がある
状態データベースの複製をマウントすることはできない
スライスは、スライス 2 を含むその他のデバイスとは重複しない
既存のパーティションテーブルがこれらの基準を満たしていない場合、または -L フラグが指定されている場合、Solaris ボリュームマネージャはディスクのパーティションを再設定します。各ドライブのごく一部が、Solaris ボリュームマネージャで使用するために、スライス 7 (または EFI ラベル付きのデバイス上のスライス 6) に予約されます。各ドライブの残りの容量は、スライス 0 に配置されます。パーティションを再設定することで、ディスク上の既存のデータはすべて失われます。
ディスクセットにドライブを追加したあとは、必要に応じてパーティションを再設定できますが、スライス 7 (または EFI ラベル付きのデバイス上のスライス 6) は決して変更されないという例外があります。
ディスクセットを作成し、ディスクセット内でメタデバイスを設定すると、メタデバイス名は、以下のような形式になります。
/dev/md/setname/{dsk,rdsk}/dnumber
setname はディスクセットの名前、number はメタデバイスの番号 (0 〜 127) です。
Solstice DiskSuite ソフトウェアからアップグレードしたディスクセットがある場合、これらのセット上にあるデフォルトの状態データベースの複製のサイズは、Solaris ボリュームマネージャの 8192 ブロックサイズではなく、1034 ブロックになります。また、Solstice DiskSuite の使用時に追加されたディスク上のスライス 7 は、それに応じて、Solaris ボリュームマネージャの使用時に追加されたディスク上のスライス 7 よりも小さくなります。
ディスクセットに追加したディスクに、受け入れ可能な (シリンダ 0 から始まり、状態データベースの複製用の十分な空き容量がある) スライス 7 がある場合、それらは再フォーマットされません。
ローカルのディスクセットにあるホットスペア集合は、Solaris ボリュームマネージャの標準命名規則に従っています。共有ディスクセットにあるホットスペア集合は、以下のような命名規則を使用します。
setname/hspnumber
ここで、setname はディスクセットの名前で、number はホットスペア集合の番号 (0〜999) です。
複数ノード環境でディスクセットを作成し、ディスクセットで作業を行うには、root がすべてのホスト上のグループ 14 のメンバーであるか、または /.rhosts ファイルにその他すべてのホスト名のエントリが含まれている必要があります。これは、SunCluseter 3.x 環境では必要ありません。
タグ付きデータが発生するのは、ディスクセットの複製の異なるバージョンが存在する場合です。このタグ付きデータは、セットの所有者のノード名、所有者のハードウェアシリアル番号、および使用可能な複製に書き出された時刻から構成されています。システム管理者はこの情報を使用すると、どの複製に正しいデータが含まれているかを判断できます。
ディスクセットが偶数のストレージ格納装置を使用して構成され、複製がそれらの格納装置で均等に分散されている場合、(半分のストレージ格納装置の電源障害などにより) 最大半分の複製が失われる可能性があります。電源障害が発生した格納装置をリブートしたあとで、複製の半分は Solaris ボリュームマネージャにより認識されません。セットの再取得が行われた場合、metaset コマンドは「stale databases」のエラーを返し、すべてのメタデバイスが読み取り専用状態になります。
認識されない複製の一部は削除する必要があります。また、複製を削除する操作により、削除されていない複製も更新されます。デュアルホストのディスクセット環境では、2 番目のノードはセットの取得時に、既存の複製ではなく削除された複製にアクセスする可能性があります。これにより、ディスクセットの取得時に誤った複製レコードを取得する可能性があります。エラーメッセージが表示され、ユーザーの操作が必要になります。
ディスクセットを照会するには -q オプションを使用し、タグを選択してディスクセットを取得するには -t、-u、および -y オプションを使用します。各オプションを参照してください。
Solaris ボリュームマネージャは、2 組の一連のドライブのみを共有する 2 つのホストから構成される、ローエンド HA ソリューションをサポートしています。この種類の構成のホストは、メディエータまたはメディエータホストと呼ばれ、特別なデーモン rpc.metamedd(1M) を実行します。メディエータホストには、ホストやドライブに障害が発生した場合もデータの可用性を確保するという追加的な責任があります。
メディエータ構成は、1 つのホストまたは一連のドライブに障害が発生しても、管理者の操作なしで稼働を続行できます。ホスト、および一連のドライブの両方に障害が発生した場合 (複数障害)、データの整合性は保証できません。この場合、データをアクセス可能にするには、管理者による操作が必要になります。詳細については mediator(7D) を参照してください。
-m オプションを使用してメディエータホストを追加または削除します。各オプションを参照してください。
サポートしているオプションは、次のとおりです。
指定したディスクセットにドライブまたはホストを追加します。ただし、別のメタデバイスやディスクセット内で使用中であったり、マウントされていたり、Swap として使用されているドライブは、ディスクセット内に追加することはできません。ディスクセットに追加されるドライブは、パーティションが再設定され、メタデバイス状態データベースの複製 (そのディスクセット用の複製) もドライブ上に置かれます。しかし、スライス 7 (または EFI ラベル付きのデバイス上のスライス 6) がシリンダ 0 で始まっていて、状態データベースの複製を持てるだけの容量がある場合、ディスクパーティションの再設定は行われません。また、ディスクセットの一部として指定されたすべてのホスト上にドライブが見つからない場合は、ドライブは受け入れられません。つまり、特定のセットにあるホストがネットワークの障害によって通信不可能であったり、または管理上の理由によりダウンしている場合には、ドライブを追加することができません。
指定したディスクセットに対して、メディエータホストの追加 (-a) または削除 (-d) を行います。mediator_host_list は、追加されるメディエータホストの nodename(4)、および (追加する場合は) メディエータホストの最大 2 つの別名です。各メディエータホストのノード名と別名は、コンマのみで区切られます。名前付きディスクセットには最大 2 つのメディエータホストを指定できます。メディエータホストを削除するには、-m に対する引数としてそのホストのノード名のみを指定します。
1 つの metaset コマンドの実行で 2 つのメディエータホストを追加または削除できます。「使用例」を参照してください。
ディスクセットの自動取得状態を指定します。あるセットに対して自動取得が有効になっている場合、そのディスクセットはブート時に自動的に取得され、そのディスクセット内のボリューム上にあるファイルシステムは、/etc/vfstab エントリを介してマウントできます。自動取得セットに対応付けることができるのは 1 つのホストのみであるため、自動取得セットに 2 つ目のホストを追加しようとしたり、複数のホストを持つディスクセットを自動取得として構成しようとしたりすると、エラーメッセージが表示され失敗します。特定のディスクセットの自動取得状態を無効にすると、そのディスクセットは通常の動作に戻ります。つまり、そのディスクセットは潜在的にホスト間で (同時ではなく) 共有され、/etc/vfstab を介してマウントすることはできません。
複製を、複製配置アルゴリズムに従って配付します。これはいつでも実行できます。複製が正しく配付されたときは、何も返しません。ユーザーが metadb コマンドを使用して手動で 複製を削除もしくは追加していた場合には、このコマンドを使用して複製配置アルゴリズムに従って複製の配付を確実に行うことができます。
Sun Cluster 3 環境で使用している場合、クラスタ フレームワークとのやり取りは行いません。実際にこの方法では、Cluster Configuration Repository は変更されません。これらのオプションは、破壊されたディスクセット構成を修正するためにのみ使用するべきです。このオプションは、複数所有者ディスクセットでは使用できません。
ディスクセットの所有権を取得しますが、ディスクセットが使用可能であることをクラスタ フレームワークには通知しません。
クラスタ フレームワークに通知することなく、ディスクセットの所有権を解放します。このオプションは、対応する -C take オプションを使用してディスクセットの所有権が取得されている場合にのみ使用するべきです。
ディスクセットが削除されたことをクラスタフレームワークに通知することなく、ディスクセットを削除します。
指定したディスクセットからドライブまたはホストを削除します。ただし、ディスクセット内で使用中のドライブは、削除できません。ディスクセット内のドライブをすべて削除しない限り、最後のホストを削除することはできません。ディスクセットの最後のホストを削除すると、ディスクセットが破壊されます。
その他のノードがセット内に存在する間にマスターノードを削除しようとすると、複数所有者ディスクセットではこのオプションは失敗します。
次の 3 とおりの動作のうちの 1 つを強制的に行います。 1) -t と共に使用された時はディスクセットの所有権を取得します、2) ディスクセットから最後のディスクドライブを削除します、3) ディスクセットから最後のホストを削除します。(最後のドライブやホストを削除する場合には -d オプションが必要です。)
ディスクセットの所有権を強制的に取得すると、別のホストによって所有されているかどうかに関わらず、ディスクセットを所有できます。ディスクセット内のすべてのディスクが占有され (予約され)、FailFast が使用可能になります。その結果、別のホストがそのディスクセットの所有権を持っていると、そのホストはパニック状態になります。ホストが取得を行うと、メタデバイス状態データベースが読み込まれ、ディスクセット内の共有メタデバイスにアクセスできるようになります。
このオプションを使用してディスクセットの最後のドライブを削除できます。これは、このドライブには最後の状態データベースの複製が暗黙的に含まれているためです。
また、ディスクセットからホストを削除する場合も、-f オプションを使用できます。引数としていくつかのホストをリストで指定すると、このオプションは 1 ホストでの管理用として使用できます。1 ホストでの管理は、ホストが機能不能として認識されている場合、タイムアウトやコマンドの失敗を回避できるため便利です。引数としてすべてのホストをリストで指定すると、ディスクセットが完全に削除されます。通常このオプションは、1 ホスト管理を行なったあとのクリーンアップのために、すべてのホストをリストで指定して使用します。
ディスクセットに追加するホスト、またはディスクセットから削除するホストの名前を 1 つまたは複数指定します。最初のホストを追加すると、ディスクセットが作成されます。ディスクセット内のすべてのドライブを削除しない限り、最後のホストを削除することはできません。指定したホスト上にディスクセット内のすべてのドライブが見つからないと、このコマンドは実行されません。ホスト名は、/etc/nodename にある名前と同じです。
複数所有者ディスクセットの所有者リストにホストを追加します。従来のディスクセットで使用される取得と解放という概念は、複数所有者セットには適用されませんが、これは複数の所有者が許可されているためです。
ホストがブートしオンライン状態になり、複数所有者ディスクセットを使用できるようになるためには、次の 3 つの構成レベルを満たす必要があります。
クラスタノードリストに含まれている必要があります。これは、クラスタまたはノードが 1 つである状況では自動的に行われます。
このマニュアルページのほかの箇所で説明されている -a -h オプションを使用して、複数所有者ディスクセットに追加する必要があります。
セットに追加する必要があります。最初にホストがセットに追加される場合、自動的に追加されます。
手動で再起動を行う時点で、管理者は次のコマンドを手動で発行する必要があります。
metaset -s multinodesetname -j |
これにより所有者リストにホストが追加されます。クラスタ再構成のあとで、ホストがクラスタに再び入った場合、ノードは自動的にセット内に追加されます。metaset -j コマンドにより、ホストの追加先であるすべての複数所有者セットにホストが結合されます。ノードが 1 つである場合、ノードをディスクセットに追加すると、必要な再同期がすべて始まります。
ディスクをディスクセットに追加する場合、標準の Solaris ボリュームマネージャのアルゴリズムを使用して強制的にディスクのパーティションを再設定します。「機能説明」を参照してください。
メタデバイス状態データベースの複製のサイズ (ブロック単位) を設定します。length を設定できるのは、新しいドライブを追加するときだけです。既存のドライブでは変更できません。デフォルト (および最大) のサイズは 8192 ブロックで、これが大部分の構成で適切です。128 ブロック未満の複製のサイズはお勧めしません。
作成または変更されるディスクセットを、複数の同時所有者をサポートする複数所有者ディスクセットに指定します。
このオプションは、複数所有者ディスクセットを作成する際に必要です。複数所有者ディスクセットでのその他すべての操作に対するこのオプションの使用は任意で、何の影響もありません。既存のディスクセットを複数所有者セットに変換することはできません。
ローカルホストまたは -h オプションで指定されたホストがディスクセットを所有している場合に、終了ステータス 0 を返します。
metaset コマンドが実行されているノードから、名前付きディスクセットを削除します。ディスクセットは、このコマンドを実行するノードによって所有されてはいけません。ノードが実際にディスクセットを所有している場合、コマンドは失敗します。
ディスクセットを削除する必要があり、セットの所有権を取得できない場合に、-P オプションを使用します。
このオプションは、複数所有者ディスクセットでは使用できません。
ディスクセットの所有権の取得時に検出可能な「タグ付きデータ」に関するタグの列挙リストを表示します。
このオプションは、複数所有者ディスクセットでは使用できません。
ディスクセットの所有権を解放します。ディスクセット内のすべてのディスクが解放されます。ディスクセット内に設定されたメタデバイスにアクセスできなくなります。
このオプションは、複数所有者ディスクセットでは使用できません。
metaset を実行するディスクセットの名前を指定します。setname が指定されていない場合は、すべてのディスクセットが返されます。
ディスクセットの所有権を安全に取得します。ディスクセットが別のホストによって所有されている場合は、ここで指定したホストはディスクセットを所有することができません。ディスクセットが別のホストによって所有されていない場合は、ディスクセット内のすべてのディスクが metaset を実行したホストによって所有されます。メタデバイス状態データベースが読み込まれ、ディスクセット内に設定された共有メタデバイスにアクセスできるようになります。-t オプションは、無効なデータベースを持つディスクセットを取得します。データベースが無効であると、metaset はコード 66 で終了し、メッセージを表示します。その時点で可能な操作は、複製の追加と削除だけです。複製の追加や削除が完了すると、ディスクセットは解放され、再度ディスクセットへ取り込まれてデータを完全にアクセスできるようになります。
このオプションは、複数所有者ディスクセットでは使用できません。
タグが選択されていれば、続いて -u tagnumber を使用した取得を実行して、指定されたタグ番号と関連付けられたデータを選択できます。
複数所有者ディスクセットの所有者リストからホストを削除します。従来のディスクセットで使用される取得と解放という概念は、複数所有者セットには適用されませんが、これは複数の所有者が許可されているためです。
セットを解放する代わりに、ホストは次のコマンドを発行できます。
metaset -s multinodesetname -w |
これにより所有者リストから削除されます。ホストはリブート時に自動的に離脱します。ただし、ホストがセットを使用できない状態にするべきだが、あとでセットに戻す可能性がある場合は、ホストを手動で削除することもできます。リブートにより離脱したホストは、再構成サイクルが実施されるまでは、セット内のほかのホストからは存在しているように見える可能性があります。
metaset -w は、ホストがメンバーであるすべての複数所有者セットの所有権からホストを削除します。その他のノードがディスクセット所有者リスト内に存在する間にマスターノードを削除しようとすると、このオプションは失敗します。このオプションは、ノード上で実行されているすべての再同期を取り消します。クラスタメンバーシップリストからノードを削除するクラスタ再構成プロセスは、効果的に所有権リストからホストを削除します。
継続的な取得を実行します。take オプションが「タグ付きデータ」を検出すると、取得処理はコード 2 とともに終了します。続いて -q オプションを付けて metaset コマンドを実行すると、タグの列挙リストを参照できます。
この例では、ディスクセットを定義します。
# metaset -s relo-red -a -h red blue |
この例で、ディスクセットの名前は relo-red です。セットに追加された 1 番目と 2 番目のホストの名前は、red と blue です。ホスト名は /etc/nodename に書かれています。1 番目のホストを追加すると、複数所有者ディスクセットが生成されます。ディスクセットはホストが 1 つだけでも作成でき、あとでホストを追加すること ができます。セットに含まれるすべてのドライブが削除されるまで、最後のホストは削除できません。
この例では、ディスクセットにドライブを追加します。
# metaset -s relo-red -a c2t0d0 c2t1d0 c2t2d0 c2t3d0 c2t4d0 c2t5d0 |
この例で、以前生成したディスクセットの名前は relo-red です。ドライブの名前は、c2t0d0、c2t1d0、c2t2d0、c2t3d0、c2t4d0、および c2t5d0 です。ドライブ名の末尾にスライスの識別子 ("sx") は付きません。
以下のコマンドは、指定したディスクセットに 2 つのメディエータホストを追加します。
# metaset -s mydiskset -a -m myhost1,alias1 myhost2,alias2 |
以下のコマンドは、ノードからディスクセット relo-red を削除します。
# metaset -s relo-red -P |
以下のコマンドは、タグ付きデータのリストのディスクセット relo-red を照会します。
# metaset -s relo-red -q |
このコマンドにより以下の結果が得られます。
The following tag(s) were found: 1 - vha-1000c - Fri Sep 20 17:20:08 2002 2 - vha-1000c - Mon Sep 23 11:01:27 2002 |
以下のコマンドはタグを選択し、ディスクセット relo-red を取得します。
# metaset -s relo-red -t -u 2 |
以下のコマンドは、複数所有者ディスクセットを定義します。
# metaset -s blue -M -a -h hahost1 hahost2 |
この例で、ディスクセットの名前は blue です。セットに追加される 1 番目と 2 番目のホストの名前は、それぞれ hahost1 と hahost2 です。ホスト名は /etc/nodename に書かれています。1 番目のホストを追加すると、複数所有者ディスクセットが生成されます。ディスクセットはホストが 1 つだけでも生成でき、あとでホストを追加できます。セットに含まれるすべてのドライブが削除されるまで、最後のホストは削除できません。
属性についての詳細は、マニュアルページの attributes(5) を参照してください。
属性タイプ |
属性値 |
---|---|
使用条件 |
SUNWmdu |
mdmonitord(1M), metaclear(1M), metadb(1M), metadetach(1M), metahs(1M), metainit(1m), metaoffline(1M), metaonline(1M), metaparam(1M), metarecover(1M), metarename(1M), metareplace(1M), metaroot(1M), metassist(1M), metastat(1M), metasync(1M), metattach(1M), md.tab(4), md.cf(4), mddb.cf(4), md.tab(4), attributes(5), md(7D)
ディスクセット管理 (ホストおよびドライブの追加と削除を含む) では、ネットワークからディスクセット内のすべてのホストにアクセスできる必要があります。
名前 | 形式 | 機能説明 | オプション | 使用例 | ファイル | 終了ステータス | 属性 | 関連項目 | 注意事項