10


ドメインステータス関数

ステータス関数は、サーバーのハードウェアやソフトウェアのステータスを示す測定値を返します。このため、これらの関数はステータスを表示するための値と、モニターソフトウェアへ入力するための値を提供する際に使用されます。モニターソフトウェアは、ステータス関数を定期的に調べて、戻り値が通常の動作制限内かどうか検証します。この章では、ステータス関数を使用するモニター関数やイベント検出関数について説明します。

この章では、以下の項目を説明します。


ソフトウェアのステータス

ソフトウェアのステータスは、ドメインで実行されているソフトウェアによって提供されるステータス情報で構成されます。現在実行されているソフトウェアコンポーネント (たとえば POST、OpenBoot PROM、または Solaris ソフトウェア) の識別情報が得られます。その他のステータス情報 (起動、実行、パニック) も得られます。

SMS ソフトウェアで提供される次のコマンドは、ドメイン内で現在実行されているソフトウェアがあれば、そのステータスを表示します。

ステータスコマンド

この節では、SMS のドメインステータスコマンドについて説明します。

showboards コマンド

showboards(1M) コマンドは、DCU の割り当て情報およびステータスを表示します。この情報には、場所、電源、ボードのタイプ、ボードのステータス、テストステータス、およびドメインが含まれます。

プラットフォーム管理者の場合は、オプションを何も指定しないと、showboards コマンドによって、割り当て済みの DCU や使用可能な DCU を含むすべての DCU が表示されます。ドメイン管理者または構成者の場合、showboards は、そのユーザーが特権を持つドメインの DCU だけを表示します。これには、ドメインの使用可能構成要素リストにある、assigned または available のボードが含まれます。

domain-indicator を指定すると、このコマンドは目的のドメインに対して assigned または available である DCU を表示します。-v オプションを使用すると、showboards は DCU を含むすべてのボードを表示します。

詳細や例については、ボードステータスを取得するおよび showboards のマニュアルページを参照してください。

showdevices コマンド

showdevices(1M) コマンドは、システムボード上に構成された物理デバイスや、これらのデバイスで使用可能なリソースを表示します。使用状況情報は、システム資源をアクティブに管理しているアプリケーションおよびサブシステムによって提供されます。必要な場合は、管理対象の資源をオフラインで問い合わせることによって、システムボードの DR 操作による影響の予測を表示できます。

showdevices コマンドは、1 つ以上の Sun Fire ハイエンドシステムドメインからデバイス情報を収集します。このコマンドは、dca(1M) をプロキシとして使用して、ドメインから情報を収集します。

詳細や例については、ボードステータスを取得するおよび showdevices のマニュアルページを参照してください。

showenvironment コマンド

showenvironment(1M) コマンドは、位置、センサー、値、ユニット、年数、ステータスなどの環境データを表示します。ファントレーについては、電源、速度、ファン番号が表示されます。バルク電源については、電源、値、ユニット、ステータスが表示されます。

domain-indicator を指定すると、ユーザーがそのドメインに対するドメイン特権を持っている場合に、そのドメインに関連する環境データが表示されます。ドメインが指定されていない場合は、そのユーザーに許可されるすべてのドメインデータが表示されます。

DCU (CPU や I/O など) はドメインに属しているため、これらのステータスを表示するにはドメイン特権が必要です。ファントレー、バルク電源、または他のボードなどに関連する環境データは、ドメインの許可がなくても表示できます。-p オプションを使用すれば、温度、電圧、電流、障害、バルク電源ステータス、およびファントレーステータスの個別のレポートを指定することもできます。-p オプションがない場合は、すべてのレポートが表示されます。

詳細や例については、環境ステータスおよび showenvironment のマニュアルページを参照してください。

showobpparams コマンド

showobpparams(1M) コマンドは、OpenBoot PROM の起動パラメータを表示します。showobpparams (1M) コマンドを使用すると、ドメイン管理者は、setkeyswitch (1M) によって OpenBoot PROM に渡される仮想 NVRAM および REBOOT パラメータを表示できます。

詳細や例については、OpenBoot PROM 変数の設定および showobpparams のマニュアルページを参照してください。

showpcimode コマンド

showpcimode(1m) コマンドは、使用しているサーバーの V2HPCIX I/O ボード上にあるすべての PCI-X スロットのモード設定を一覧表示します。この設定は setpcimode コマンドによって指定されます。normal というステータスを返すスロットは、PCI-X モードで動作しています。pci_only というステータスを返すスロットは、PCI モードで強制的に動作しています。

V2HPCIX ボードでない I/O ボードを指定すると、このコマンドはエラーを返します。

showplatform コマンド

showplatform(1M) コマンドは、使用可能構成要素リストと、各ドメインのドメインステータスを表示します。

ドメインは、domain-tag が存在すればそれによって識別されます。それ以外の場合は、domain-id の A 〜 R のいずれかの文字で識別されます。文字セットは大文字と小文字の区別があります。Solaris の hostname が存在すればそれも表示されます。ドメインに hostname が割り当てられていない場合は、Unknown が表示されます。

表 10-1 に、ドメインステータスを一覧表示します。


表 10-1 ドメインステータスの種類

ステータス

説明

Unknown

ドメイン状態が判断できませんでした。Ethernet アドレスの場合、ドメイン idprom イメージファイルが存在しません。ご購入先にご連絡ください。

Powered Off

ドメインの電源が切断されています。

Keyswitch Standby

ドメインのキースイッチが STANDBY 位置になっています。

Running Domain POST

ドメイン電源投入時自己診断が実行中です。

Loading OBP

ドメインの OpenBoot PROM がロードされています。

Booting OBP

ドメインの OpenBoot PROM が起動中です。

Running OBP

ドメインの OpenBoot PROM が実行中です。

In OBP Callback

ドメインが停止され OpenBoot PROM に戻されています。

Loading Solaris

OpenBoot PROM が Solaris ソフトウェアをロードしています。

Booting Solaris

ドメインが Solaris ソフトウェアを起動しています。

Domain Exited OBP

ドメインの OpenBoot PROM が終了しました。

OBP Failed

ドメインで OpenBoot PROM の実行に失敗しました。

OBP in sync Callback to OS

OpenBoot PROM が Solaris ソフトウェアに同期コールバックをしています。

Exited OBP

OpenBoot PROM が終了しました。

In OBP Error Reset

ドメインがエラーリセット状態に陥り、OpenBoot PROM に戻っています。

Solaris Halted in OBP

Solaris ソフトウェアが停止し、ドメインが OpenBoot PROM になっています。

OBP Debugging

OpenBoot PROM がデバッガとして使用されています。

Environmental Domain Halt

環境に起因する緊急事態によってドメインがシャットダウンしました。

Booting Solaris Failed

OpenBoot PROM が動作しているが、起動に失敗しました。

Loading Solaris Failed

OpenBoot PROM が動作しているが、ロードに失敗しました。

Running Solaris

Solaris ソフトウェアがドメイン上で実行中です。

Solaris Quiesce In-Progress

Solaris ソフトウェアが休止されています。

Solaris Quiesced

Solaris ソフトウェアが休止しました。

Solaris Resume In-Progress

Solaris ソフトウェアを再開しています。

Solaris Panic

Solaris ソフトウェアがパニックに陥り、パニックフローが開始されました。

Solaris Panic Debug

Solaris ソフトウェアがパニックに陥り、デバッガモードに移行中。

Solaris Panic Continue

デバッガモードが終了しました (パニックフローは続行)。

Solaris Panic Dump

パニックダンプが開始されました。

Solaris Halt

Solaris ソフトウェアが停止しています。

Solaris Panic Exit

Solaris ソフトウェアがパニックによって終了しました。

Environmental Emergency

環境的な緊急事態が検出されました。

Debugging Solaris

Solaris ソフトウェアをデバッグしています。ハング状態ではありません。

Solaris Exited

Solaris ソフトウェアが終了しました。

Domain Down

ドメインがダウンしており、setkeyswitch によってキースイッチが ONDIAG、または SECURE に設定されている。

In Recovery

ドメインで自動システム回復が実行中です。


 

表 10-2 ドメインステータスの種類

ドメインのステータスには、2 種類の状態が反映されます。1 つは dsmd がドメインの復元を試みている状態、もう 1 つは dsmd によるドメイン復元が失敗に終わった状態です。後者の場合は、常に「Domain Down」と表示されます。前者の場合は、「Domain Down」またはその他のステータスが表示されます。どちらの場合にも「Domain Down」から回復するには、setkeyswitch offsetkeyswitch on を使用します。


sc0:sms-user:> setkeyswitch off
sc0:sms-user:> setkeyswitch on

 

詳細や例については、ドメインステータスを取得するおよび showplatform のマニュアルページを参照してください。

showxirstate コマンド

showxirstate (1M) コマンドは、プロセッサにリセットパルスが送信されたあとの CPU ダンプ情報を表示します。この保存状態ダンプは、異常なドメイン動作の原因を解析するために使用できます。showxirstate は、そのドメイン内にあるすべてのアクティブプロセッサのリストを作成し、各プロセッサの保存状態情報 (プロセッサシグニチャーを含む) を取得します。

showxirstate コマンドのデータは、デフォルトでは /var/opt/SUNWSMS/adm/domain-id/dump に保存されます。

詳細や例については、showxirstate のマニュアルページを参照してください。

Solaris ソフトウェアのハートビート

Solaris 環境の通常動作時には、SC から読み取り可能なハートビートインジケータが定期的に作成されます。dsmd デーモンは、実行中の Solaris システムのハートビート更新の欠如を、Solaris システムのハングアップとして検出します。ハングの状態が検出されるのは Solaris ソフトウェアだけで、それ以外のソフトウェアコンポーネントのハングは検出されません。



注 - Solaris ソフトウェアのハートビートを、SC 対 SC (ハードウェア) のハートビートやハートビートネットワークと混同しないでください。どちらもフェイルオーバーの状態を判定する際に使用されます。詳細は、SC のハートビートを参照してください。



Solaris ハートビートの応答が発生するのは、dsmd コマンドが Solaris ハートビートを完全に更新できない障害を検出して、Solaris ソフトウェアがハングしていることを示す場合に限られます。Solaris ソフトウェアのハングが検出されると、dsmd コマンドは ASR を実行します。


ハードウェアのステータス

ハードウェアのステータス関数は、ハードウェア構成、検出されたハードウェアの障害、およびプラットフォームの環境状態に関する情報をレポートします。

ハードウェア構成

Sun Fire ハイエンドシステムのシステム管理ソフトウェアでは、以下のハードウェア構成ステータスを取得できます。



注 - SC 上で実行中の SMS が取得できるハードウェア構成ステータスは、存在の有無に限定されます。これには、I/O アダプタの装着位置や、I/O アダプタに接続されているデバイスなど、I/O 構成に関する情報は含まれません。このような情報は、I/O アダプタを所有しているドメインで実行中のソフトウェアだけが取得できます。



この節で説明している機能でサポートされているハードウェア構成には、I/O アダプタや I/O デバイスは含まれません。showboards コマンドは、存在するハードウェアコンポーネントをすべて表示します。

ブラックリストの編集で説明しているように、現在のコンポーネントのブラックリストの内容は、いつでも表示したり変更したりできます。

環境ステータス

以下のハードウェア環境の測定値が取得できます。

showenvironment コマンドは、Sun Fire ハイエンドシステムのラック内で取得できるすべての環境測定値を表示します。


procedure icon  ドメイン A の環境ステータスを表示する

1. SC にログインします。

プラットフォーム管理者は、プラットフォーム全体のすべての環境ステータスを表示できます。ドメイン管理者は、特権を持つドメインの環境ステータスのみを表示できます。

2. 次のコマンドを入力します。


sc0:sms-user:> showenvironment -d A

 

HPU の LEDで説明しているように、Sun Fire ハイエンドシステムの HPU の動作インジケータ LED は、その HPU の電源が投入されていることを視覚的に表示し、取り外し可能 LED は、その HPU が取り外し可能であることを視覚的に表示します。

ハードウェアエラーのステータス

dsmd デーモンは、Sun Fire ハイエンドシステムハードウェアの動作ステータスを監視して、エラーをレポートします。いくつかのエラーの発生は、SC に直接報告されます (各 ASIC のエラーレジスタは、エラーサマリーレジスタを提供する SC の SBBC に伝播されます)。いくつかのエラーの発生は、SC に対する割り込みによって示されますが、いくつかのエラーステータスについては、SC がハードウェアレジスタでエラーの兆候を監視する必要があります。ハードウェアエラーが検出されると、esmd コマンドは定められた手順に従ってハードウェアエラーのステータスを収集したり、クリアしたりします。

Sun Fire ハイエンドシステムのハードウェアでは、以下のタイプのエラーが発生することがあります。

ハードウェアエラーのステータスは、一般にステータスとしてレポートされません。その代わりに、ハードウェアエラーが発生した場合は、イベント処理関数によってさまざまなアクションが実行されます (エラーログの記録、ASR の実行など)。これらの関数については、第 11 章で説明しています。



注 - HPU の LEDで説明しているように、障害 LED は POST が完了したあとに、最終電源投入時以降、または電源投入時リセット以降に障害が発見された Sun Fire ハイエンドシステムの HPU を識別します。




SC のハードウェアおよびソフトウェアのステータス

SMS が正しく動作するかどうかは、SC 上のハードウェアと Solaris ソフトウェアが正しく動作するかどうかによって決まります。メインからスペアへのシステムコントローラの自動フェイルオーバーをサポートするには、スペア上でハードウェアとソフトウェアが正常に動作している必要があります。メインシステムコントローラ上で実行されている SMS ソフトウェアは、スペアによって検出可能な方法でソフトウェアまたはハードウェアの障害を診断できるくらい十分に機能しているか、あるいはスペアによって検出可能な方法で機能しなくなっている必要があります。



注 - フェイルオーバーをサポートするには、両方の SC で同一バージョンの Solaris OS および SMS ソフトウェアが構成されている必要があります。



SC-POST は、システムコントローラのハードウェアステータスを判定します。SC-POST は、電源投入時または電源投入リセット時にシステムコントローラをテストして構成します。

SC が機能しなくなると、SC は起動しません。

制御ボードが機能しなくなると、SC は通常どおり起動しますが、制御ボードのデバイスにはアクセスできません。システムコントローラの起動に必要なハードウェアの動作レベルは、実質的にスタンドアロンの SC で必要な動作レベルと同じです。

SC-POST は、診断結果を SC のコンソールシリアルポート (TTY-A) に出力します。さらに、SC-POST は診断ステータスの簡潔な概要メッセージを NVRAM バッファーに残します。このメッセージは Solaris ドライバが読み取ることができ、Solaris ソフトウェアの起動時に記録または表示されます。

SC のファームウェアおよびソフトウェアは、SC のハードウェア障害を識別したり修正するための情報を表示します。

SC のファームウェアおよびソフトウェアは、システムコントローラのハードウェアが機能していることを検証するソフトウェアインタフェースを提供します。これによって、稼動中のシステムコントローラは、高可用性 SC 構成のメイン SC として選択されます。

システムコントローラの LED は、HPU の LEDで説明しているように、電源や検出されたハードウェア障害に関するステータスを視覚的に表示します。

Solaris ソフトウェアは、自己診断と自動復旧 (パニックと再起動) のレベルを提供します。Solaris ソフトウェアは、SC のハードウェアウォッチドッグロジックを利用して、ハング状態をトラップし、強制的に自動復旧再起動を行います。

SC の間には、4 つのハードウェア通信パス (Ethernet 接続 2 つ、ハードウェアネットワーク、および SC 対 SC のハートビート信号) があります。各 SC はこれらのパスを、使用度の高い SC の構成で使用して、ほかの SC のハングや障害を検出します。

SMS は、使用度の高くない SC の構成でも自己診断を実施し、自動障害復旧手順を定めます。

SMS ソフトウェアは復旧の際に、プラットフォームのハードウェアを必要に応じて既存の有効な構成に戻すか、またはそれが不可能なことをレポートします。

SMS ソフトウェアは、現場で 1 回だけ発生したソフトウェア障害の工学的診断を有効にするために十分な情報を記録してログをとります。

SMS ソフトウェアは、自己を初期化して完全に機能するようになるのにかなりの時間がかかります。この間に、ユーザーインタフェースは予測可能な状態で機能します。ユーザーコマンドの拒否は、システムを初期化するためであると明示されるとともに、適切な間隔を空けて再試行するようにアドバイスされます。

SMS のソフトウェア環境では、分散型クライアント / サーバーアーキテクチャーが使用されます。初期化をまだ完了していないプロセスと対話しようとして、SMS の初期化の際に発生したエラーは、静的に処理されます。