[ 前のページ ] [ 次のページ ] [ 目次 ] [ DOC Home ]

10 OpenVMS Galaxyに関するヒントと手法

この章では,報告された問題を取り扱うときや,OpenVMS Galaxy環境の構築およびサポートで役立つとOpenVMS Engineering が判断した操作上のヒントをまとめます。 これらの操作上のヒントは,次の4種類の問題を解決します。

10.1 すべてのプラットフォームに影響するハードウェアとファームウェアの問題

ここでは,AlphaServer 8400,8200,4100プラットフォームに影響するOpenVMS Galaxy の報告されている問題点について説明します。

10.1.1 コンソールに関するヒント

AlphaServer GS140,GS60,8400,8200および4100システムは,Galaxyソフトウェア・ アーキテクチャが開発される以前に設計されているため, OpenVMS Galaxyコンソール・ファームウェアとシステム・オペレーションで, いくつかの制限事項を取り扱わなければなりません。

ここでは,認識しておかなければならない事項と回避しなければならない事項について説明します。

10.1.2 システム・オート・アクション

システムの電源投入時に,AUTO_ACTIONコンソール環境変数がインスタンス0 に対してBOOTまたはRESTARTに設定され,LP_COUNT環境変数が2以上に設定されている場合,GALAXY コマンドが自動的に実行され,インスタンス0 がブートしようとします。

他のインスタンスに対するコンソール環境変数のAUTO_ACTIONの設定は, GALAXYコマンドの実行時にそれぞれの動作を行います(自動的に実行される場合も, ユーザがコンソールから実行する場合も)。

この機能を使用するようにシステムを設定するには,各インスタンスでコンソール環境変数"AUTO_ACTION" を"RESTART"または"BOOT"に設定し,各インスタンスに対して,BOOT_OSFLAGS 環境変数とBOOTDEF_DEV環境変数に適切な値を指定しなければなりません。

10.1.3 異種環境変数


バージョン7.2-1に関する注意
OpenVMSバージョン7.2-1では,セカンダリ・インスタンスでlp* コンソール環境変数は無視されます。 異種環境変数を設定しても,今後は考慮されません。

セカンダリ・コンソールでGalaxy環境変数を設定する場合は,十分注意してください。

Galaxy (lp*)コンソール環境変数をメイン・コンソールで他のインスタンスのコンソールと異なる値に設定すると,Galaxy 構成で問題が発生する可能性が高くなります。

LP_COUNTコンソール環境変数を0に設定して,Galaxyシステムのセカンダリ・ インスタンスをブートすると,OpenVMSはバナーを表示した後,ハングします。 さらに,AlphaServer 4100 Galaxyシステムでは,EISA構成エラーが表示されます。LP_COUNT 環境変数を2に設定してプライマリ・インスタンスがすでにブートされている場合は, マシン・チェックでクラッシュします。

OpenVMS Engineeringはこれらの規則を将来のリリースで変更する予定です。 現時点では,すべてのインスタンスですべての環境変数を同じ値になるように手動で設定し,INIT を実行する必要があります。

10.1.4 コンソールINITコマンドはインスタンス単位でない

1つのインスタンスだけをリセットするためにINITコマンドを使用することはできません。 コンソールINITコマンドはリセット信号をバスと装置に送信することで,( 個々のインスタンスではなく)システム全体に影響を及ぼします。

INITコマンドはどのコンソールからも入力できますが,出力はプライマリ・ コンソールに表示されます。

INITコマンドを入力すると,コンソールに次の質問が表示されます。

     "Do you really want to reset ALL partitions? (Y/N)"

10.1.5 INITコマンドの動作

LP_COUNTコンソール環境変数とAUTO_ACTIONコンソール環境変数がプライマリ・ インスタンスで適切な値に設定されている場合は,INITコマンドと電源投入手順のどちらも, セカンダリ・コンソールを起動します。

セカンダリ・インスタンスは,表 10-1に示すように, それぞれのAUTO_ACTION変数の設定に応じてブートします。

LP_COUNTコンソール環境変数が0に設定されているか,AUTO_ACTIONコンソール環境変数がHALT に設定されている場合は,電源投入またはINITによってLPINIT は実行されません。

表 10-1は,LP_COUNTコンソール環境変数が0以外の値に設定されているときに,INIT または電源投入サイクルがどのように影響するかを示しています。

表 10-1 INITまたは電源投入サイクルの影響


プライマリ・コンソールでのAUTO_ACTION の設定
対象 Halt RestartまたはBoot
セカンダリ・コンソール 起動されない 起動される
プライマリ・インスタンス ブートされない ブートされる [1]
セカンダリ・インスタンス ブートされない セカンダリ・ コンソールのAUTO_ACTIONの設定に応じてブートされる

[1] AlphaServer 8400/8200ではINITによってブートされない。

セカンダリ・コンソールでINITが実行されると,そのセカンダリ・コンソールはブートされません。 他のコンソール(プライマリ・コンソールも含む) は,そのインスタンスのAUTO_ACTIONの設定に応じてブートされます。

10.1.6 CTRL/Pに関する問題

CTRL/Pは1つのインスタンスにだけ影響します。インスタンスがIPL31ループにある場合は,CTRL/P は動作しない可能性があります。

SYSBOOTおよびBugcheckでCTRL/Pは使用しないでください。SYSBOOTの途中でCTRL/P を入力し,その後でBOOTコマンドを入力すると,コンソールは次のメッセージを応答します。

     Inconsistent boot driver state.
     System is configured with multiple partitions.
     A complete INIT must be performed before rebooting.

10.1.7 再割り当てできないCPU

CPUをGalaxy Configurationユーティリティ(GCU)で再割り当てできない場合は, 通常,インスタンス間に通信が存在しないことを示します。

CPUを再割り当てするには,インスタンスがクラスタ内にあるか,またはDECnet がプロキシによって設定されていなければなりません。インスタンス間のTCP/IP 通信は現在開発中であり,将来のリリースで提供される予定です。

10.1.8 GLXCRASHはハートビート時間切れバグチェックである

OpenVMS Galaxy内の各SHARINGメンバは,他のインスタンスが監視する共用メモリ内でハートビート・ セルを刻みます。インスタンスのハートビートがGLX_INST_TMO SYSGEN パラメータにミリ秒単位で指定された時間だけハートビートを停止すると, そのインスタンスは"デッド"状態であると解釈され, 共用メンバとして削除されます。

GLX_INST_TMOに指定したミリ秒より長い時間,共用メンバに対してCTRL/P を実行すると,コンソールからCONTINUEコマンドを実行したときに,インスタンスは直ちにGLXCRASH バグチェックでバッグチェックされます。次の例を参照してください。

     ^P and wait a while, then

     P00>>>c

     continuing CPU 0

     **** OpenVMS (TM) Alpha Operating System X6PI-SSB - BUGCHECK ****

     ** Bugcheck code = 00000A94: GLXCRASH, BUGCHK requested from another Galaxy
     instance

これは,OpenVMS Clusterの動作に非常によく似ています。OpenVMS Clusterでは,クラスタ・メンバがRECNXINTERVALに指定された秒数より長い時間,CTRL/P 状態になると,CLUEXITバグチェックが発生します。

共用メンバはすべて,GLX_INST_TMOに対して同じ値を使用します。デフォルト値は現在,5000 ミリ秒です。デバッグまたはテストする場合は, GLX_INST_TMO SYSGENパラメータをリセットして,時間切れの値を長くすることができます。

10.2 AlphaServer 8400および8200システムに影響するハードウェアとファームウェアの問題

この節では,AlphaServer 8400および8200システムに影響するOpenVMS Galaxyの報告されている問題について説明します。

10.2.1 AlphaServer 8400/8200でインスタンスへのプライマリCPU の割り当て

AlphaServer 8400/8200システムでは,偶数番号のCPUだけがインスタンスでプライマリCPU になることができます。したがって,奇数番号のCPUだけで構成されるインスタンスを定義しないでください。

10.2.2 コンソール・ターミナル接続(セカンダリ・インスタンス)

コンソール・ターミナルはCOM1に接続しなければなりません。これはDWLPB マザーボードから最も離れたコネクタです。KFE72-DAコンソール・ サブシステムの取り付け方法については,本書の第6章を参照してください。

コンソール・ターミナルをCOM2に接続すると,コンソール・コマンドを入力できますが, コンソールまたはOpenVMSからの出力が表示されません。

10.2.3 EISAイーサネット・ポートはサポートされない

KFE72-DAの標準I/Oモジュールでのツイスト・ペア・イーサネット・ポートの使用はサポートされません。

10.2.4 AlphaServer 8200でのコンソールMIGRATEコマンド

AlphaServer 8200 Galaxyシステムでは,CPUは8,9,10,11です。次の場合には,CPU 11 をあるインスタンスから別のインスタンスに再割り当てできません。

OpenVMSで生成されたコンソールMIGRATEコマンドは次のとおりです。

     MIGRATE -CPU 11 -PARTITION 0

これは"unable to migrate CPU 17"というエラーが発生したことを示します。-CPU 0B を指定するようにMIGRATEコマンドを変更すると,適切な結果が得られました。

この問題が発生するのは,MIGRATEコマンドが現在,16進数のCPU番号を期待しているからです。 この問題はAlphaServer 8200にだけ影響する可能性があります。 これは,AlphaServer 8400 Galaxyでは,12のCPU,4 GBのメモリ( 合計),2つのインスタンスという構成は使用される可能性がないと思われるからです。

この問題は将来のコンソール・バージョンで修正される予定です。

10.2.5 DWLPAは使用できない

AlphaServer 8200または8400でインスタンス0以外のインスタンスに対してコンソール接続を提供するために使用されるKFE72-DA は,DWLPB PCIバスに取り付けなければなりません。DWLPA PCIバスを使用する場合は, 最初のP00>>> プロンプトが表示される前に,電源投入時にコンソール・ マシン・チェックが発生します。

10.3 AlphaServer 4100システムに影響するハードウェアとファームウェアの問題

この節では,AlphaServer 4100システムに影響するOpenVMS Galaxyの報告されている問題について説明します。

10.3.1 AlphaServer 4100でのインスタンスへのプライマリCPU の割り当て

AlphaServer 4100システムでは,CPUの割り当てに関して次の制限があります。

10.3.2 LPINITはAlphaServer 4100システムではサポートされない

AlphaServer 8400および8200システムでは,LPINITおよびGALAXYコンソール・ コマンドは第2または第3のインスタンスのコンソールを起動します。

AlphaServer 4100システムでは,LPINITコマンドは使用できません。 AlphaServer 4100システムでは,GALAXYコマンドを使用して2番目のインスタンスのコンソールを起動しなければなりません。

AlphaServer 4100システムでLPINITコマンドを入力すると,次のメッセージが表示されます。

     P00>>> lpinit
     lpinit: No such command
     P00>>>

この問題は将来のGalaxyファームウェア更新で修正される予定です。

10.3.3 AlphaServer 4100 GalaxyシステムではGigabitカードは使用できない

Gigabit Ethernetアダプタ(DEGPA)はOpenVMS Galaxyシステムでサポートされません。 この問題はOpenVMSの将来のバージョンで修正される予定です。

10.3.4 最小リビジョンのパワー・コントロール・モジュール

3つ以上のCPUをサポートするには,パワー・コントロール・モジュール(PCM) 54-24117-01 Rev F03 が必要です。

CPUが3つの場合は動作することもありますが,PCM 54-24117-01 Rev F03 を使用するのが最も安全です。

10.4 すべてのプラットフォームに影響するOpenVMSソフトウェアの問題点

この節では,すべてのGalaxyプラットフォームに影響するOpenVMSソフトウェアの報告されている問題について説明します。

10.4.1 SSRVEXCEPTバグチェック

OpenVMS Galaxyが既存のOpenVMS Clusterで構成されている場合は,本書のリリース・ ノートの章(第1章)で説明しているように,クラスタのすべてのノードが新しいセキュリティ・ クラスを認識するようにしなければなりません。

これらの手順を行わないと,OpenVMSバージョン6.2またはバージョン7.1 を稼動するOpenVMS VAXシステムとOpenVMS Alphaシステムはクラッシュします。

この問題の詳細については,第1章「リリース・ノート」を参照してください。

10.4.2 GLXSHUTSHMEMバグチェック

OpenVMS Galaxyでは,たとえばシャットダウンの場合など,Galaxyでプロセスが停止されるときに, 共用メモリをインスタンスにマップしたままにしておくことができません。 システム・プロセス(UICグループ1)からアプリケーションが実行されているときに, プロセスを停止するには,次の例に示すように,OpenVMS Galaxy CPU Load Balancer プログラムからSYS$MANAGER:SYSHUTDWN を変更しなければなりません。

     ** SYSHUTDWN.COM EXAMPLE - Paste into SYS$MANAGER:SYSHUTDWN.COM
     **
     ** $!
     ** $! If the GCU$BALANCER image is running, stop it to release shmem.
     ** $!
     ** $ procctx = f$context("process",ctx,"prcnam","GCU$BALANCER","eql")
     ** $ procid  = f$pid(ctx)
     ** $ if procid .NES. "" then $ stop/id='procid'

OpenVMS Galaxy CPU Load Balancerプログラムのシャットダウン警告の詳細については, 付録Aを参照してください。

インスタンスがGalaxyを終了するときに,プロセスにまだ共用メモリがマップされている場合は, そのインスタンスはGLXSHUTSHMEMバグチェックでクラッシュします。

10.4.3 GLXRMTPFNバグチェック(選択型ダンプの場合のみ)

選択型システム・ダンプの書き込み時に,あるインスタンスで破損の可能性が検出され,PTE が別のインスタンスのプライベート・メモリに書き込みアクセスを行っているように見える場合は,GLXRMTPFN バグチェックが発生します。 破損が発生したかどうか確認する方法がないため,影響を受けるインスタンスもクラッシュするように要求されます。 次のエラー・メッセージが表示されます。

     GLXRMTPFN, Remote node had PFN of this node mapped for write

問題の発生源を検出するには,"triggering"ダンプ・ファイルに対してANALYZE/CRASH を使用します。

  1. SHOW PAGE/INVALID_PFN=WRITABLEを使用して,システム空間を検索します。

  2. SHOW PROCESS/PAGE/INVALID_PFN=WRITABLEを使用して,現在のプロセスを検索します。

  3. SHOW PROCESS ALL/PAGE/INVALID_PFN=WRITABLEを使用して,残りのプロセスを検索します。

PFN 0が参照されている場合は,破損イベントではなく,コーディングに問題があると考えられます。

10.4.4 PTE Checkerプログラム

PTE Checkerプログラムはページ・テーブル・エントリ(PTE)を調べ,マップされていて不正なPFN があるかどうか確認します(不正なとは,インスタンスに対してこのPFN への書き込みアクセスが許可されていないことを意味します) 。このようなエントリが検出されると,PFNを確認するために呼び出されたメモリ管理ルーチンは,PTE Checker プログラムを稼動しているシステムをINVPFN バグチェックでクラッシュさせます。選択型ダンプが書き込まれている場合は, 問題のPFNを持っているインスタンスはGLXRMTPFN バグチェックでクラッシュします。

INVPFNクラッシュ・ダンプは,確認するためのダンプであり,GLXRMTPFN の結果ではないことに注意してください。

SYS$TEST:GLX$PTECHECK.EXEプログラムを実行するには,CMKRNL特権が必要です。

このプログラムを使用すると,マップはされているものの,不正であるPFN を検索している間に,クラッシュが発生するのを防止できます。

10.4.5 SET CPU/FAILOVERエラー・メッセージ

SET CPU/FAILOVERコマンドを使用しているときに発生する一部のエラーの原因は, 次のエラー・メッセージから明確に判断できないことがあります。

NOSUCHCPU は,CPUが指定されていないときに表示されます。

BADPARAM は,存在しないインスタンスが指定されたときに表示されます。

コマンドにはCPUとターゲット・インスタンスの両方が必要です。次の例を参照してください。

     SET CPU cpu /FAILOVER=instance

     SET CPU /ALL /FAILOVER=instance

このメッセージはOpenVMSの将来のバージョンで改善される予定です。

10.4.6 プライマリ以外のインスタンスはネットワーク・ ブートできない

Galaxyインスタンスのネットワーク・ブートがサポートされるのは,インスタンス0 の場合だけです。つまり,インスタンス0以外のインスタンスをネットワークを介してブートすることはできません。

10.5 Galaxyモードのオフ設定

OpenVMS Galaxyソフトウェアをオフに設定する場合は,lp_count環境変数を次のように変更し, 次のコマンドを入力します。

     >>> SET LP_COUNT 0   ! Return to monolithic SMP config
     >>> INIT                      ! Return to single SMP console
     >>> B -fl 0,1 device          ! Stop at SYSBOOT
     SYSBOOT> SET GALAXY 0
     SYSBOOT> CONTINUE


[ 前のページ ] [ 次のページ ] [ 目次 ] [ DOC Home ]