この章では,スタンドアロン・システムまたは TruCluster Server クラスタに LSM をインストールし,初期化する方法について説明します。
さらに,LSM を使用して,これらの環境のルート・ファイル・システムとドメインに冗長性を持たせる方法について説明します。
LSM を使用しているシステムを Version 4.0 からアップグレードする方法は,7.1 節を参照してください。
3.1 LSM ソフトウェアのインストール
LSM ソフトウェアは,3 つのオプションのサブセットからなっています。 これらのサブセットは,Tru64 UNIX プロダクト・キット用のベース・オペレーティング・システム・ソフトウェアが収められた CD-ROM に入っています。 LSM サブセットは,必須のオペレーティング・システム・ソフトウェアをインストールする際でも,インストールの後でもインストールできます。
オペレーティング・システムのフル・インストレーション中には,システムのルート・ファイル・システムと
/usr
,/var
,および
swap
パーティションも,必要に応じて,直接 LSM ボリュームにインストールできます。
このオプションを選択した場合は,LSM サブセットは自動的にインストールされます。
システムをクラスタとして構成する計画がある場合は,このオプションを使用しないでください。 スタンドアロン・システムのルート・ボリュームは,クラスタでは使用できないからです。
アップグレード・インストールでは,現在システムにインストールされているサブセットがすべてアップグレードされます。 このため,LSM サブセットがすでに現在のシステムにインストールされている場合には,アップグレードのときに指定する必要はありません。
注意
LSM ボリュームを使用しているファイル・システムがあるシステムをアップグレードする場合は,まずシングルユーザ・モードでブートして,LSM とそのボリュームを起動し,その後,Tru64 UNIX のアップグレード・インストールに進んでください。
LSM を,オペレーティング・システムのインストール,またはアップグレードの一環としてインストールするのではなく,現在実行中のシステムにインストールするためには,Tru64 UNIXの『インストレーション・ガイド』を参照してください。
LSM を使用する新しいクラスタを構成するには,以下の手順を実行します。
ベース・オペレーティング・システム (Tru64 UNIX) と LSM サブセットを 1 つのシステムにインストールします。 ただし,インストール GUI を使用してベース・ファイル・システムを LSM ボリュームにインストールしないでください。
クラスタを作成します (clu_create
コマンド)。
LSM を初期化します (volsetup
コマンド)。
他のクラスタ・メンバを追加します (clu_add_member
コマンド)。
必要に応じて,cluster_root
,cluster_usr
,および
cluster_var
ドメインも含め,AdvFS ドメインを LSM ボリュームに移行します (volmigrate
コマンド)。
必要に応じて,クラスタ・メンバのスワップ・デバイスを LSM ボリュームにカプセル化します (volencap
コマンド)。
表 3-1
に LSM サブセットのリストを示します。
サブセット名の
nnn
は,オペレーティング・システムのバージョン番号です。
表 3-1: LSM ソフトウェア・サブセット
サブセット | 機能 |
OSFLSMBINnnn |
LSM ドライバを備えたカーネルを構築するカーネル・モジュールを提供します。 このソフトウェア・サブセットは,ユニプロセッサ,SMP,およびリアルタイムの構成をサポートしています。 このサブセットは,標準カーネル・モジュールを必要とします。 |
OSFLSMBASEnnn |
LSM の管理に必要な LSM 管理コマンドおよびツールが含まれています。 Tru64 UNIX のフル・インストレーション中に LSM をインストールする場合,このサブセットは必須です。 このサブセットは,LSM カーネル構築モジュールを必要とします。 |
OSFLSMX11nnn |
LSM の Motif ベースのグラフィカル・ユーザ・インタフェース (GUI) 管理ツールおよび関連ユーティリティが含まれています。 このサブセットは,基本 X 環境を必要とします。 |
ベース・オペレーティング・システムに付属している LSM ライセンスでは,連結プレックスを 1 つ使用する LSM ボリューム (シンプル・ボリューム) を作成できます。 その他すべての LSM 機能 (ストライプ,ミラー,および RAID 5 プレックスを使用する LSM ボリュームの作成や,LSM GUI の使用など) には,別途 LSM ライセンスが必要です。
この LSM ライセンスは,LSM-OA
というプロダクト認証キー (PAK) の形式で渡されます。
LSM ライセンスをインストールするには,Tru64 UNIX License Management Facility (LMF) に
LSM-OA
PAK をロードします。
LSM ライセンスを注文する必要がある場合は,サービス担当者にご連絡ください。
License Management Facility
についての詳細は,
lmf
(8)3.3 LSM の初期化
オペレーティング・システムのフル・インストレーションを実行し,ルート・ファイル・システムと
/usr
,/var
,および
swap
パーティションを直接 LSM ボリュームにインストールするオプションを指定すると,LSM は自動的に初期化されます。
または,以前に LSM を実行していたシステムやクラスタでアップグレード・インストレーションを実行する場合にも,LSM は自動的に初期化されます。
これ以外の場合は,LSM は手動で初期化してください。
LSM を初期化すると,次の処理が行われます。
rootdg
ディスク・グループが作成されます。
既存の LSM 構成を検出した場合,再確立します。
システムまたはクラスタの再起動時に LSM を自動的に起動するためのエントリが
/etc/inittab
ファイルに追加されます。
ホスト ID
が格納された
/etc/vol/volboot
ファイルが作成されます。
LSM のファイルおよびディレクトリが作成されます (これらのファイルおよびディレクトリの説明は,3.6 節を参照してください)。
vold
と
voliod
デーモンが起動されます。
LSM を初期化するためには,rootdg
の作成に,最低 2 つの未使用ディスクまたはパーティションが必要です。
これにより,LSM 構成データベースのコピーが複数用意されます。
rootdg
ディスク・グループ用のディスクまたはパーティションの選択については,第 2 章を参照してください。
クラスタの場合,クォーラム・ディスクやメンバのプライベート・ブート・ディスクの未使用のパーティションは使用しないでください。
スタンドアロン・システムとクラスタで LSM を初期化するには,以下の手順を実行します。
クラスタのメンバで,LSM サブセットがインストールされていることを確認します。
# setld -i | grep LSM
次のような情報 (nnn はオペレーティング・システムのリビジョン) が表示されます。
OSFLSMBASEnnn installed Logical Storage Manager (System Administration) OSFLSMBINnnn installed Logical Storage Manager Kernel Modules (Kernel Build Environment) OSFLSMX11nnn installed Logical Storage Manager GUI (System Administration)
LSM サブセットの状態が
installed
と表示されない場合,setld
コマンドを使用して LSM サブセットをインストールします。
ソフトウェア・サブセットのインストールについての詳細は,『インストレーション・ガイド』を参照してください。
LSM ドライバがカーネルに構成されているか確認します。 次のコマンドを実行すると LSM ドライバ情報が表示されます。
# devswmgr -getnum driver=LSM Device switch reservation list (*=entry in use) driver name instance major ------------------------------- -------- ----- LSM 4 43 LSM 3 42 LSM 2 41* LSM 1 40*
LSM ドライバ情報が表示されない場合は,doconfig
コマンドを使用してカーネルを再構築しなければなりません。
カーネルの再構築についての詳細は,『インストレーション・ガイド』を参照してください。
少なくとも 2 つのディスクまたはパーティションを指定して,LSM を初期化します。
# volsetup {disk|partition} {disk|partition...}
たとえば,ディスク
dsk4
および
dsk5
を使用して LSM を初期化するには,次のように入力します。
# volsetup dsk4 dsk5
ディスクまたはパーティション名を省略すると,volsetup
スクリプトはその入力を求めます。
volsetup
コマンドが初期化失敗のエラー・メッセージを表示した場合は,ディスクの再初期化が必要になることがあります。
ディスクの再初期化についての詳細は,Disk Configuration GUI のオンライン・ヘルプを参照してください。
LSM を Tru64 UNIX システムで初期化すると,LSM 構成は,クラスタの作成時 (clu_create
コマンドによる) とメンバの追加時 (clu_add_member
コマンドによる) に,クラスタに伝搬されます。
クラスタの場合,残りのメンバすべてで以下のコマンドを実行して,クラスタ全体で LSM を同期化します (ステップ 3 を実行したメンバは除きます)。
# volsetup -s
続けて
clu_add_member
コマンドでクラスタに新しいメンバを追加する場合は,新しいメンバ上の LSM は,自動的に同期化されます。
新しいメンバでは,volsetup
-s
コマンドは実行しないでください。
通常は,LSM が初期化されたことを確認する必要はありません。 初期化が失敗すると,システムは問題を示すエラー・メッセージを表示します。
LSM が初期化されたことを確認するには,以下の手順の 1 つ以上を実行します。
rootdg
ディスク・グループが存在することを確認するには,次のコマンドを入力します。
# volprint
Disk group: rootdg TY NAME ASSOC KSTATE LENGTH PLOFFS STATE TUTIL0 PUTIL0 dg rootdg rootdg - - - - - - dm dsk4 dsk4 - 1854536 - - - - dm dsk5 dsk5 - 1854536 - - - -
この例では,dsk4
と
dsk5
が
rootdg
ディスク・グループに属しています。
/etc/inittab
ファイルが変更されて LSM エントリが含まれていることを確認するには,次のコマンドを入力します。
# grep LSM /etc/inittab lsmr:s:sysinit:/sbin/lsmbstartup -b /dev/console 2>&1 ##LSM lsm:23:wait:/sbin/lsmbstartup -n /dev/console 2>&1 ##LSM vol:23:wait:/sbin/vol-reconfig -n /dev/console 2>&1 ##LSM
/etc/vol/volboot
ファイルが作成されたことを確認するには,次のコマンドを入力します。
# /sbin/voldctl list Volboot file version: 3/1 seqno: 0.4 hostid: hostname entries:
vold
デーモンが有効になっていることを確認するには,次のコマンドを入力します。
# voldctl mode mode: enabled
複数の
voliod
デーモンが実行されていることを確認するには,次のコマンドを入力します。
# voliod 2 volume I/O daemons are running
特に指定しなければ,システム内の各 CPU に対してデーモンを 1 つ,または最低でも 2 つのデーモンを LSM は初期化します。
3.4 クリティカル・ファイル・システムとスワップ領域での LSM の使用
LSM を初期化した後,以下の手順を実行できます。
スタンドアロン・システムのルート・ファイル・システムとプライマリ・スワップ領域のカプセル化 (3.4.1 項)
クラスタ単位のルート,/usr
,および
/var
ファイル・システム・ドメインの LSM ボリュームへの移行 (3.4.2 項)
クラスタ・メンバのスワップ・デバイスの LSM ボリュームへのカプセル化 (3.4.3 項)
ディスク・フェイルオーバのための LSM のホット・スペアリング機能の有効化 (3.5 節),および各ディスク・グループへのホット・スペア・ディスクの構成 (3.5.1 項)
3.4.1 代替ブート・ディスクの作成 (スタンドアロン・システムの場合)
LSM を使用して,スタンドアロン・システムの代替ブート・ディスクを作成できます。 これは,ブート・ディスク・パーティションを LSM ボリュームにカプセル化し,これらのボリュームをミラー化することによって行います。 これにより,ブート・ディスク・パーティションのデータが別のディスクへコピーされます。 これにより完全な冗長性と,ブート・ディスクに障害が発生した場合の復旧機能が提供されます。 たとえば,プライマリ・ブート・ディスクに障害が発生した場合は,システムは別のディスク上にある生き残ったミラーを使用して動作を続けます。 また,生き残ったミラーを使用してシステムをリブートすることもできます。
LSM で代替ブート・ディスクを作成するには,次のようにします。
LSM カプセル化手順を使用して,LSM ボリュームとして使用するように,ルート・ファイル・システム・パーティションとプライマリ・スワップ領域を構成します。
ボリュームにミラー・プレックスを追加して,ブート・ディスク・パーティション内のデータのコピーを作成します。
注意
LSM を使用する環境の復旧に役立てるため,ブート可能テープ・ユーティリティを使用できます。 このユーティリティを使用すると,磁気テープ上にブート可能スタンドアロン・システム・カーネルを構築できます。 ブート可能テープはローカルの構成を保持し,復旧中に使用する LSM コマンドの基本セットを提供します。 SysMan Menu の
boot_tape
オプションについては,『システム管理ガイド』またはオンライン・ヘルプ,およびのリファレンス・ページを参照してください。 btcreate
(8)
システム・パーティションとプライマリ・スワップ領域をカプセル化する場合,次の制約事項が適用されます。
システムは TruCluster クラスタの一部であってはなりません。
クラスタ単位のルート,/usr
,および
/var
ファイル・システム・ドメイン用の LSM ボリュームを作成するには,3.4.2 項を参照してください。
root ファイル・システムとプライマリ・スワップ領域パーティションは,同時にカプセル化しなければなりません。 ただし,同じディスク上に存在しなくても構いません。
LSM ボリュームは,rootdg
ディスク・グループに作成され,次の名前になります。
rootvol
-- root ファイル・システム用に作成されたボリュームに付けられます。
この名前を変更したり,rootvol ボリュームを
rootdg
ディスク・グループ外に移動したり,割り当てられている副デバイス番号 0 を変更したりしないでください。
swapvol
-- スワップ領域パーティション用に作成されたボリュームに付けられます。
この名前を変更したり,swapvol
ボリュームを
rootdg
ディスク・グループ外に移動したり,割り当てられている副デバイス番号 1 を変更したりしないでください。
その他のパーティションには,オリジナルのパーティション名をベースとした LSM ボリューム名 (たとえば,vol-dsk0g
) が付けられます。
ディスクには,以下の要件があります。
オリジナル・ブート・ディスク
--
ブート・ディスクのパーティション・テーブルには (異なっている場合は,プライマリ・スワップ・ディスクのパーティション・テーブルにも),LSM プライベート・リージョン用の未使用パーティション (a
または
c
パーティション以外) が少なくとも 1 つなければなりません。
未使用のパーティションには,スペースが確保されていないくても構いません。 必要であれば,LSM はスワップ領域から必要な領域 (省略時のサイズは,4096 ブロック) を切り出し,ディスク・パーティションのラベルを変更します。
LSM が使用できる未使用のパーティション上にスペースがない (または十分な大きさがない) 場合,カプセル化は失敗します。
ミラー・ディスク
プライマリ・スワップ領域がブート・ディスク上にある場合,ブート・パーティションとスワップ領域ボリュームのミラーを作成するための別のディスクが必要です。
このディスクは LSM 制御下に置くことはできず,そのディスク・ラベルはすべてのパーティションが
unused
とマークされている必要があります。
このディスクは,プライマリ・ブート・ディスクのルート・ファイル・システムとスワップ・パーティションの全体 (ミラー化されたパーティション) の大きさに,プライベート・リージョンのサイズ (省略時のサイズは,4096 ブロック) を加えた大きさがある必要があります。
プライマリ・スワップ領域が別のディスクにある場合は,ブート・パーティションとスワップ領域ボリュームのミラーを作成するために別のディスクが 2 つ必要です。
これらのディスクは LSM 制御下に置くことはできず,ディスク・ラベル内のすべてのパーティションは
unused
とマークされている必要があります。
詳細は,
disklabel
(8)
ブート・パーティション・ボリュームのミラー用のディスクは,ルート・ファイル・システム・パーティションと,プライベート・リージョンのサイズ (省略時のサイズは,4096 ブロック) を加えた大きさがある必要があります。
スワップ・ボリュームのミラー用のディスクは,スワップ・パーティションと,プライベート・リージョンのサイズ (省略時のサイズは,4096 ブロック) を加えた大きさがある必要があります。
3.4.1.2 システム・パーティションのカプセル化 (システム・ボリュームの作成)
システム・パーティションをカプセル化すると,各パーティションは連結プレックスが 1 個ある LSM ボリュームに変換されます。 システム・パーティションのカプセル化手順は,UNIX ファイル・システム (UFS) と AdvFS (Advanced File System) のどちらを使用していても同じです。
注意
カプセル化手順を行ったときには,システムの再起動が必要です。
カプセル化手順では,次のファイルが変更されます。
AdvFS を使用している場合,/etc/fdmns/*
ディレクトリ内のルート・ディスクに関連付けられたドメインのリンクが,ディスク・パーティションではなく LSM ボリュームを使用するように変更されます。
UFS を使用している場合,/etc/fstab
ファイルが,ディスク・パーティションではなく LSM ボリュームを使用するように変更されます。
スワップ領域については,/etc/sysconfigtab
ファイル内の
swapdevice
エントリが,LSM の
swapvol
ボリュームを使用するように変更され,lsm_rootdev_is_volume
エントリに 1 が設定されます。
さらに,LSM はプライベート・リージョンを作成し,その中に構成データベースのコピーを格納します。
システム・パーティションが異なるディスク上に存在する場合 (たとえば,ブート・パーティションが
dsk0
上にあり,スワップ・パーティションが
dsk1
上にある場合),LSM は各ディスク上にプライベート・リージョンを作成します。
通常は,ディスクやパーティションをカプセル化すると,LSM はカプセル化対象の領域に LSM の
nopriv
ディスクのみを作成します。
ただし,LSM 構成の残りが破損または紛失した場合でもシステムがブートできる必要があることから,LSM はこれらの特別なプライベート・リージョンを作成します。
システム・パーティションをカプセル化するには,次の手順に従います。
root
としてログインします。
ブート・ディスクを探します。
# consvar -l | grep boot boot_dev = dsk0 bootdef_dev = dsk0 booted_dev = dsk0 boot_file = booted_file = boot_osflags = A booted_osflags = A boot_reset = OFF
プライマリ・スワップ・ディスクを探します。
# swapon -s Swap partition /dev/disk/dsk0b (default swap):
.
.
.
ブート・ディスク上に
a
または
c
以外の少なくとも 1 つの未使用パーティションがあることを確認します。
# disklabel dsk0 | grep -p '8 part'
8 partitions: # size offset fstype [fsize bsize cpg] # NOTE: values not exact a: 262144 0 AdvFS # (Cyl. 0 - 115*) b: 262144 262144 swap # (Cyl. 115*- 231*) c: 8380080 0 unused 0 0 # (Cyl. 0 - 3707) d: 4096 8375984 unused 0 0 # (Cyl. 3706*- 3707) e: 2618597 3142885 unused 0 0 # (Cyl. 1390*- 2549*) f: 2614502 5761482 unused 0 0 # (Cyl. 2549*- 3706*) g: 1433600 524288 AdvFS # (Cyl. 231*- 866*) h: 6418096 1957888 unused 0 0 # (Cyl. 866*- 3706*)
スワップ・パーティションが別のディスクにある場合,スワップ・ディスク名を指定して,ステップ 4 を繰り返します。
次のように,ブート・ディスクとスワップ・ディスク (ブート・ディスクと異なる場合) を指定して,これらをカプセル化します。
# volencap dsk0 dsk4 Setting up encapsulation for dsk0. - Creating simple disk dsk0d for config area (privlen=4096). - Creating nopriv disk dsk0a for rootvol. - Creating nopriv disk dsk0b. - Creating nopriv disk dsk0g. Setting up encapsulation for dsk4. - Creating simple disk dsk4h for config area (privlen=4096). - Creating nopriv disk dsk4b for swapvol. The following disks are queued up for encapsulation or use by LSM: dsk0d dsk0a dsk0b dsk0g dsk4h dsk4b You must now run /sbin/volreconfig to perform actual encapsulations.
必要に応じて,ユーザに対して,システムがまもなくシャットダウンされるという警告を送信します。
システムからすべてのユーザがログアウトしたら,ステップ 7 に進みます。
実際のカプセル化を実行します。
システムのシャットダウンを求められたら,now
と入力します。
# volreconfig The system will need to be rebooted in order to continue with LSM volume encapsulation of: dsk0d dsk0a dsk0b dsk0g dsk4h dsk4b Would you like to either quit and defer encapsulation until later or commence system shutdown now? Enter either 'quit' or time to be used with the shutdown(8) command (e.g., quit, now, 1, 5): [quit] now
システムはシャットダウンしてカプセル化を実行し,自動的に再起動します。
Encapsulating dsk0d. Encapsulating dsk0a. Encapsulating dsk0b. Encapsulating dsk0g. Encapsulating dsk4h. Encapsulating dsk4b. Shutdown at 14:36 (in 0 minutes) [pid 11708] *** FINAL System shutdown message from root@hostname *** System going down IMMEDIATELY ... Place selected disk partitions under LSM control. System shutdown time has arrived
ブート・ディスク・パーティションとスワップ領域を LSM ボリュームにカプセル化した後,冗長性を確保するためにボリュームをミラー化してください。 この処理には数分かかりますが,その間もルート・ファイル・システムとスワップ領域は使用可能です。
すべてのシステム・ボリュームを,同時にミラー化してください。
以下の手順で
-a
オプションを指定すると,この操作が自動的に行われます。
ルート・ファイル・システムとスワップ領域のボリュームだけをミラー化し,ブート・ディスク上のその他のボリューム (/usr
および
/var
ファイル・システムなどのボリューム) をミラー化しない場合は,-a
オプションは指定しません。
スワップ領域がブート・ディスクにある場合は,次のコマンドを実行します。
# volrootmir -a target_disk
たとえば,次のように入力します。
# volrootmir -a dsk4
これにより,ブート・ディスク上のすべてのボリュームのミラーが
dsk4
上に作成されます。
スワップ領域が別のディスクにある場合は,次のコマンドを実行します。
# volrootmir -a swap=swap_target_disk boot_target_disk
たとえば,次のように入力します。
# volrootmir -a swap=dsk5 dsk4
これにより,ブート・ディスク上のすべてのボリュームのミラーが
dsk4
上に作成され,スワップ・ボリュームのミラーが
dsk5
上に作成されます。
注意
この手順では,ルート・ボリュームやスワップ・ボリュームにログ・プレックス (DRL) は追加されません。 ロギングはルート・ボリュームではサポートされません。 また,スワップ・ボリュームではログを取る必要がありません。 ログ・プレックスを追加すると,
rootvol
とswapvol
の性能が低下しますし,システム復旧ではログが使用されないため何の利点もありません。
3.4.1.3 項の手順に従って,エラー・メッセージが表示されなかった場合は,操作は成功したと考えられますが,次のコマンドを実行すると,さらに操作の結果を表示できます。
ボリュームの概略情報を表示するには,次のコマンドを入力します。
# volprint -pt
PL NAME VOLUME KSTATE STATE LENGTH LAYOUT NCOL/WID MODE pl rootvol-01 rootvol ENABLED ACTIVE 262144 CONCAT - RW pl rootvol-02 rootvol ENABLED ACTIVE 262144 CONCAT - RW pl swapvol-01 swapvol ENABLED ACTIVE 333824 CONCAT - RW pl swapvol-02 swapvol ENABLED ACTIVE 333824 CONCAT - RW pl vol-dsk0g-01 vol-dsk0g ENABLED ACTIVE 1450796 CONCAT - RW pl vol-dsk0g-02 vol-dsk0g ENABLED ACTIVE 1450796 CONCAT - RW
この例では,3 つのボリューム
rootvol
,swapvol
,および
vol-dsk0g
に,/usr
および
/var
ファイル・システムが収められています。
各ボリュームには プレックスが 2 つ (PL NAME
のラベルのついた欄に表示) あり,ボリュームが正しくミラー化されたことを示しています。
システムが両方のブート・デバイスを認識していることを確認します。
# consvar -l auto_action = HALT boot_dev = dsk0,dsk4 bootdef_dev = dsk0,dsk4 booted_dev = dsk0
.
.
.
AdvFS を使用している場合は,以下のいずれかの手順を実行して,ドメインがオリジナルのパーティションの代わりに LSM ボリュームを指していることを確認します。
簡単なドメイン情報を表示するには,次のコマンドを入力します。
# ls -R /etc/fdmns/*
次の情報が表示されます。
ここには,オリジナルのディスク・パーティションの代わりにボリューム名 (rootdg.volume
) が表示されます。
/etc/fdmns/root_domain: rootdg.rootvol /etc/fdmns/usr_domain: rootdg.vol-dsk0g
完全なドメイン情報を表示するには,次の手順を実行します。
fdmns
ディレクトリに移ります。
# cd /etc/fdmns
すべての AdvFS ドメインの属性を表示します。
# showfdmn *
次の情報が表示されます。 ここには,各 AdvFS ドメインのボリューム名が表示されます。
Id Date Created LogPgs Version Domain Name 3a5e0785.000b567c Thu Jan 11 14:20:37 2001 512 4 root_domain Vol 512-Blks Free % Used Cmode Rblks Wblks Vol Name 1L 524288 339936 35% on 256 256 /dev/vol/rootdg/rootvol Id Date Created LogPgs Version Domain Name 3a5e078e.000880dd Thu Jan 11 14:20:46 2001 512 4 usr_domain Vol 512-Blks Free % Used Cmode Rblks Wblks Vol Name 1L 2879312 1703968 41% on 256 256 /dev/vol/rootdg/vol-dsk0g Id Date Created LogPgs Version Domain Name 3a5e0790.0005b501 Thu Jan 11 14:20:48 2001 512 4 var_domain Vol 512-Blks Free % Used Cmode Rblks Wblks Vol Name 1L 2879312 2842160 1% on 256 256 /dev/vol/rootdg/vol-dsk0h
UFS を使用している場合は,次のように入力します。
# mount /dev/vol/rootdg/rootvol on / type ufs (rw) /dev/vol/rootdg/vol-dsk0g on /usr type ufs (rw) /proc on /proc type procfs (rw)
スワップ・ボリューム情報を表示するには,次のように入力します。
# swapon -s
次の情報が表示されます。
ここには,オリジナルのディスク・パーティションの代わりにボリューム名 (/dev/vol/rootdg/volume_name
) が表示されます。
Swap partition /dev/vol/rootdg/swapvol (default swap): Allocated space: 25600 pages (200MB) In-use space: 426 pages ( 1%) Free space: 25174 pages ( 98%) Total swap allocation: Allocated space: 25600 pages (200.00MB) Reserved space: 9015 pages ( 35%) In-use space: 426 pages ( 1%) Available space: 16585 pages ( 64%)
3.4.2 クラスタ・ドメインでの LSM ボリュームの使用
TruCluster Server環境では,クラスタ単位のルート,/usr
,および
/var
ファイル・システム・ドメイン (cluster_root
,cluster_usr
,および
cluster_var
) と,クラスタ・メンバのスワップ・デバイスなどの AdvFS ドメインに,LSM ボリュームを使用することができます。
クォーラム・ディスクやメンバのプライベート・ブート・ディスク上のパーティションには,LSM ボリュームは使用できません。
注意
cluster_root
ドメインに LSM ボリュームを使用しても,障害後のクラスタ復旧には役立たないため,耐災害性クラスタは作成できません。 クラスタはcluster_root
ファイル・システムからはブートできません。LSM はデータの可用性を高めますが,クラスタ全体の高可用性や,クラスタ障害後の復旧時間の短縮には対応していません。 LSM は耐災害性のソリューションではありません。
LSM は,クラスタの AdvFS ドメインとスワップ・デバイスを LSM の制御下に置くために,次の方法を提供しています。
volmigrate
コマンドは,指定したディスクに LSM ボリュームを作成し,AdvFS ドメインをそのボリュームに移動し,オリジナルのディスクをドメインから削除し,ドメインを未使用状態にします。
移行の利点は,移行がドメインのファイルセットをマウントしたままで行われ,リブートが不要ということです。 欠点は,移行処理のために,ドメイン・データを LSM ボリュームにコピーする際に,一時的に追加のディスク・スペースが必要になることです。
注意
volmigrate
コマンドは AdvFS のaddvol
コマンドを使用します。addvol
コマンドを使用するには,AdvFS Utilities のライセンス PAK が必要です。
volencap
コマンドは,AdvFS ドメインまたはスワップ領域が現在使用しているのと同じディスクまたはディスク・パーティションに,LSM ボリュームを作成します。
カプセル化の利点は,余分なディスク・スペースが不要だということです。 欠点は,ドメインがマウントされていてアンマウントできない場合に,カプセル化を完了するために,クラスタまたはクラスタ・メンバのシャットダウンとリブートが必要になることです。
表 3-2
に,これらのコマンドをいつ使用できるかを示します。
表 3-2: クラスタの冗長性を提供する LSM コマンド
ドメインまたはパーティション | volmigrate コマンド | volencap コマンド |
cluster_root ,
cluster_usr ,cluster_var |
使用可能 (3.4.2.1 項) | 使用不可 |
その他の AdvFS ドメイン (アプリケーション・データ) | 使用可能 (4.6.2 項) | |
メンバのスワップ・パーティション | 使用不可 | 使用可能 (3.4.3 項) |
メンバのプライベート・ブート・パーティション (rootmemberID_domain#root ) |
使用不可 | 使用不可 |
3.4.2.1 AdvFS ドメインの LSM ボリュームへの移行
クラスタでは,個々のメンバのルート・ドメイン (rootmemberID_domain#root
) を除くすべての AdvFS ドメインを,volmigrate
コマンドを使用して,LSM ボリュームに移行できます。
たとえば,クラスタ単位のルート,/usr
,および
/var
ファイル・システム・ドメインを LSM ボリュームに移行して,ボリュームを高可用性のためにミラー化できます。
volmigrate
コマンドは,AdvFS ドメイン名を使用して動作します。
ここで説明する手順では,クラスタ単位のファイル・システムを,AdvFS の省略時のドメイン名
cluster_root
,cluster_usr
,および
cluster_var
で参照します。
volmigrate
コマンドは,シェル・スクリプトです。
以下の作業のために別のコマンドを呼び出します。
指定した LSM ディスク上に,AdvFS ドメイン用の LSM ボリュームを作成する。
LSM ボリュームに,ストライピングやミラーリングなどの属性を指定できます。
AdvFS の
addvol
コマンドを使用して,移行するドメインに LSM ボリュームを追加する (AdvFS Utilities のライセンスが必要)。
オリジナルのディスク・パーティションから LSM ボリュームへデータを移行する。
AdvFS の
rmvol
コマンドを使用して,ドメインからオリジナルのディスク・パーティションを削除し (AdvFS Utilities のライセンスが必要),そのパーティションのディスク・ラベル・パーティション・テーブルのエントリに
unused
を設定する。
使用可能なディスクが限られているときにミラーリングを使用したい場合には,移行が完了した後に,AdvFS ドメインのボリュームをオリジナル・ディスクにミラー化できます。 ただし,オリジナル・ディスクを LSM 制御下に配置すると,LSM プライベート・メタデータ用に,使用可能な領域が 4096 ブロック (2 MB) 減ります。 このため,オリジナル・ディスクのサイズと利用状況によっては,いくつかのドメインを,AdvFS ドメインより小さなボリュームに移行する必要があります。
1 つのドメインでディスク全体 (c
パーティション) を使用している場合は,ドメインを,そのドメインより 2 MB 小さいボリュームに移行します。
いくつかのドメインが同じディスクにあって,ディスクの大きさがドメインの合計より 2 MB 以上大きくない場合には,1 つのドメインをドメインより 2 MB 小さいボリュームに移行します。
ディスクの利用状況と予想される使用量の増加を考慮して,減少させるドメインを決定します。
特に指定しなければ,volmigrate
コマンドは,AdvFS ドメインと同じサイズの LSM ボリュームを作成します。
ただし,ボリュームのサイズは,
volmigrate
(8)
指定するボリューム・サイズは,ドメインの使用中の部分より,10% 以上大きくなければなりません。
ボリュームを 2 MB だけ小さくする必要があります。
LSM と AdvFS のいずれを使用している場合でも,LSM ボリュームまたは AdvFS ドメインに後で領域を追加できます。
3.4.2.1.2 AdvFS ドメインの移行
AdvFS ドメインを LSM ボリュームに移行するコマンドの,一般的な構文は,次のとおりです。
volmigrate [-g disk_group] [-m num_mirrors] [-s num_stripes] \ domain_name disk_media_name...
volmigrate
コマンドは任意のクラスタ・メンバから実行できます。
ドメインのサイズによっては,移行に数分かかることもあります。
エラー・メッセージが表示されなければ,移行は正常に行われています。
オリジナル・ディスクまたはディスク・パーティションをミラー用に再使用するつもりであれば,ドメインをミラー化されていないボリュームに移行し (3.4.2.1.1 項 で説明しているように,オプションでボリューム・サイズが指定できます),オリジナルのディスクを LSM 制御下に置いてから,別のステップでボリュームのミラー化を行います。
可能ならば,複数のボリュームをサポートするために,同じディスクを使用しないでください。 ディスクが故障した場合にリスクがあるボリュームの数が増えるからです。 ボリュームのミラーリングとホット・スペア・ディスクを構成することによって,このリスクは減ります。 使用可能なディスクがある場合は,各 AdvFS ドメインを別々のディスクに移行することを考えてください。 そして,オリジナル・ディスクはドメインのボリュームをミラー化するために使用し,その他のディスクは,その他のドメインのボリュームをミラー化するために使用します。
ドメインの移行時に,以下の項目を指定できます。
ボリュームを作成するディスク・グループ。
省略時のディスク・グループは,rootdg
です。
cluster_root
ドメイン用のボリュームは,rootdg
ディスク・グループに属する必要があります。
ボリュームの名前。
省略時の名前は,ドメイン名にサフィックス
vol
を付けた名前です。
ストライプ属性とミラー属性。
LSM は,cluster_root
ドメインのボリュームがミラー化されている場合,DRL を追加しません。
このボリュームは,システム障害の後で再同期化を行う必要がないため,DRL は不要です。
それ以外のドメイン・ボリュームは,ミラー化されると,省略時の設定で DRL が有効になります。
ボリューム・サイズ。
省略時の設定では,ボリュームはドメインと同じサイズです。
必要があれば,
volmigrate
(8)
以下の手順は,ドメイン
cluster_root
,cluster_usr
,および
cluster_var
の移行の説明ですが,その他の移行可能な AdvFS ドメインについても適用できます。
AdvFS ドメインを LSM ボリュームに移行するには,以下の手順を実行します。
AdvFS ドメインの属性 (特に,サイズと名前) を表示します。
# cd /etc/fdmns # showfdmn *
以下のような情報が表示されます。
ここでは,簡潔にするため,ドメイン
cluster_root
,cluster_usr
,および
cluster_var
だけを表示しています。
Id Date Created LogPgs Version Domain Name 3c7d2bd9.0001fe4b Wed Feb 27 13:56:25 2002 512 4 cluster_root Vol 512-Blks Free % Used Cmode Rblks Wblks Vol Name 1L 401408 211072 47% on 256 256 /dev/disk/dsk3b Id Date Created LogPgs Version Domain Name 3c7d2bdb.0004b3c9 Wed Feb 27 13:56:27 2002 512 4 cluster_usr Vol 512-Blks Free % Used Cmode Rblks Wblks Vol Name 1L 1787904 204480 89% on 256 256 /dev/disk/dsk3g Id Date Created LogPgs Version Domain Name 3c7d2bdd.0008401f Wed Feb 27 13:56:29 2002 512 4 cluster_var Vol 512-Blks Free % Used Cmode Rblks Wblks Vol Name 1L 1790096 1678608 6% on 256 256 /dev/disk/dsk3h
cluster_root
ドメインは,196 MB (401408 ブロック) です。
Tru64 UNIX システムでは 1 ブロックは 512 バイトです。
3 つのドメインの合計は 3979408 ブロック (約 2 GB) です。
3 つのすべてのドメインを同じ LSM ディスクに移行する場合は,ディスクにはそのサイズの空きスペースが必要です。
rootdg
ディスク・グループ内のディスクを表示し,シンプル・ディスクとスライス・ディスクを探します。
# voldisk -g rootdg list
DEVICE TYPE DISK GROUP STATUS dsk2 sliced dsk2 rootdg online dsk8 sliced dsk8 rootdg online dsk9 sliced dsk9 rootdg online dsk10 sliced dsk10 rootdg online dsk11 sliced dsk11 rootdg online dsk12 sliced dsk12 rootdg online dsk13 sliced dsk13 rootdg online dsk14 sliced dsk14 rootdg online dsk20 sliced dsk20 rootdg online dsk21 sliced dsk21 rootdg online dsk22 sliced dsk22 rootdg online dsk23 sliced dsk23 rootdg online dsk24 sliced dsk24 rootdg online dsk25 sliced dsk25 rootdg online
rootdg
ディスク・グループの空きスペースを表示します。
# voldg -g rootdg free
DISK DEVICE TAG OFFSET LENGTH FLAGS dsk2 dsk2 dsk2 0 4106368 - dsk8 dsk8 dsk8 0 4106368 - dsk9 dsk9 dsk9 0 4106368 - dsk10 dsk10 dsk10 0 4106368 - dsk11 dsk11 dsk11 0 4106368 - dsk12 dsk12 dsk12 0 35552277 - dsk13 dsk13 dsk13 0 35552277 - dsk14 dsk14 dsk14 0 35552277 - dsk20 dsk20 dsk20 0 35552277 - dsk21 dsk21 dsk21 0 35552277 - dsk22 dsk22 dsk22 0 35552277 - dsk23 dsk23 dsk23 0 35552277 - dsk24 dsk24 dsk24 0 35552277 - dsk25 dsk25 dsk25 0 35552277 -
ミラーまたはストライプのような,必要な特性を持ったボリュームを作成するために,十分な空きスペースを持ったスライス・ディスクまたはシンプル・ディスクを選択します。
可能ならば,オフセットが 0 のディスクを選択します。 オフセットのあるディスクは,他のボリュームが使用しているため,使用しないでください。
使用する各ディスクが,すべてのクラスタ・メンバからアクセス可能であることを確認します。
# hwmgr view devices -cluster
以下のような情報が表示されます (ここでは,簡潔にするため,編集してあります)。
HWID: Device Name Mfg Model Hostname Location --------------------------------------------------------------------------------
.
.
.
68: /dev/disk/dsk3c DEC RZ28D (C) DEC moe bus-2-targ-1-lun-0 68: /dev/disk/dsk3c DEC RZ28D (C) DEC larry bus-2-targ-1-lun-0 68: /dev/disk/dsk3c DEC RZ28D (C) DEC curly bus-2-targ-1-lun-0
.
.
.
73: /dev/disk/dsk8c DEC RZ28D (C) DEC moe bus-3-targ-10-lun-0 73: /dev/disk/dsk8c DEC RZ28D (C) DEC larry bus-3-targ-10-lun-0 73: /dev/disk/dsk8c DEC RZ28D (C) DEC curly bus-3-targ-10-lun-0 74: /dev/disk/dsk9c DEC RZ28D (C) DEC moe bus-3-targ-11-lun-0 74: /dev/disk/dsk9c DEC RZ28D (C) DEC larry bus-3-targ-11-lun-0 74: /dev/disk/dsk9c DEC RZ28D (C) DEC curly bus-3-targ-11-lun-0 75: /dev/disk/dsk10c DEC RZ28D (C) DEC moe bus-3-targ-12-lun-0 75: /dev/disk/dsk10c DEC RZ28D (C) DEC larry bus-3-targ-12-lun-0 75: /dev/disk/dsk10c DEC RZ28D (C) DEC curly bus-3-targ-12-lun-0 76: /dev/disk/dsk11c DEC RZ28D (C) DEC moe bus-3-targ-13-lun-0 76: /dev/disk/dsk11c DEC RZ28D (C) DEC larry bus-3-targ-13-lun-0 76: /dev/disk/dsk11c DEC RZ28D (C) DEC curly bus-3-targ-13-lun-0 77: /dev/disk/dsk12c DEC HSG80 moe bus-4-targ-0-lun-1 77: /dev/disk/dsk12c DEC HSG80 larry bus-4-targ-0-lun-1 77: /dev/disk/dsk12c DEC HSG80 curly bus-4-targ-0-lun-1 78: /dev/disk/dsk13c DEC HSG80 moe bus-4-targ-0-lun-2 78: /dev/disk/dsk13c DEC HSG80 larry bus-4-targ-0-lun-2 78: /dev/disk/dsk13c DEC HSG80 curly bus-4-targ-0-lun-2 79: /dev/disk/dsk14c DEC HSG80 moe bus-4-targ-0-lun-3 79: /dev/disk/dsk14c DEC HSG80 larry bus-4-targ-0-lun-3 79: /dev/disk/dsk14c DEC HSG80 curly bus-4-targ-0-lun-3
.
.
.
85: /dev/disk/dsk20c DEC HSG80 moe bus-4-targ-0-lun-9 85: /dev/disk/dsk20c DEC HSG80 larry bus-4-targ-0-lun-9 85: /dev/disk/dsk20c DEC HSG80 curly bus-4-targ-0-lun-9 86: /dev/disk/dsk21c DEC HSG80 moe bus-4-targ-0-lun-10 86: /dev/disk/dsk21c DEC HSG80 larry bus-4-targ-0-lun-10 86: /dev/disk/dsk21c DEC HSG80 curly bus-4-targ-0-lun-10 87: /dev/disk/dsk22c DEC HSG80 moe bus-4-targ-0-lun-11 87: /dev/disk/dsk22c DEC HSG80 larry bus-4-targ-0-lun-11 87: /dev/disk/dsk22c DEC HSG80 curly bus-4-targ-0-lun-11 88: /dev/disk/dsk23c DEC HSG80 moe bus-4-targ-0-lun-12 88: /dev/disk/dsk23c DEC HSG80 larry bus-4-targ-0-lun-12 88: /dev/disk/dsk23c DEC HSG80 curly bus-4-targ-0-lun-12 89: /dev/disk/dsk24c DEC HSG80 moe bus-4-targ-0-lun-13 89: /dev/disk/dsk24c DEC HSG80 larry bus-4-targ-0-lun-13 89: /dev/disk/dsk24c DEC HSG80 curly bus-4-targ-0-lun-13 90: /dev/disk/dsk25c DEC HSG80 moe bus-4-targ-0-lun-14 90: /dev/disk/dsk25c DEC HSG80 larry bus-4-targ-0-lun-14 90: /dev/disk/dsk25c DEC HSG80 curly bus-4-targ-0-lun-14
.
.
.
この例では,次のことがわかります。
3 つのクラスタ・メンバ
moe
,larry
,および
curly
がある。
ディスク
dsk3
〜
dsk25
は,すべてのメンバで共用されている。
各ディスクは出力に 3 度現われ,その各行のホスト名は異なる。
この中で,ディスク
dsk8
〜
dsk14
と
dsk20
〜
dsk25
は,rootdg
のメンバとして,LSM 制御下にある (ステップ 2 の
voldisk list
コマンドの出力も参照)。
これらのディスクはすべて,移行で使用できる候補となります。
ミラーの数や,ストライプ・カラムの数などのオプションを指定して,ドメインを移行します。
注意
volmigrate
コマンドを使用してミラー・ボリュームを作成した場合,LSM が自動的に DRL を追加します (cluster_rootvol
を除く)。 ただし,DRL 用に別のディスクは指定できません。 十分な領域がある場合,指定したディスクの 1 つに LSM が DRL を作成します (ミラー用と DRL 用に十分な領域がない場合,コマンドは十分な領域がないというメッセージを表示して,失敗します)。必要以上のディスクをミラーの作成に指定しても,LSM は余分なディスクには DRL を作成しません。
構成を改善するために,ドメインの移行が終わった後で,ボリュームのログを削除し,新しいログを追加できます。 以下の手順に従ってください。
ドメインを,省略時の属性 (連結,ミラーなし) で LSM ボリュームに移行するには,次のコマンドを使用します。
# volmigrate domain disk...
たとえば,次のように実行します。
# volmigrate cluster_root dsk10
必要があれば,後で,ボリュームをオリジナル・ディスクにミラー化できます。
ドメインを指定したサイズの LSM ボリューム (たとえば,ドメインより 2 MB 小さなボリューム) に移行するには,次のコマンドを使用します。
# volmigrate -l sectors domain disk...
たとえば,17581584 セクタ (8 GB より少し大きい) の
cluster_var
ドメインを,2 MB 小さな (17577488 セクタ) ボリュームに移行するには,次のように実行します。
# volmigrate -l 17577488 cluster_var dsk11
ドメインを 4 つのディスクにストライプするボリュームに移行するには,次のコマンドを使用します。
# volmigrate -s 4 cluster_root disk disk disk disk
たとえば,次のように実行します。
# volmigrate -s 4 cluster_root dsk10 dsk11 dsk12 dsk13
ドメインを 2 つのディスクのミラー・ボリュームに移行するには,次のコマンドを使用します。
# volmigrate -m 2 domain disk disk
たとえば,次のように実行します。
# volmigrate -m 2 cluster_usr dsk12 dsk13
ドメインを 6 つのディスクのストライプ・ミラー・ボリューム (各ミラーは,3 つのディスクにストライプ) に移行するには,次のコマンドを使用します。
# volmigrate -m 2 -s 3 cluster_usr \ disk disk disk disk disk disk
たとえば,次のように実行します。
# volmigrate -m 2 -s 3 cluster_usr \ dsk10 dsk11 dsk12 dsk13 dsk14 dsk15
ドメインをミラー・ボリュームに移行して,データ・プレックスとして使用していないディスクに DRL プレックスが置かれるように,そのボリュームを再構成する場合は,以下の手順に従ってください。
DRL プレックスを探すために,ボリューム属性を表示します。
# volprint volume
たとえば,次のように実行します。
# volprint cluster_usrvol
Disk group: rootdg TY NAME ASSOC KSTATE LENGTH ... v cluster_usrvol fsgen ENABLED 1787904 ... pl cluster_usrvol-01 cluster_usrvol ENABLED 1787904 ... sd dsk22-01 cluster_usrvol-01 ENABLED 1787904 ... pl cluster_usrvol-02 cluster_usrvol ENABLED 1787904 ... sd dsk23-01 cluster_usrvol-02 ENABLED 1787904 ... pl cluster_usrvol-03 cluster_usrvol ENABLED LOGONLY ... sd dsk22-02 cluster_usrvol-03 ENABLED 65 ...
DRL プレックスの関連を削除します。
# volplex -o rm dis cluster_usrvol-03
同じボリュームで使用されていないディスク (この例では,dsk22
または
dsk23
以外) を指定して,新しい DRL プレックスを追加します。
# volassist addlog cluster_usrvol disk
3.4.2.1.3 移行したドメイン・ボリュームのオリジナル・ディスクへのミラー化 (オプション)
volmigrate
コマンドでボリュームに指定した属性 (たとえば,長さや,ストライプするかどうか) は,そのボリュームのミラー化を行う場合,ミラーにも適用されます。
複数のディスクにストライプ化されているボリュームをミラー化するには,ミラー用に同数の追加ディスクを指定することが必要です。 たとえば,ボリュームが 4 つのディスクにストライプ化されている場合には,ミラーを作成するのに 4 つの追加ディスクが必要で,そのうちの 1 つはオリジナル・ディスクでも構いません。
ボリュームをオリジナル・ディスクにミラー化する場合は,以下の手順に従ってください。
オリジナル・ディスク (この例では,dsk6
) のすべてのパーティションが未使用であることを確認します。
# disklabel -r dsk6
ディスクを LSM に追加します。
# voldisksetup -i dsk6
ディスクを
rootdg
ディスク・グループに追加します。
rootdg
は省略時の値なので,ディスク・グループの指定は不要です。
# voldg adddisk dsk6
LSM ディスクの公用リージョンに,ボリュームをミラー化するのに十分な領域があることを確認します。
# voldisk list dsk6 | grep public public: slice=6 offset=16 len=8375968
次のステップで正しい名前を指定するために,クラスタ・ボリューム名を表示します。
# volprint -vt | grep cluster
v cluster_rootvol fsgen ENABLED ACTIVE 557936 SELECT - v cluster_usrvol fsgen ENABLED ACTIVE 1684224 SELECT - v cluster_varvol fsgen ENABLED ACTIVE 1667024 SELECT -
ボリュームのミラー化を行います。 各ボリュームは個別にミラー化する必要があります。
# volassist mirror volume disk
たとえば,すべてのボリュームを同じ LSM ディスクにミラー化するには,次のように実行します。
# volassist mirror cluster_rootvol dsk6 # volassist mirror cluster_usrvol dsk6 # volassist mirror cluster_varvol dsk6
各ボリュームを専用の LSM ディスクにミラー化するには,次のように実行します。
# volassist mirror cluster_rootvol dsk4 # volassist mirror cluster_usrvol dsk8 # volassist mirror cluster_varvol dsk11
ボリュームが複数のディスクにストライプ化されている場合は,ミラー・プレックス用に同数のディスクを指定します。
たとえば,4 つのディスクにストライプ化されているボリュームをミラー化するには,次のように実行します。
# volassist mirror cluster_rootvol dsk6 dsk11 dsk12 dsk13
cluster_rootvol
以外のすべてのボリュームに DRL ログ・プレックスを追加します。
# volassist addlog volume
3.4.3 クラスタ・メンバのスワップ・デバイスのカプセル化
クラスタ単位のルート,/usr
,および
/var
ファイル・システム・ドメインに LSM ボリュームを使用しているかどうかにかかわらず,クラスタ・メンバのスワップ・デバイスに LSM を使用できます。
注意
スワップ・デバイスをカプセル化するためには,クラスタ・メンバは実行中である必要があります。
1 つのコマンドで,以下の対象をカプセル化できます。
1 つのメンバのすべてのスワップ・デバイス
1 つのメンバのすべてのスワップ・デバイスと他のクラスタ・メンバのスワップ・デバイス
1 つ以上のメンバの,指定したスワップ・デバイスのみ
volencap
コマンドを使用すると,複数のメンバでカプセル化の設定を同時に行うことができます。
ただし,カプセル化手順は,volreconfig
を各メンバに使用して,それぞれに行なう必要があります。
現在のメンバのみ,すべてのスワップ・デバイスをカプセル化するには,次のコマンドを実行します。
# volencap swap # volreconfig
swap
オペランドは,クラスタ・メンバのプライベートな
/etc/sysconfigtab
ファイル内のすべてのスワップ・デバイスを指定するための,メンバ固有のショートカットです。
クラスタ・メンバのリブート後は,クラスタ・メンバのスワップ・デバイスは,個別の LSM ボリュームを使用します。
複数のクラスタ・メンバのスワップ・デバイスをカプセル化するには,以下の手順に従ってください。
クラスタ・メンバを調べます。
# clu_get_info
以下のいずれかの方法で,各クラスタ・メンバのスワップ・デバイスを表示します。
各メンバで,次のコマンドを実行します。
# swapon -s
1 つのメンバで,各クラスタ・メンバの
sysconfigtab
ファイルにリストされているスワップ・デバイスを表示します。
# grep swap \ /cluster/members/membern/boot_partition/etc/sysconfigtab
以下のいずれかを実行します。
現在のクラスタ・メンバのすべてのスワップ・デバイスと他のクラスタ・メンバのスワップ・デバイスを任意の数だけカプセル化するには,次のコマンドを実行します。
# volencap swap dsknp dsknp...
現在のクラスタ・メンバの特定のスワップ・デバイスと他のクラスタ・メンバのスワップ・デバイスを任意の数だけカプセル化するには,次のコマンドを実行します。
# volencap dsknp dsknp...
各メンバで個別にカプセル化を実行します。
# volreconfig
クラスタのスワップ・デバイスのカプセル化について詳細は,
volencap
(8)3.5 自動データ再配置機能 (ホット・スペアリング) の有効化
LSM ボリュームの可用性を高めるために,ホット・スペアリング機能を有効にして,ディスク・グループごとに 1 つ以上のホット・スペア・ディスクを構成できます。 これにより,LSM は故障したディスクからホット・スペア・ディスクに自動的にデータを再配置できるようになります。
ホット・スペアリング機能では冗長データ,つまり,ミラー・ボリュームまたは RAID 5 ボリューム内のデータを自動的に再配置しようとします。 RAID5 では,パリティの再同期を行います。 RAID5 ログ・プレックスに障害が発生すると,そのログ・プレックスがミラー化されている場合だけ,再配置が行われます。 この場合,ホット・スペアリング機能でも RAID5 ログ・プレックスを再同期化します。
ホット・スペアリングの操作は,以下のとおりです。
操作の前後に,root ユーザにメールを送信します。 メール・メッセージの例は,3.5.2 項 を参照してください。
冗長性が維持できない場合以外は,LSM オブジェクトを,故障したディスクからホット・スペア・ディスク,またはディスク・グループ内の空きディスク・スペースに再配置します。 たとえば,LSM は,データのミラーを含むディスクにそのデータを再配置することはありません。
影響のあった RAID5 プレックスについて,パリティの再同期化を起動します。
構成データベースの再配置情報をアップデートします。
障害の発生したディスク・スペースが,空きディスク・スペースとして再利用されないことを確認します。
ホット・スペアリング機能は
volwatch
デーモンの一部です。
volwatch
デーモンには,以下の 2 つのモードがあります。
メールのみのモード。 省略時のモードです。 この設定では,問題の通知は行われますが,ホット・スペアリングは行われません。 -m オプションを指定すると,デーモンはこのモードにリセットされます。 ホット・スペアリング機能を有効にしない場合,問題の調査と解決は,手作業で行う必要があります。 詳細は,6.4 節を参照してください。
メールとスペアのモード。 -s オプションで指定します。
いずれのモードでも,メール・アドレスを指定できます。
代わりに,rcmgr
コマンドを使用して,/etc/rc.config.common
ファイルで
VOLWATCH_USERS
変数を設定することもできます。
詳細は,
rcmgr
(8)
ホット・スペアリング機能を有効にするには,次のコマンドを実行します。
# volwatch -s [mail-address...]
volwatch
デーモンをメールのみのモードに戻すには,次のコマンドを実行します。
# volwatch -m [mail-address...]
注意
volwatch
デーモンはシステムまたはクラスタ・メンバ上でいつでも,1 つだけ実行できます。 このデーモンの設定は,全体の LSM 構成に適用されます。 このため,一部のディスク・グループでホット・スペアリングを有効にして,残りのディスク・グループで無効にすることはできません。クラスタの任意のメンバで
volwatch -s
コマンドを実行すると,クラスタ全体でホット・スペアリングが有効になり,volwatch -m
コマンドを実行して無効にするまで有効です。 この設定は,クラスタやメンバをリブートしても変わりません。
各ディスク・グループに少なくとも 1 つのホット・スペア・ディスクを構成します。 理想的には,ディスク・グループ内の冗長なミラー・ボリュームまたは RAID5 ボリュームで使用されている各ディスクに対して 1 つのホット・スペア・ディスクを構成します。 各ホット・スペア・ディスクは,ディスク・グループ内の冗長ボリューム内の任意のディスクの代わりをするのに十分な大きさが必要です。 特定のホット・スペア・ディスクを特定のボリュームに割り当てる機能はないからです。 ホット・スペア動作が行われた後で,ディスク・グループにディスクを追加して,それを代わりのホット・スペア・ディスクとして構成することができます。
スライス
・ディスクとシンプル
・ディスクのどちらもホット・スペア・ディスクとして構成することができますが,望ましいのはスライス
・ディスクです。
シンプル
・ディスクを使用する場合は,ディスクの
c
パーティション (ディスク全体のこと) で初期化したディスクを使用してください。
ディスク全体を包含するシンプル
・ディスクはプライベート・リージョンが 1 つだけしかありません。
このため,LSM は最大限のディスク・スペースを使用できるので,ホット・スペア動作で,故障したディスクから冗長データを再配置する際の柔軟性が最も高くなります。
LSM は,特に指定しない限り,ホット・スペア・ディスクを (新しいボリュームを作成して) データ・ストレージとしては使用しません。
ホット・スペア・ディスクを構成するには,次のコマンドを使用します。
# voledit [-g disk_group] set spare=on disk
たとえば,dsk5
を
rootdg
ディスク・グループのホット・スペア・ディスクとして構成するには,次のコマンドを実行します。
# voledit set spare=on dsk5
ホット・スペア・ディスクを構成解除するには,次のコマンドを使用します。
# voledit [-g disk_group] set spare=off disk
たとえば,dsk5
を
rootdg
ディスク・グループのホット・スペア・ディスクから構成解除するには,次のコマンドを実行します。
# voledit set spare=off dsk5
ディスク・グループ内のホット・スペア・ディスクを表示するには,voldisk list
コマンドを使用します。
このコマンドの出力には,使用可能なホット・スペア・ディスクの
STATUS
欄に
online spare
という状態が表示されます。
3.5.2 例外イベント時のメール通知例
ホット・スペアリング動作の際に,LSM は,root
アカウント (および,指定されたアカウント) に,メールを送信します。
受信者に,故障の発生と,影響を受ける LSM オブジェクトを連絡するためです。
その後,LSM は実際の作業を行ったことを説明するメール・メッセージを送信します (実際に作業を行った場合)。
イベントが分析されて,メッセージを送信するまでに,15 秒の遅延があります。 この間に関連イベントがまとめられ,単一のメール・メッセージで報告されます。
例 3-1 は,LSM が例外イベントを検出したときに送信されるメール通知の例です。
例 3-2 は,ディスクが完全に故障したときに送信されるメール・メッセージです。
例 3-3 は,ディスクが部分的に故障したときに送信されるメール・メッセージです。
例 3-4 は,データ再配置が成功した場合に送信されるメール・メッセージです。
例 3-5 は,ホット・スペア・ディスクまたは空きディスク・スペースがないため,データ再配置が行えない場合に送信されるメール・メッセージです。
例 3-6 は,データ再配置が失敗した場合に送信されるメール・メッセージです。
例 3-7 は,ミラー・プレックスを使用しているボリュームが,ディスクの故障によって利用できなくなった場合に送信されるメール・メッセージです。
例 3-8 は,RAID5 プレックスを使用しているボリュームが,ディスクの故障によって利用できなくなった場合に送信されるメール・メッセージです。
Failures have been detected by the Logical Storage Manager: failed disks: disk [1]
.
.
.
failed plexes: plex [2]
.
.
.
failed log plexes: plex [3]
.
.
.
failing disks: disk [4]
.
.
.
failed subdisks: subdisk [5]
.
.
.
The Logical Storage Manager will attempt to find spare disks, relocate failed subdisks and then recover the data in the failed plexes.
メール通知の説明は,以下のとおりです。
failed disks
の下の
disk
には,完全に故障したと思われるディスクが示されます。
[例に戻る]
failed plexes
の下の
plex
には,プレックスに含まれるサブディスクに入出力操作が試みられたときに入出力障害が発生したため,切り離されたプレックスが示されます。
[例に戻る]
failed log plexes
の下の
plex
には,障害が発生した RAID5 プレックスまたはダーティ・リージョン・ログ (DRL) プレックスが示されます。
[例に戻る]
failing disks
の下の
disk
には,部分的に故障したディスク,または故障しかかっているディスクが示されます。
ディスクが完全に故障すると,同じ
disk
が,failed disks
と
failing disks
に示されます。
[例に戻る]
failed subdisks
の下の
subdisk
には,入出力障害が発生したため切り離された RAID5 ボリュームのサブディスクが示されます。
[例に戻る]
例 3-2
には,ディスク
disk02
が故障し,故障によって切り離され,プレックス
home-02
,src-02
および
mkting-01
も (おそらくディスク故障が原因で) 切り離されたことが示されています。
例 3-2: 完全にディスクが故障した場合のメール通知
To: root Subject: Logical Storage Manager failures on hostname Failures have been detected by the Logical Storage Manager failed disks: disk02 failed plexes: home-02 src-02 mkting-01 failing disks: disk02
To: root Subject: Logical Storage Manager failures on hostname Failures have been detected by the Logical Storage Manager: failed disks: disk02 failed plexes: home-02 src-02
Volume home Subdisk home-02-02 relocated to dsk12-02, but not yet recovered.
データ復旧が成功すると,以下のメッセージが送信されます。
Recovery complete for volume home in disk group dg03.
データ復旧が失敗すると,以下のメッセージが送信されます。
Failure recovering home in disk group dg03.
例 3-5: ホット・スペア・ディスクまたは空きディスク・スペースが存在しない場合のメール通知
Relocation was not successful for subdisks on disk dsk3 in volume vol_02 in disk group rootdg. No replacement was made and the disk is still unusable. The following volumes have storage on dsk3: vol_02
.
.
.
These volumes are still usable, but the redundancy of those volumes is reduced. Any RAID5 volumes with storage on the failed disk may become unusable in the face of further failures.
Relocation was not successful for subdisks on disk dsk14 in volume data02 in disk group data_dg. No replacement was made and the disk is still unusable.
.
.
.
実際のメール通知の出力では,エラー・メッセージの部分にデータ再配置が失敗した理由が示されます。
The following volumes: finance
.
.
.
have data on dsk23 but have no other usable mirrors on other disks. These volumes are now unusable and the data on them is unavailable. These volumes must have their data restored.
例 3-8: 使用できない RAID 5 ボリュームの場合のメール通知
The following RAID5 volumes: vol_query
.
.
.
have storage on dsk43 and have experienced other failures. These RAID5 volumes are now unusable and data on them is unavailable. These RAID5 volumes must have their data restored.
3.6 LSM のファイル,ディレクトリ,デバイス・ドライバ,およびデーモン
LSM をインストールして初期化した後,いくつかの新しいファイル,ディレクトリ,デバイス・ドライバ,およびデーモンがシステムに加わります。
これらについて,以下の項で説明します。
3.6.1 LSM ファイル
/dev
ディレクトリには LSM がカーネルとの通信に使用するデバイス特殊ファイル (表 3-3) が含まれます。
表 3-3: LSM のデバイス特殊ファイル
デバイス特殊ファイル | 機能 |
/dev/volconfig |
vold
デーモンがカーネルに構成要求を行うために使用します。 |
/dev/volevent |
voliotrace
コマンドで使用され,イベントの表示と収集を行います。 |
/dev/volinfo |
volprint
コマンドで使用され,LSM オブジェクトの状態情報の収集を行います。 |
/dev/voliod |
ボリューム拡張入出力デーモン (voliod ) とカーネル間のインタフェースを提供します。 |
/etc/vol
ディレクトリには,LSM が使用する
volboot
ファイルとサブディレクトリ (表 3-4) が含まれます。
表 3-4: LSM の /etc/vol サブディレクトリ
ディレクトリ | 機能 |
reconfig.d |
既存ファイル・システムをカプセル化するときの一時的なストレージです。 カプセル化処理の指示が作成され,再構成時に使用されます。 |
tempdb |
起動時に構成データベースを作成するときと構成情報をアップデートするときに,ボリューム構成デーモン (vold ) で使用されます。 |
vold_diag |
診断コマンドが
vold
デーモンと通信するためのソケット・ポータルを作成します。 |
vold_request |
LSM コマンドが
vold
デーモンと通信するためのソケット・ポータル用です。 |
/dev
ディレクトリには,ブロック型デバイスと文字型デバイスのボリューム用のサブディレクトリ (表 3-5) が含まれます。
表 3-5: LSM のブロック型デバイスと文字型デバイスのサブディレクトリ
ディレクトリ | 内容 |
/dev/vol |
LSM ボリューム用のブロック型デバイス・インタフェース。 |
/dev/rvol |
LSM ボリューム用の文字型デバイス・インタフェース。 |
LSM には 2 つのデバイス・ドライバがあります。
volspec
-- ボリューム特殊デバイス・ドライバ。
LSM のデバイス特殊ファイルと通信します。
これはロード可能ドライバではありません。
このため,ブート時に存在している必要があります。
voldev
-- ボリューム・デバイス・ドライバ。
LSM ボリュームと通信します。
LSM と物理ディスク間のインタフェースを提供します。
2 つの LSM デーモンがあります。
vold
-- ボリューム構成デーモン。
このデーモンは,ディスクとディスク・グループの構成の維持を行います。
その他の機能は以下のとおりです。
他のユーティリティから,構成変更要求を受け取る。
変更要求をカーネルと通信する。
ディスクに格納されている構成情報を変更する。
システム起動時に LSM を初期化する。
voliod
-- ボリューム拡張入出力デーモン。
このデーモンには,ユーティリティとしての機能と,デーモンとしての機能があります。
ユーティリティとしての
voliod
の機能は,以下のとおりです。
実行中のボリューム入出力デーモンの数を返す。
必要に応じて,さらにデーモンを起動する。
必要がなくなったデーモンをサービスから削除する。
デーモンとしての
voliod
の機能は,以下のとおりです。
再試行が必要な入出力要求をスケジュールする。
ロギングが必要な書き込みをスケジュールする。