SSP の中で、中心的な役割を果たすのが SSP 3.3 デーモンです。各デーモンの詳細は、それぞれのマニュアルページを参照してください。以下に概略を示します。
表 11-1 デーモン
名称 |
説明 |
---|---|
cbs |
制御ボードサーバー (cbs) は、SSP で動作するクライアントプログラムが Sun Enterprise 10000 の制御ボードにアクセスできるようにします。 |
edd |
イベント検出デーモン (edd) は、制御ボード上のイベントの監視を開始します。監視タスクがイベントを検出すると、edd(1M) は応答動作スクリプトを実行します。 |
fad |
ファイルアクセスデーモン (fad) は、SSP 構成ファイルの監視、読み取り、書き込みを必要とする SSP クライアントのために分散ファイルアクセスサービスを提供します。 |
machine_server |
プラットフォームおよびドメインのメッセージを適切なメッセージファイルに送信します。machine_server(1M) を参照してください。 |
netcon_server |
すべての netcon(1M) クライアントの接続ポイントとなります。netcon_server(1M) は制御ボードプロトコルによって OBP と通信します。また、netcon_server(1M) は、TCP プロトコルによって OS と通信します。 |
obp_helper |
OpenBoot を実行します。OBP が終了すると、obp_helper(1M) も終了します。両者の実行中、obp_helper(1M) は OBP に対し、NVRAM シミュレーション、IDPROM シミュレーション、時刻などのサービスを提供します。 |
snmpd |
SNMP プロクシーエージェントデーモン (snmpd) は、UDP ポートをチェックして着信要求を検出し、 Ultra-Enterprise-10000.mib に指定されているオブジェクトのグループにサービスを提供します。 |
straps |
SNMP トラップシンクサーバー (straps) は、SNMP トラップポートを調べて着信トラップメッセージを検出し、受信したメッセージをすべてのクライアントに転送します。 |
xntpd / ntpd |
NTP(Network Time Protocol) デーモン (xntpd) は、時間同期サービスを提供します (ntpd は、Solaris 2.6、7 および 8 オペレーティング環境のデーモンです)。クライアントをこのサービスに接続すると、時刻が自動的に調整されます。このサービスを使用して、SSP とドメインの時刻を同じにします。xntpd(1M) および『Network Time Protocol User's Guide』を参照してください。 |
イベント検出デーモン (edd(1M)) は、Sun Enterprise 10000 システムの信頼性、可用性、保守性 (RAS: Reliability、Availability、Serviceability) を実現する上で核となるコンポーネントです。edd(1M) は、Sun Enterprise 10000 制御ボード上のイベントの監視を開始し、制御ボードで実行されるイベント検出監視タスクが生成するイベントを待機します。検出されたイベントに対しては、SSP 上で応答動作スクリプトを実行して応答します。イベント発生の条件およびイベントに対する応答は、すべて設定することができます。
edd(1M) は、イベント管理のメカニズムを提供するだけであり、イベントの検出・監視を直接行うわけではありません。イベントの検出は、制御ボードで実行されるイベント監視タスクによって処理されます。edd(1M) は、監視対象のイベントの種類を指定するベクトルをダウンロードして、イベント監視タスクを構成します。イベントの処理は、応答動作スクリプトによって行われます。このスクリプトは、SSP 上で edd(1M) がイベントを検出したときに呼び出されます。
RAS 機能は、相互に協調するいくつかのプログラムによって実現されます。プラットフォーム内の制御ボードは、制御ボードエグゼクティブ (CBE) プログラムを実行します。CBE は Ethernet を介して SSP 上の制御ボードサーバー (cbs(1M)) プログラムと通信します。これらの 2 つのコンポーネントによって、プラットフォームと SSP の間のデータ通信が実現されます。
SSP には、制御ボードサーバーおよび SNMP (Simple Network Management Protocol) エージェントを介して制御ボードへアクセスするための一連のインタフェースが用意されています。edd(1M) は、制御ボードサーバーインタフェースを使用して、制御ボードエグゼクティブ上にイベント検出監視タスクを構成します (図 11-2)。
構成されたイベント検出監視タスクは、プラットフォーム内のさまざまな状態 (環境の状態、シグニチャーブロック、電圧、パフォーマンスデータなど) を調べます。イベント発生の原因となる状態変化が検出されると、適切な情報を収めたイベントメッセージが作成され、SSP で実行されている制御ボードサーバー (cbs(1M)) に送られます。イベントメッセージを受け取った制御ボードサーバーは、イベントを SNMP エージェントに送り、SNMP エージェントは SNMP トラップを生成します (図 11-3)。
SNMP トラップを受け取った edd(1M) は、応答動作を開始するかどうかを決定します。応答動作が必要な場合は、edd(1M) は適切な応答動作スクリプトをサブプロセスとして実行します (図 11-4)。
応答動作スクリプトの実行中に、同じ種類または関連する種類のイベントメッセージが作成されることがあります。同様のイベントに対する応答動作スクリプトがすでに実行中である場合は、重要性の低いイベントメッセージは無視できます。たとえば、edd(1M) が過熱イベントに対する応答動作スクリプトを実行しているとします。この応答動作スクリプトが実行されているときに、イベント監視スクリプトが別の過熱イベントを検出することがあります。edd(1M) は最初の応答スクリプトが完了するまでは、(最初と同様の過熱状態に対して発生した) 別の過熱イベントには応答しません。応答すべきイベントを必要に応じて取り除くのは、アプリケーション (edd(1M) など) の役割です。イベント処理のサイクルは、この時点で完了します。
制御ボードサーバー (CBS) は、SSP 上で動作するサーバーです。SSP で実行されるクライアントプログラムから Sun Enterprise 10000 システムへのアクセスは、cbs(1M) を通じて行われます。 cbs(1M) は、Sun Enterprise 10000 システムのいずれかの制御ボードで実行されている制御ボードエグゼクティブ (CBE) と直接通信します。cbs(1M) はクライアントの要求を、CBE が理解する制御ボード管理プロトコル (CBMP) に変換します。以下の図 (図 11-5) に CBS と CBE の接続方法を示します。
cbs(1M) は cb_config(4) ファイルに基づいて、管理するプラットフォームを特定し、やり取りの相手となる制御ボードを特定します。cb_config(4) ファイルでは、SSP の管理対象となるプラットフォームを指定します。このファイルはドメインの管理ツールおよびコマンドにより自動的に保守されるので、直接変更しないでください。制御ボードの変更を行うには、ssp_config(1M) に cb オプションを指定して使用します。
ファイルアクセスデーモン (fad(1M)) を使用するのは、ssp_to_domain_hosts(4) または他の構成ファイルを更新するときです。fad(1M) は、SSP 構成ファイルの監視、読み取り、書き込みを必要とする SSP クライアントのために、ファイルのロックなどの分散ファイルアクセスサービスを提供します。クライアントがファイルをロックした場合は、そのクライアントがロックを解除しない限り、他のクライアントが該当ファイルをロックすることはできません。
NTP デーモン (Solaris 2.6、7 および 8 オペレーティング環境では xntpd(1M)) は、SSP とドメインの間で時刻を同期させるデーモンです。OBP は、ドメインの起動時に SSP から時刻を取得し、NTP はその時点から時刻の同期をとります。
構成は、システム管理者が指定する情報に基づいて行われます。NTP サブネット内で動作する Sun Enterprise 10000 システムがなく、インターネットへのアクセスもなく、かつラジオクロックも使用していない場合は、Sun Enterprise 10000 システムに対し、内蔵クロックをリファレンスクロックとして使用するように設定することができます。ただし、通常、SSP は Sun Enterprise 10000 システムに対し SSP の内蔵クロックを使用します。
NTP パッケージは、ローカルのリファレンスクロックをサポートしています。つまり、他のシステムやネットワークのクロックではなく、ローカルのクロックをポーリングすることができます。ポーリングは、ネットワークのループバックインタフェースを通じて行われます。IP アドレスの最初の 3 つの数字は、127.127.1 です。IP アドレスの最後の数字は、クロック同期に使用する NTP stratum を示します。
SSP とドメインの設定を実行する場合は、SSP を stratum 4 に設定します。ドメインは、SSP へのピアとして設定し、ローカルクロックは 2 階層多い stratum に設定します。
たとえば、SSP の /etc/opt/SUNWxntp/ntp.conf ファイルの server/peer 行は以下のようになります。
server 127.127.1.0 fudge 127.127.1.0 stratum 8 |
ドメインの /etc/inet/ntp.conf ファイルには、以下のような行を追加できます。
peer ssp_name server 127.127.1.0 fudge 127.127.1.0 stratum 10 |
NTP デーモンの詳細は、『Network Time Protocol User's Guide』および『Network Time Protocol Reference Manual』を参照してください。
SSP では、OpenBoot (OBP) はハードウェア PROM ではなく、ファイルから SSP に読み込まれます。従来の OBP NVRAM と idprom (hostid) も、SSP のファイルで置き換えられます。
OBP ファイルは、SunOS のリリースによって異なるディレクトリパスにあります。 SunOS 5.6 は Solaris 2.6 オペレーティング環境に、SunOS 5.7 は Solaris 7 オペレーティング環境に、SunOS 5.8 は Solaris 8 オペレーティング環境に対応します。uname -r によって、使用中の SunOS のバージョンを確認できます。たとえば、SunOS 5.7 では、OBP ファイルは以下のディレクトリにあります。
/opt/SUNWssp/release/Ultra-Enterprise-10000/5/7/hostobjs/obp
このパスの /5/7 の部分は、SunOS のバージョン番号に対応します。リリースに含まれるオぺレーティングシステムのバージョンが異なれば、この部分も変わります。
bringup(1M) は、obp_helper(1M) をバックグラウンドで起動します。新しい obp_helper(1M) が起動されると、以前の obp_helper(1M) は終了します。obp_helper(1M) は download_helper を実行してから、OBP をダウンロードして実行します。
起動プロセッサ以外のプロセッサを起動するには、obp_helper(1M) が必要です。obp_helper(1M) はブートバス SRAM (BBSRAM) を介して OBP と通信し、要求に応じて、クロックの提供、擬似 EEPROM の内容の読み取りと書き込み、マルチプロセッサモードではスレーブプロセッサの解放を実行します。スレーブプロセッサを解放する場合は、obp_helper(1M) が download_helper をすべてのスレーブプロセッサの BBSRAM に読み込み、スレーブプロセッサであることを示す情報を BBSRAM に書き込んで、そのプロセッサを起動する必要があります。このプロセッサは、ブートバスコントローラのリセットを解放することで起動します。
詳細は、マニュアルページの obp_helper(1M) と bringup(1M)、および 「download_helper ファイル」を参照してください。