第8章 |
|
この章では、ドメインソフトウェアとサーバーハードウェアを制御する機能について説明します。制御機能は、管理者の判断で実行できます。SMS でも、制御機能によって ASR (Automatic System Recovery : 自動システム回復) が利用できるため便利です。
ドメイン制御機能では、ドメイン上で実行されるソフトウェアを制御します。これには、ドメインを起動したり中断したりできる機能が含まれます。ドメイン制御機能は、ドメイン管理者だけが実行できます。
ここでは、ドメイン内で Solaris OS を起動する際のさまざまな側面について説明します。
setkeyswitch(1M) コマンドは、ドメインの起動を開始および処理する役割を果たします。このコマンドは、必要に応じてドメインハードウェアの電源を投入し、POST を起動して論理ドメイン内のハードウェアを Sun Fire ハイエンドシステムの物理ハードウェアドメインでテストおよび構成します。また、ドメイン上で Solaris OS を起動するために必要な OpenBoot PROM をダウンロードして実行します。
仮想キースイッチが適切に設定されたドメインだけが、起動制御の対象となります。仮想キースイッチを参照してください。
OpenBoot PROM の起動パラメータは、ドメインの仮想 NVRAM に格納されます。osd(1M) コマンドは OpenBoot PROM に対して起動パラメータの値を提供し、OpenBoot PROM は指定されたとおりにドメインの起動を実行します。
特定のパラメータ、特にドメインの起動に失敗したときに OpenBoot PROM 自体からは調整できないパラメータは、setobpparams(1M) によって設定し、次の起動試行の際に有効にすることができます。
ドメインのキースイッチ制御 (仮想キースイッチを参照) では、ドメインの起動を手動で開始します。
setkeyswitch コマンドは、正しく構成されたドメインのキースイッチ制御が off または standby の位置から、いずれかの on の位置に移動されたときに、そのドメインを起動します。
setobpparams(1M) コマンドは、手動で開始した (キースイッチ制御) ドメインの起動処理を OpenBoot PROM で停止できる手段を提供します。詳細は、OpenBoot PROM 変数の設定および setobpparams のマニュアルページを参照してください。
次に示すコンポーネントの電源は、poweron および poweroff コマンドを使用して制御できます。
プラットフォーム管理者は、システム全体の電源を制御でき、location オプションを使用せずにこれらのコマンドを実行できます。ドメイン管理者は、それぞれのドメインに割り当てられたシステムボードの電源を制御できます。ドメインの権限だけを持つユーザーは、location オプションを使用する必要があります。
location は、電源を投入するシステムコンポーネントの場所であり、ユーザーがドメイン管理者である場合は、そのユーザーが特権を持つコンポーネントの場所です。
詳細は、poweron(1M) のマニュアルページを参照してください。
location は、電源を切断するシステムコンポーネントの場所であり、ユーザーがドメイン管理者である場合は、そのユーザーが特権を持つコンポーネントの場所です。
警告メッセージの後で、y または n のいずれかを入力します。
詳細は、poweroff(1M) のマニュアルページを参照してください。
ドメインで OS が活発に動作しているときにシステムの電源を切断しようとすると、コマンドは失敗し、ウィンドウのメッセージパネルにメッセージが表示されます。その場合は、動作中のドメインに対して setkeyswitch domain-id standby コマンドを実行すると、プロセッサを正常に停止できます。シャットダウンが完了した時点で、コマンドを再発行して電源を切断できます。
停電のためプラットフォームの電源が失われる場合は、pcd によって、電源が失われる前の各ドメインの最後の状態が記録および保存されます。
SC でのみ電源が失われた場合、SC の電源を投入してください。Sun Fire ハイエンドシステムのドメインは、1 つの SC の電源が失われても影響を受けません。SC とドメインの両方の電源が失われた場合は、以下の手順で電源障害から回復してください。スイッチの場所については、『Sun Fire 15K/12K システムサイト計画の手引き』を参照してください。
![]() |
1. Sun Fire ハイエンドシステムのバルク電源と、SC の電源スイッチを手動で切断します。
これによって、電源が復元したときに発生する可能性のある電源サージを回避します。
2. 電源が復元したら、Sun Fire ハイエンドシステムのバルク電源を手動で投入します。
これによって SC が起動し、SMS デーモンが開始されます。SC プラットフォームのメッセージファイルを参照して、SMS デーモンの完了をチェックしてください。
回復プロセスが完了するのを待ちます。電源が投入されて Solaris OS が実行されているドメインは、OS の実行状態に戻ります。OpenBoot PROM のドメインは、やがて OpenBoot PROM の実行状態に戻ります。
回復プロセスは、SMS の操作が実行される前に完了させる必要があります。ドメインのメッセージファイルをモニターして、回復プロセスが完了したかどうかを判断することができます。
SMS はドメイン管理ソフトウェア (Solaris ソフトウェアまたは dsmd) からの要求に応じてドメインを再起動します。ドメインソフトウェアは、以下の状況で再起動サービスを要求します。
ASR (Automatic System Recovery : 自動システム回復) は、ソフトウェアまたはハードウェアの障害や許容できない環境条件によって、1つまたは複数のドメインがアクティブでない状態に陥った後、システムを復元して正しく構成されたドメインを実行できるようにするための手順で構成されます。
SMS ソフトウェアは、ASR の一部としてソフトウェアから発行された再起動要求をサポートしています。クラッシュしたドメインは、すべて dsmd によって自動的に再起動されます。
ASR が必要な状況は、ドメインをクラッシュさせる障害 (パニックなど) が検出された際に、ドメインソフトウェアによってドメインの起動が要求される場合です。
ドメインソフトウェアのハングの検出など、Solaris ソフトウェアハングイベントで説明されているような他の状況もあります。その場合、SMS は回復プロセスの一部としてドメインの起動を実行します。
dsmd ソフトウェアは OpenBoot PROM パラメータの auto-boot? を無視します。auto-boot? は、サービスプロセッサのないシステム上で、システムが電源投入リセットの状況で自動的に再起動するのを回避できるるパラメータです。dsmd はキースイッチ制御を無視しません。キースイッチが off または standby に設定されている場合、キースイッチ設定はドメインが ASR の再起動アクションの対象かどうかを判断する際に考慮されます。
SMS はハードウェアのモニタリングやエラーの検出および応答を行うため、SMS は最後の起動以降に記録されたハードウェアエラーに基づいて、高速再起動を要求するかどうかを決定します。
POST は、指定された入力の数に基づいてハードウェア構成を制御しますが、ブラックリストのデータに関係なく (ブラックリストの編集を参照)、ハードウェア構成が変更されているかどうかを判断し、高速再起動を回避します。システム管理で高速再起動が要求された場合、POST は現在の入力によって示されるハードウェア構成が、最後の起動で使用されたハードウェア構成と一致しているかどうかを確認します。一致していない場合、POST は高速 POST 処理に失敗します。システム管理ソフトウェアでは、フルテスト (低速) のドメイン起動を要求して、この種の POST 障害から回復します。
Sun Fire ハイエンドシステム管理ソフトウェアは、制御可能なドメインの起動プロセスの一部に費やされる時間を最少限に抑えます。
ドメインソフトウェアを中止したり、ドメインソフトウェアまたはハードウェアに対してリセットを発行する必要のある、特定のエラー状況がドメインで発生する場合があります。この節では、dsmd によって提供されるドメインの中止およびリセット機能について説明します。
dsmd ソフトウェアは、ドメインの Solaris OS を中止し、ドメインをパニック状態にしてコアイメージを取得することを要求するためのソフトウェア主導のメカニズムを提供します。ユーザーの操作は必要ありません。
SMS には reset(1M) コマンドが用意されており、ユーザーはこのコマンドを使用してドメインソフトウェアを中止し、ドメインハードウェアに対してリセットを実行できます。
reset コマンドが実行されると、OpenBoot PROM に制御が渡されます。ユーザーインタフェースで reset コマンドが実行された場合、OpenBoot PROM はそのデフォルト構成を使用して、Solaris 環境に対してドメインを起動するかどうかを決定します。dsmd によって reset コマンドが実行された場合、OpenBoot PROM は Solaris OS に対してドメインを強制的に起動するパラメータを提供します。
reset コマンドは通常、指定されたドメインのすべての CPU ポートに対して信号を送信します。これはハードリセットであり、ハードウェアをクリーンな状態にします。ただし -x オプションを使用すると、reset コマンドは指定されたドメインのプロセッサに対して XIR 信号を送信できます。これはソフトウェアで行われ、ソフトリセットと見なされます。仮想キースイッチが安全位置にある場合は、エラーメッセージが発行されます。デフォルトでは、オプションの "Are you sure?" プロンプトが表示されます。たとえば、次のメッセージが表示されます。
sc0:sms-user:> reset -d C Do you want to send RESET to domain C? [y|n]:y RESET to processor 4.1.0 initiated. RESET to processor 4.1.1 initiated. RESET initiated to all processors for domain: C |
メインまたはスペアの SC をリセットする方法については、SC のリセットおよび再起動を参照してください。
ホットプラグ可能ユニット (HPU) の電源投入のリセットが行なわれたときに正しい状態を反映させるため、LED を備えた HPU のインジケータ LED が、SMS ソフトウェアによって点灯または消灯されます。
ハードウェア制御は、プラットフォームハードウェアの構成や制御を行う機能です。いくつかの機能はドメイン上で実行されます。
システム管理サービスソフトウェアは、POST を 2 つの状況で起動します。
1. POST はドメインの起動時に実行され、そのドメインで利用可能なすべてのハードウェア機能をテストおよび構成します。
POST はセルフテストで問題が発見されたハードウェアコンポーネントをすべて除去し、正しく動作するハードウェアを使用して起動可能なドメインの構築を試みます。
POST は、障害の分析に役立つ詳細な診断機能を提供します。ハードウェアの障害が原因だと明示されずにドメインが再起動される場合は、POST でドメイン構成の確認のみを行い、テストは行わないことを要求できます。
2. システムボードをドメインに追加する DR 操作の前に、POST が起動されてシステムボードのコンポーネントのテストおよび構成が実行されます。
POST によって候補のシステムボードが機能することが示されると、DR 操作でシステムボードを物理 (ハードウェア) ドメインに安全に組み込むことができます。
POST は通常は自動的に実行されますが、POST の自動実行に影響する表示可能なユーザーインタフェースがあります。
これによって、システムボードなどの DCU 上で動作する標準のドメイン構成インタフェースよりも、ドメインで使用されるハードウェアコンポーネントを綿密に制御できます。
SMS は 3 つのブラックリストをサポートしています。具体的には、プラットフォーム用、ドメイン用、そして内部の ASR (自動システム回復) 用のブラックリストです。
編集可能なブラックリストファイルでは、POST によって使用不可であると見なされる特定のハードウェア資源を指定します。ブラックリストで指定されたハードウェア資源は、ドメインの相互接続で調査、テスト、または構成されません。
通常、これらのブラックリストファイルは空であり、存在しなくてもかまいません。
ここでは、ブラックリスト機能は資源管理の目的で使用されます。
ブラックリストによって、実在するすべてのハードウェアよりも少ないシステムを構成できます。ブラックリストの用途としては、ベンチマークを行う場合や、メモリーの使用を制限して DR でのボード切り離しを高速化する場合、およびトラブルシューティングで構成を検証する場合などがあります。
Sun Fire ハイエンドシステムの POST では、プラットフォーム用とドメイン用に、次に示す 2 つの編集可能で標準的なブラックリストファイルをサポートしています。
/etc/opt/SUNWSMS/config/platform/blacklist
/etc/opt/SUNWSMS/config/domain-id/blacklist
注 - ブラックリストファイルでは、物理的な場所に基づいて資源を指定します。コンポーネントを物理的に移動した場合は、対応するブラックリストのエントリもすべて変更する必要があります。 |
ブラックリストファイルでは、位置指定などを行うことで、ブラックリストに登録されるコンポーネントを論理的に指定します。また、ブラックリストは特定のコンポーネントに伴って移動せず、ホットプラグ処理を通じてそのコンポーネントの位置に残ります。
ブラックリストファイルを編集するには、プラットフォーム管理者、ドメイン管理者、またはドメイン構成者の特権が必要です。
domain-id - ドメインの ID。有効な domain-id は、A 〜 R で、大文字と小文字は区別されません。 |
|
domain-indicator を指定しない場合は、プラットフォームのブラックリストが編集されます。コンポーネントの場所は、すべてスラッシュで区切って指定します。location 形式は、オプションであり、特定の位置にあるボード上の特定のコンポーネントを指定するために使用されます。
location 引数が複数の場合は、スペースで区切ります。
プロセッサ位置は、単一のプロセッサまたはプロセッサペアを示します。システムボード上には 4 つのプロセッサが存在します。ボード上のプロセッサペアは、procs 0 と 1、および procs 2 と 3 です。
注 - プロセッサペアの一方の CPU/メモリープロセッサをブラックリストに登録すると、両方のプロセッサが使用されなくなります。 |
MaxCPU には、proc 0 および 1 の 2 つのプロセッサと、proc ペア (PP0) が 1 つだけあります。このボードの場所として PP1 を使用すると、disablecomponent は終了してエラーメッセージを表示します。
HsPCI および HsPCI+ アセンブリには、ホットプラグが可能なカセットが内蔵されています。
バス位置には、アドレス、データおよび応答の 3 つがあります。
注 - システムコントローラのセンタープレーンサポートボードまたはバスの無効化に disablecomponents コマンドを使用しないでください。 |
domain-id - ドメインの ID。有効な domain-id は、A 〜 R で、大文字と小文字は区別されません。 |
|
domain-indicator を指定しない場合は、プラットフォームのブラックリストが編集されます。コンポーネントの場所は、すべてスラッシュで区切って指定します。location 形式は、オプションであり、特定の位置にあるボード上の特定のコンポーネントを指定するために使用されます。
location 引数が複数の場合は、スペースで区切ります。
プロセッサ位置は、単一のプロセッサまたはプロセッサペアを示します。CPU/メモリーボード上には 4 つのプロセッサが存在します。ボード上のプロセッサペアは、procs 0 と 1、および procs 2 と 3 です。
注 - プロセッサペアの一方の CPU またはメモリープロセッサをブラックリストに登録すると、どちらのプロセッサも使用されなくなります。 |
MaxCPU には、procs 0 と 1、および 1 つのみの proc ペア (PP0) の 2 つのプロセッサがあります。このボードの場所として PP1 を使用すると、disable component コマンドは終了し、エラーメッセージを表示します。
HsPCI および HsPCI+ アセンブリには、ホットプラグが可能なカセットが内蔵されています。
詳細は、enablecomponent(1M) および disablecomponent(1M) のマニュアルページを参照してください。
障害が繰り返し (ときどき) 発生するハードウェアは、さまざまな理由で以降のドメイン構成から除外する必要があります。このような障害は、コンポーネントを物理的に交換するまで、ときどき発生する可能性があります。障害のあるコンポーネントは、CPU ボード上の 1 つのプロセッサなど、サブコンポーネントである場合もあります。そのコンポーネントを交換するまで、その他のコンポーネントのサービスについては電源を切断して運用を中止したくないと考えるでしょう。ハードウェアが損傷している場合は、POST を実行するたびにその障害を検出するのは時間の浪費です。障害がときどき発生する場合は、POST 実行時にその障害を回避せず、OS が実行されている場合のみエラーにするとよいでしょう。
この障害を回避するには、esmd コマンドで別の ASR ブラックリストファイルを作成および編集します。環境条件により電源が切断されているコンポーネントは自動的にリストに登録され、POST から除外されます。poweron、setkeyswitch、addboard、および moveboard の各コマンドは、除外するコンポーネントに関して ASR ブラックリストを照会します。poweron 以外の各コマンドを実行すると、警告メッセージが表示されます。poweron では、警告メッセージではなく、コンポーネントの電源投入を継続するか中止するかを問い合わせるメッセージが表示されます。詳細は、enablecomponent(1M)、disablecomponent(1M) および showcomponent(1M) のマニュアルページを参照してください。
メインの SC は、Sun Fire ハイエンドシステムのラックに収められた以下のコンポーネントの電源を制御します。
Sun Fire ハイエンドシステムの I/O ラックでの電源制御については、HPU の LEDを参照してください。
SMS は、Sun Fire ハイエンドシステムの HsPCI I/O ボード内の HPCI アダプタスロットの電源の投入または切断を要求する rcfgadm(1M) コマンドを提供することによって、ドメインの Solaris コマンドインタフェース (cfgadm(1M)) をサポートしています。詳細は、rcfgadm のマニュアルページを参照してください。
仮想キースイッチで説明されているキースイッチ制御インタフェースの setkeyswitch コマンドを使用すると、ドメインに割り当てられたハードウェアの電源をユーザーが投入または切断できます。
電源操作は、すべて電源制御ソフトウェアによってログに記録されます。
電源制御ソフトウェアは、コンポーネントの電源を投入または切断するためのすべてのハードウェア要件に従います。たとえば、SMS はコンポーネントの電源を投入する前に、適切な電源が利用可能かどうかをチェックします。電源制御インタフェースは、ハードウェア要件に違反している場合にはユーザー指定による電源投入または切断の操作を行いません。ハードウェア要件またはハードウェア推奨手順に従わずに実行された電源操作は、メッセージログに記録されます。
デフォルトでは、電源制御ソフトウェアはソフトウェアの実行に影響する電源操作を拒否します。電源制御ユーザーインタフェースには、このデフォルト動作を変更して、実行中のソフトウェアをクラッシュさせる危険を冒しても、電源操作を強制的に完了させる方法があります。このような電源操作の強制変更は、メッセージログに記録されます。
HPU の LEDで説明されているように、SMS は LED を備えた HPU のインジケータ LED を点灯または消灯して、HPU の電源が投入または切断された場合に正確な状態を反映させます。
esmd コマンドは、Sun Fire ハイエンドシステムのファンの速度を制御します。一般に、ファンの速度はノイズレベルを最小に抑えながら適切に冷却を行えるもっとも遅い速度に設定されます。
ホットプラグとは、電源が投入され、1 つ以上のドメインが活発に動作しているプラットフォームで、それらのドメインに影響を与えずにボードを物理的に挿入または取り外すことができる機能を指します。ホットプラグ操作の際には、ボードはすべてのドメインから切り離されます。
ホットプラグ可能なハードウェアコンポーネントは、ホットプラグ可能ユニット (HPU) と呼ばれます。HPU を安全に取り外すことができる場合は、HPU 上の取り外し可能インジケータ LED が点灯します。取り外し可能 LED の詳細は、HPU の LEDを参照してください。ボード存在レジスタは、HPU が存在するかどうかを示し、HPU の着脱を感知します。
Sun Fire ハイエンドシステムの HsPCI および HsPCI+ I/O アセンブリには、HsPCI および HsPCI+ I/O アセンブリが取り付けられたスロットに関連する取り外し可能インジケータ LED が装備されています。各スロットは、スロットの電源を制御するホットプラグコントローラを備えており、スロット内のアダプタの存在を検出できます。ただし、SMS が他の Sun Fire ハイエンドシステムの HPU をサポートするのとは異なり、HsPCI および HsPCI+ I/O アセンブリのホットプラグを制御するソフトウェアは、ドメイン上の Solaris OS の一部です。
SMS を使用すると、ユーザーがアダプタスロットの電源を投入および切断できます。
SMS ソフトウェアは、ドメインから実行可能なソフトウェアインタフェースを提供し、I/O ボード上のアダプタスロットに関連するハードウェアデバイスを制御します。
注 - この節のこれ以降のホットプラグの説明目的に関して、HPU にはホットプラグ可能な I/O アダプタは含まれていません。 |
SMS ソフトウェアは、Sun Fire ハイエンドシステムのラック内にあるすべての HPU のホットプラグサービスを可能にするサポートを必要に応じて提供します。
HPU がすべてのドメインから切り離されると、ホットプラグ操作に必要なソフトウェアサポートは電源切断の制御のみになります。
動的再構成 (DR) により、ドメインから DCU (システムボード) が切り離されます。
HPU が取り外されると、HPU の存在インジケータによってその不在が検出され、ハードウェア構成で説明されているようにハードウェア構成ステータスが変更されます。
ホットアンプラグの際に予想されるユーザーの対話モードは次のとおりです。
HPU のインジケータ LED に、HPU が取り外し可能でないと表示されている場合は、poweroff コマンドを使用して HPU の電源切断を要求します。
電源切断機能で HPU がドメインによって使用されていることが検出されると、電源切断機能はエラーとなり、まず DR を使用して HPU のアクティブな使用を解除する必要があることが示されます。
詳細については、『System Management Services (SMS) 1.6 Dynamic Reconfiguration ユーザーマニュアル』を参照してください。
新たに挿入された HPU の存在が検出され、ハードウェア構成で説明しているようにハードウェア構成ステータスの変更として報告されます。
SC はメインとスペアの SC に対してソフトウェア処理型のリセットをサポートし、システムコントローラの外付けのリセットボタンと同様の機能を提供します。SC は、主にフェイルオーバーの後にリセットされます。メインの SC ソフトウェアがスペアの SC (存在する場合) をリセットしたり、その逆を行うことも可能です。SC は自身をリセットすることはできません。
resetsc (1M) コマンドは、他方の SC にリセット信号を送信します。他の SC が存在しない場合、resetsc コマンドはエラーになって終了します。
詳細は、resetsc のマニュアルページを参照してください。
LED は、ホットプラグ可能ユニット (HPU) のステータスを反映します。LED は 3 つのグループで構成されます。
この節では、SMS ソフトウェアが準拠する HPU の LED 制御のポリシーについて説明します。
システムコントローラを除くすべての Sun Fire ハイエンドシステムの HPU は、メインのシステムコントローラで実行されている SMS ソフトウェアの制御により、電源が投入されテストされます。
特に電源投入時リセットのときの LED の初期状態は、電源投入時リセットのときに POST が自動的に実行されることを前提として設計されています。この前提条件を満たす Sun Fire ハイエンドシステムの HPU は、システムコントローラだけです。システムコントローラの電源が投入されると、プロセッサは PROM から SC-POST コードの実行を開始します。
その他のすべての HPU は、POST によってテストされるものと、SMS ソフトウェアによってテスト (または監視) されるものがあります。通常は電源投入後すぐにテストが実行されますが、必ずしもそうならない場合もあります。
さらに、一方のドメインから他方のドメインに動的に再構成される HPU の電源投入の際には、POST を何度も実行することが可能です。POST と SMS の両方で同じ物理 HPU の障害を検出することも可能です。両者の違いは、システムコントローラと他の Sun Fire ハイエンドシステムの HPU との間の電源やテストの制御で、それらの管理に対するポリシーが異なります。
システムコントローラは、次の状態を示す、3 組の HPU の LED を提供します。
Sun Fire ハイエンドシステムのラックに電源が投入されると、システムコントローラに電源が供給されます。動作インジケータ LED と 取り外し可能インジケータ LED は、ハードウェアによって適切に初期化されます。障害を正確に反映し、SC-POST の実行を妨げる問題が存在することがわかるように、3 つの障害 LED がすべて点灯します。
スペアのシステムコントローラの電源が切断されると、SMS ソフトウェアは、スペアのシステムコントローラの動作インジケータ LED を消灯して、取り外し可能インジケータ LED を点灯します。SMS ソフトウェアが実行されているメイン SC の電源が切断されると、SMS ソフトウェアは動作インジケータや取り外し可能 LED を調整できなくなります。
SC-OpenBoot PROM ファームウェアおよび SMS ソフトウェアは、ハードウェアエラーを検出すると、システムコントローラ上の該当する障害 LED を点灯します。
システムコントローラ以外の HPU の LED を管理する際は、以下のポリシーが適用されます。
注 - Sun Fire ハイエンドシステムは、HPU の電源投入時または電源投入リセットの実行時に、動作インジケータ LED を適切に点灯し、取り外し可能インジケータ LED を適切に消灯します。 |
SC では、障害 LED は電源投入時に点灯し、テスト期間中は点灯が維持され、障害が検出されなかった場合は消灯します。
障害は、SC-POST が以降の障害 LED を点灯できた後に検出されます。
SC が POST によってテストされている短時間を除いて、SC の障害 LED は電源投入以降に障害が発生したことを示します。非 SC HPU の場合も同様です (障害 LED の点灯は、電源投入以降に障害が検出されたことを示します)。Sun Fire ハイエンドシステム内の、LED を備えたすべての非 SC HPU については、SMS は電源投入または電源投入リセットが発生した場合に障害インジケータ LED を消灯します。
Copyright© 2006, Sun Microsystems, Inc. All rights reserved.