Sun Cluster 2.2 のシステム管理

メディエータの管理

メディエータの管理は、medstat(1M)metaset(1M) コマンドを使用して行います。これらのコマンドを使用すると、メディエータホストの追加と削除、メディエータデータの確認と修復などが行えます。詳細は、medstat(1M)metaset(1M)mediator(7) の各マニュアルページを参照してください。

メディエータホストを追加するには

この作業は、Solstice DiskSuite のインストールと構成が終わった後で行なってください。

  1. すべてのノードでクラスタソフトウェアを起動します。

    最初のノードで次のコマンドを実行してください。

    # scadmin startcluster
    

    残ったほかのノードで次のコマンドを実行してください。

    # scadmin startnode
    
  2. 各ノードのプライベートリンクの名前を確認します。

    grep(1) を使用して、clustername.cdb ファイルに含まれているプライベートリンクを確認してください。


    hahost1# grep "^cluster.node.0.hostname" ¥ 
    /etc/opt/SUNWcluster/conf/clustername.cdb
    cluster.node.0.hostname : hahost0
    phys-hahost1# grep "cluster.node.0.hahost0" ¥
    /etc/opt/SUNWcluster/conf/clustername.cdb | grep 204
    204.152.65.33
     
    hahost1# grep "^cluster.node.1.hostname" ¥
    /etc/opt/SUNWcluster/conf/clustername.cdb
    cluster.node.1.hostname : hahost1
    hahost1# grep "cluster.node.1.hahost1" ¥
    /etc/opt/SUNWcluster/conf/clustername.cdb | grep 204
    204.152.65.34

    この例では、204.152.65.33 が hahost0 のプライベートリンクで、204.152.65.34 が hahost1 のプライベートリンクです。

  3. metaset(1M) コマンドを使用して、メディエータを構成します。

    ディスクセットに接続された各ホストを、そのディスクセットトのメディエータとして追加します。各コマンドは、現在ディスクセットをマスターしているホストで実行してください。ディスクセットの現在のマスターは、hastat(1M) コマンドで確認できます。論理ホストについて hastat(1M) が返す情報に、ディスクセットマスターが示されています。


    hahost1# metaset -s disksetA -a -m hahost0,204.152.65.33
    hahost1# metaset -s disksetA -a -m hahost1,204.152.65.34
    hahost1# metaset -s disksetB -a -m hahost0,204.152.65.33
    hahost1# metaset -s disksetB -a -m hahost1,204.152.65.34
    hahost1# metaset -s disksetC -a -m hahost0,204.152.65.33
    hahost1# metaset -s disksetC -a -m hahost1,204.152.65.34
    

    metaset(1M) コマンドは、プライベートリンクを別名として扱います。

メディエータデータの状態を確認するには

medstat(1M) コマンドを実行します。


phys-hahost1# medstat -s diskset

出力の解釈については、medstat(1M) のマニュアルページを参照してください。指定したディスクセットのメディエータホストのメディエータデータが不正であることが表示された場合は、次の方法を参照して問題を修正してください。

不正なメディエータデータを修正するには


注 -

medstat(1M) コマンドは、メディエータの状態を確認します。この作業は、medstat(1M) を実行し、メディエータホストに問題があることが報告された場合に行なってください。


  1. 影響を受けるディスクセットから問題のあるメディエータホストを削除します。

    影響を受けるディスクセットを所有している Sun Cluster ノードにログインし、次のコマンドを入力してください。


    phys-hahost1# metaset -s diskset -d -m bad_mediator_host
    
  2. メディエータホストとその別名を復元します。


    phys-hahost1# metaset -s diskset -a -m bad_mediator_host, physical_host_alias,...
    

    注 -

    プライベートリンクは、メディエータホストの別名として割り当てる必要があります。metaset(1M) コマンド行に、まず実際のホストの IP アドレスを指定し、続いて HA プライベートリンクを指定してください。この場合の metaset(1M) コマンドの使用法については、mediator(7) のマニュアルページを参照してください。


自動回復しない障害の処理

二重障害の中には、Sun Cluster によって自動回復しない場合もあります。次に例を示します。

ディスクセット、複製、メディエータの状態を定期的に監視することは非常に重要です。これらの監視には、medstat(1M) コマンドが便利です。多重障害を悪化させる危険性を避けるために、問題のあるメディエータデータ、複製、ディスクは常に速やかに修復してください。

この種の障害が発生した場合、次のようなエラーメッセージの 1 つがログに記録されます。

ERROR: metaset -s <diskset> -f -t exited with code 66
ERROR: Stale database for diskset <diskset>
NOTICE: Diskset <diskset> released
 
ERROR: metaset -s <diskset> -f -t exited with code 2
ERROR: Tagged data encountered for diskset <diskset>
NOTICE: Diskset <diskset> released
 
ERROR: metaset -s <diskset> -f -t exited with code 3
ERROR: Only 50% replicas and 50% mediator hosts available for 
diskset <diskset>
NOTICE: Diskset <diskset> released

最終的に、次のメッセージも表示されます。

ERROR: Could not take ownership of logical host(s) <lhost>, so 
switching into maintenance mode
ERROR: Once in maintenance mode, a logical host stays in 
maintenance mode until the admin intervenes manually
ERROR: The admin must investigate/repair the problem and if 
appropriate use haswitch command to move the logical host(s) out of 
maintenance mode

この種の二重障害では、データの完全性維持を優先するため、高可用性は犠牲になります。そのため、データがしばらく使用できなくなる可能性があります。また、完全なデータ回復やデータの整合性は保証されません。

ログメッセージを調べ、問題を見極め、障害が発生したハードウェアをできるかぎり修復した後、mediator(7) のマニュアルページに説明されている特殊な metaset(1M) オプションのいくつかを使用して、データアクセスを復元できる場合があります。しかし、これらのオプションの使用は、不正なデータの回復を避けるために、細心の注意を払う必要があります。


注意 - 注意 -

2 つの列間の相互アクセスは、絶対に行わないでください。このようなアクセスが試みられると、状況は悪化します。


データのクライアントアクセスを復元する前に、データセット全体、またはそのデータセットに対する最近のトランザクションによって影響を受けているデータに対して任意の妥当性検査を行なってください。

論理ホストを保守モードから戻す haswitch(1M) コマンドを実行する前に、必ず関連するディスクセットの所有権を解放してください。

メディエータに関連するエラーログメッセージ

次の syslog (コンソール) メッセージは、メディエータまたはメディエータデータに問題があることを示しています。この問題を解決するには、「不正なメディエータデータを修正するには」の手順に従ってください。

Attention required - medstat shows bad mediator data on host %s 
for diskset %s
 
Attention required - medstat finds a fatal error in probing 
mediator data on host %s for diskset %s!
 
Attention required - medstat failed for diskset %s