Sun Cluster のシステム管理 (Solaris OS 版)

クラスタの管理の概要

この節では、クラスタ全体の管理作業を実行する方法を説明します。次の表に、これらすべての管理作業と、関連する手順を示します。Solaris 10 OS では、明記しないかぎり、クラスタ管理作業は大域ゾーンで行います。

表 8–1 作業リスト : クラスタの管理

作業 

参照先 

クラスタ名を変更 

「クラスタ名を変更する」

ノード ID およびそれらの対応するノード名の一覧の表示 

「ノード ID をノード名にマップする」

クラスタへの新しいノードの追加を許可または拒否 

「新しいクラスタノード認証で作業する」

Network Time Protocol (NTP) を使用してクラスタの時刻を変更 

「クラスタの時刻をリセットする」

ノードを停止し、SPARC ベースのシステムでは OpenBoot PROM ok プロンプト、x86 ベースのシステムでは GRUB メニューで「Press any key to continue」というメッセージを表示

「SPARC: ノードで OpenBoot PROM (OBP) を表示する」

プライベートホスト名の変更 

「ノードのプライベートホスト名を変更する」

クラスタノードを保守状態に変更 

「ノードを保守状態にする」

クラスタノードを保守状態から復帰 

「ノードを保守状態から戻す」

ノードをクラスタに追加 

「クラスタノードの追加」

ノードをクラスタから削除 

「クラスタノードの削除」

ノードから Sun Cluster ソフトウェアをアンインストールします。 

「Sun Cluster ソフトウェアをクラスタノードからアンインストールする」

エラーメッセージの修正 

「エラーメッセージを修正する」

Procedureクラスタ名を変更する

必要に応じて、初期インストール後にクラスタ名を変更できます。

この手順では、長形式の Sun Cluster コマンドを使用して説明します。多くのコマンドには短縮形もあります。コマンド名の形式の長短を除き、コマンドは同一です。コマンドのリストとその短形式については、付録 A 「Sun Cluster オブジェクト指向コマンド」を参照してください。

  1. クラスタ内にある任意のノード上でスーパーユーザーになります。

  2. clsetup ユーティリティーを起動します。


    # clsetup
    

    メインメニューが表示されます。

  3. クラスタ名を変更するには、クラスタその他のプロパティーのオプションに対応する番号を入力します。

    「クラスタその他のプロパティー」メニューが表示されます。

  4. メニューから選択を行って、画面の指示に従います。

  5. Sun Cluster のサービスタグに新しいクラスタ名を反映させる場合は、既存の Sun Cluster タグを削除してクラスタを再起動します。Sun Cluster サービスタグインスタンスを削除するには、クラスタ内のすべてのノードで次のサブステップを完了します。

    1. すべてのサービスタグの一覧を表示します。


      # stclient -x
      
    2. Sun Cluster サービスタグインスタンス番号を見つけて、次のコマンドを実行します。


      # stclient -d -i service_tag_instance_number
      
    3. クラスタ内のすべてのノードを再起動します。


      # reboot
      

例 8–1 クラスタ名の変更

次の例に、新しいクラスタ名 dromedary へ変更するため、clsetup(1CL) ユーティリティーから生成される cluster(1CL) コマンドを示します。


# cluster -c dromedary

Procedureノード ID をノード名にマップする

Sun Cluster のインストール時に、各ノードには、自動的に一意のノード ID 番号が割り当てられます。このノード ID 番号は、最初にクラスタに加わったときの順番でノードに割り当てられます。ノード ID 番号が割り当てられたあとでは、番号は変更できません。ノード ID 番号は、通常、エラーメッセージが発生したクラスタノードを識別するために、エラーメッセージで使用されます。この手順を使用し、ノード ID とノード名間のマッピングを判別します。

構成情報の一覧を表示するために、スーパーユーザーになる必要はありません。

この手順では、長形式の Sun Cluster コマンドを使用して説明します。多くのコマンドには短縮形もあります。コマンド名の形式の長短を除き、コマンドは同一です。コマンドのリストとその短形式については、付録 A 「Sun Cluster オブジェクト指向コマンド」を参照してください。

  1. clnode(1CL) コマンドを使用して、クラスタ構成情報を一覧表示します。


    % clnode show | grep Node
    

例 8–2 ノード名のノードID へのマップ

次に、ノード ID の割り当て例を示します。


% clnode show | grep Node
=== Cluster Nodes ===
Node Name:				phys-schost1
  Node ID:				1
Node Name: 				phys-schost2
  Node ID:				2
Node Name:				phys-schost3
  Node ID:				3

Procedure新しいクラスタノード認証で作業する

Sun Cluster により、新しいノードをクラスタに追加できるか、およびどのタイプの認証で追加するかを判別できます。パブリックネットワーク上のクラスタに加わる新しいノードを許可したり、新しいノードがクラスタに加わることを拒否したり、クラスタに加わるノードを特定できます。新しいノードは、標準 UNIX または Diffie-Hellman (DES) 認証を使用し、認証することができます。DES 認証を使用して認証する場合、ノードが加わるには、すべての必要な暗号化鍵を構成する必要があります。詳細は、keyserv(1M) および publickey(4) のマニュアルページを参照してください。

この手順では、長形式の Sun Cluster コマンドを使用して説明します。多くのコマンドには短縮形もあります。コマンド名の形式の長短を除き、コマンドは同一です。コマンドのリストとその短形式については、付録 A 「Sun Cluster オブジェクト指向コマンド」を参照してください。

  1. クラスタ内にある任意のノード上でスーパーユーザーになります。

  2. clsetup(1CL) ユーティリティーを起動します。


    # clsetup
    

    メインメニューが表示されます。

  3. クラスタ認証で作業するため、新規ノードのオプションに対応する番号を入力します。

    「新規ノード」メニューが表示されます。

  4. メニューから選択を行って、画面の指示に従います。


例 8–3 新しいマシンがクラスタに追加されないようにする

次に、新しいマシンがクラスタに追加されないようにする、clsetup ユーティリティーから生成された claccess コマンドの例を示します。


# claccess deny -h hostname


例 8–4 すべての新しいマシンがクラスタに追加されるように許可する

次に、すべての新しいマシンがクラスタに追加されるようにする、clsetup ユーティリティーから生成された claccess コマンドの例を示します。


# claccess allow-all


例 8–5 クラスタに追加される新しいマシンを指定する

次に、単一の新しいマシンがクラスタに追加されるようにする、clsetup ユーティリティーから生成された claccess コマンドの例を示します。


# claccess allow -h hostname


例 8–6 認証を標準 UNIX に設定する

次に、クラスタに加わる新しいノードの認証を標準 UNIX 認証にリセットする、clsetup ユーティリティーから生成された claccess コマンドの例を示します。


# claccess set -p protocol=sys


例 8–7 認証を DES に設定する

次に、クラスタに加わる新しいノードで DES 認証を使用する、clsetup ユーティリティーから生成された claccess コマンドの例を示します。


# claccess set -p protocol=des

DES 認証を使用する場合、クラスタにノードが加わるには、すべての必要な暗号化鍵を構成します。詳細については、keyserv(1M) および publickey(4) のマニュアルページを参照してください。


Procedureクラスタの時刻をリセットする

Sun Cluster ソフトウェアは、Network Time Protocol (NTP) を使用し、クラスタノード間で時刻を同期させています。クラスタの時刻の調整は、ノードが時刻を同期するときに、必要に応じて自動的に行われます。詳細は、『Sun Cluster の概念 (Solaris OS 版)』と『Network Time Protocol User's Guide』を参照してください。


注意 – 注意 –

NTP を使用する場合、クラスタの稼動中はクラスタの時刻を調整しないでください。date(1)rdate(1M)xntpd(1M)svcadm(1M) などのコマンドを、対話的に使用したり、cron(1M) スクリプト内で使用して時刻を調整しないでください。


この手順では、長形式の Sun Cluster コマンドを使用して説明します。多くのコマンドには短縮形もあります。コマンド名の形式の長短を除き、コマンドは同一です。コマンドのリストとその短形式については、付録 A 「Sun Cluster オブジェクト指向コマンド」を参照してください。

  1. クラスタ内にある任意のノード上でスーパーユーザーになります。

  2. クラスタを停止します。


    # cluster shutdown -g0 -y -i 0
    
  3. SPARC ベースのシステムではノードが ok プロンプトを表示し、x86 ベースのシステムでは GRUB メニューで「Press any key to continue」というメッセージが表示されていることを確認します。

  4. 非クラスタモードでノードを起動します。

    • SPARC ベースのシステム上で、以下のコマンドを実行します。


      ok boot -x
      
    • x86 ベースのシステム上で、以下のコマンドを実行します。


      phys-schost# shutdown -g -y -i0
      
      Press any key to continue
    1. GRUB メニューで、矢印キーを使用して適切な Solaris エントリを選択し、e を入力してそのコマンドを編集します。

      GRUB メニューは次のようになっています。


      GNU GRUB version 0.95 (631K lower / 2095488K upper memory)
      +-------------------------------------------------------------------------+
      | Solaris 10 /sol_10_x86                                                  |
      | Solaris failsafe                                                        |
      |                                                                         |
      +-------------------------------------------------------------------------+
      Use the ^ and v keys to select which entry is highlighted.
      Press enter to boot the selected OS, 'e' to edit the
      commands before booting, or 'c' for a command-line.

      GRUB ベースの起動の詳細については、『System Administration Guide: Basic Administration』の第 11 章「GRUB Based Booting (Tasks)」を参照してください。

    2. ブートパラメータの画面で、矢印キーを使用してカーネルエントリを選択し、e を入力してエントリを編集します。

      GRUB ブートパラメータの画面は、次のような画面です。


      GNU GRUB version 0.95 (615K lower / 2095552K upper memory)
      +----------------------------------------------------------------------+
      | root (hd0,0,a)                                                       |
      | kernel /platform/i86pc/multiboot                                     |
      | module /platform/i86pc/boot_archive                                  |
      +----------------------------------------------------------------------+
      Use the ^ and v keys to select which entry is highlighted.
      Press 'b' to boot, 'e' to edit the selected command in the
      boot sequence, 'c' for a command-line, 'o' to open a new line
      after ('O' for before) the selected line, 'd' to remove the
      selected line, or escape to go back to the main menu.
    3. コマンドに -x を追加して、システムを非クラスタモードで起動することを指定します。


      [ Minimal BASH-like line editing is supported. For the first word, TAB
      lists possible command completions. Anywhere else TAB lists the possible
      completions of a device/filename. ESC at any time exits. ]
      
      grub edit> kernel /platform/i86pc/multiboot -x
    4. Enter キーを押して変更を受け入れ、ブートパラメータの画面に戻ります。

      画面には編集されたコマンドが表示されます。


      GNU GRUB version 0.95 (615K lower / 2095552K upper memory)
      +----------------------------------------------------------------------+
      | root (hd0,0,a)                                                       |
      | kernel /platform/i86pc/multiboot -x                                  |
      | module /platform/i86pc/boot_archive                                  |
      +----------------------------------------------------------------------+
      Use the ^ and v keys to select which entry is highlighted.
      Press 'b' to boot, 'e' to edit the selected command in the
      boot sequence, 'c' for a command-line, 'o' to open a new line
      after ('O' for before) the selected line, 'd' to remove the
      selected line, or escape to go back to the main menu.-
    5. b を入力してノードを非クラスタモードで起動します。


      注 –

      カーネル起動パラメータコマンドへのこの変更は、システムを起動すると無効になります。次にノードを再起動する際には、ノードはクラスタモードで起動します。クラスタモードではなく、非クラスタモードで起動するには、これらの手順を再度実行して、カーネル起動パラメータコマンドに -x オプションを追加します。


  5. 単一のノードで、date コマンドを実行して時刻を設定します。


    # date HHMM.SS
    
  6. ほかのマシンで、rdate(1M) コマンドを実行し、時刻をこのノードに同期化します。


    # rdate hostname
    
  7. 各ノードを起動し、クラスタを再起動します。


    # reboot
    
  8. すべてのクラスタノードで変更が行われたことを確認します。

    各ノードで、date コマンドを実行します。


    # date
    

ProcedureSPARC: ノードで OpenBoot PROM (OBP) を表示する

OpenBoot PROM 設定を構成または変更する必要がある場合は、この手順を使用します。

この手順では、長形式の Sun Cluster コマンドを使用して説明します。多くのコマンドには短縮形もあります。コマンド名の形式の長短を除き、コマンドは同一です。コマンドのリストとその短形式については、付録 A 「Sun Cluster オブジェクト指向コマンド」を参照してください。

  1. 停止するノード上でコンソールに接続します。


    # telnet tc_name tc_port_number
    
    tc_name

    端末集配信装置 (コンセントレータ) の名前を指定します。

    tc_port_number

    端末集配信装置のポート番号を指定します。ポート番号は構成に依存します。通常、ポート 2 (5002) と ポート 3 (5003) は、サイトで最初に設置されたクラスタで使用されています。

  2. clnode evacuate コマンドを使用してから、shutdown コマンドを使用することで、クラスタノードを正常に停止します。clnode evacuate コマンドは、すべてのデバイスグループを、指定ノードから次に優先されるノードに切り替えます。またこのコマンドは、指定のノード上の大域または非大域ゾーンから、ほかのノード上の次に優先される大域または非大域ゾーンへ、すべてのリソースグループを切り替えます。


    # clnode evacuate node
    # shutdown -g0 -y
    

    注意 – 注意 –

    クラスタノードを停止する場合は、クラスタコンソール上で send brk を使用してはいけません。


  3. OBP コマンドを実行します。

Procedureノードのプライベートホスト名を変更する

インストール完了後、クラスタノードのプライベートホスト名を変更するには、次のようにします。

デフォルトのプライベートホスト名は、クラスタの初期インストール時に割り当てられます。デフォルトのプライベートホスト名の形式は、clusternode nodeid -priv です (clusternode3-priv など)。clusternode3-priv . 名前がすでにドメイン内で使用されている場合にかぎり、プライベートホスト名を変更します。


注意 – 注意 –

新しいプライベートホスト名には IP アドレスを割り当てないでください。クラスタソフトウェアが IP アドレスを割り当てます。


この手順では、長形式の Sun Cluster コマンドを使用して説明します。多くのコマンドには短縮形もあります。コマンド名の形式の長短を除き、コマンドは同一です。コマンドのリストとその短形式については、付録 A 「Sun Cluster オブジェクト指向コマンド」を参照してください。

  1. クラスタ内のすべてのノード上で、プライベートホスト名をキャッシュする可能性があるデータサービスリソースやアプリケーションをすべて無効にします。


    # clresource disable resource[,...]
    

    無効にするアプリケーションには次のようなものがあります。

    • HA-DNS と HA-NFS サービス (構成している場合)

    • プライベートホスト名を使用するようにカスタマイズしているアプリケーション

    • クライアントがプライベートインターコネクト経由で使用しているアプリケーション

    clresource コマンドの使用法については、clresource(1CL) のマニュアルページと、『Sun Cluster データサービスの計画と管理 (Solaris OS 版)』 を参照してください。

  2. NTP 構成ファイルが、変更しようとするプライベートホスト名を参照している場合、クラスタの各ノード上で Network Time Protocol (NTP) デーモンを停止します。

    • SPARC: Solaris 9 OS を使用している場合は、xntpd コマンドを使用して NTP デーモンを停止してください。NTP デーモンの詳細については、xntpd (1M) のマニュアルページを参照してください。


      # /etc/init.d/xntpd.cluster stop
      
    • Solaris 10 OS を使用している場合は、svcadm コマンドを使用して NTP デーモンを停止してください。NTP デーモンの詳細については、svcadm(1M) のマニュアルページを参照してください。


      # svcadm disable ntp
      
  3. clsetup(1CL) ユーティリティーを実行して、適切なノードのプライベートホスト名を変更します。

    クラスタ内の 1 つのノードからのみユーティリティーを実行する必要があります。


    注 –

    新しいプライベートホスト名を選択するときには、その名前がクラスタノード内で一意であることを確認してください。


  4. プライベートホスト名のオプションに対応する番号を入力します。

  5. プライベートホスト名を変更するためのオプションに対応する番号を入力します。

    表示される質問に答えます。ここでは、プライベートホスト名を変更するノードの名前 (clusternode<nodeid>-priv) と新しいプライベートホスト名を問い合わせられます。

  6. ネームサービスキャッシュをフラッシュします。

    クラスタの各ノードで次の手順を実行します。フラッシュすることによって、クラスタアプリケーションとデータサービスが古いプライベートホスト名にアクセスすることを防ぎます。


    # nscd -i hosts
    
  7. NTP 構成ファイルでプライベートホスト名を変更した場合、各ノード上で NTP 構成ファイル (ntp.conf または ntp.conf.cluster) を更新します。

    1. 任意のエディタを使用してください。

      この手順をインストール時に行う場合は、構成するノードの名前を削除する必要があります。デフォルトのテンプレートには 16 のノードが事前構成されています。通常 ntp.conf.cluster ファイルは各クラスタノード上で同じです。

    2. すべてのクラスタノードから新しいプライベートホスト名に ping を実行して応答を確認します。

    3. NTP デーモンを再起動します。

      クラスタの各ノードで次の手順を実行します。

      • SPARC: Solaris 9 OS を使用している場合は、xntpd コマンドを使用して NTP デーモンを再起動してください。

        ntp.conf.cluster ファイルを使用している場合は、次のように入力します。


        # /etc/init.d/xntpd.cluster start
        

        ntp.conf ファイルを使用している場合は、次のように入力します。


        # /etc/init.d/xntpd start
        
      • Solaris 10 OS を使用している場合は、svcadm コマンドを使用して NTP デーモンを再起動してください。


        # svcadm enable ntp
        
  8. 手順 1 で無効にしたデータサービスリソースとその他のアプリケーションをすべて有効にします。


    # clresource disable resource[,...]
    

    scswitch コマンドの使用法については、clresource(1CL) のマニュアルページと、『Sun Cluster データサービスの計画と管理 (Solaris OS 版)』 を参照してください。


例 8–8 プライベートホスト名の変更

次に、ノード phys-schost-2 上のプライベートホスト名 clusternode2-privclusternode4-priv に変更する例を示します。


[Disable all applications and data services as necessary.]
phys-schost-1# /etc/init.d/xntpd stop
phys-schost-1# clnode show | grep node
 ...
 private hostname:                           clusternode1-priv
 private hostname:                           clusternode2-priv
 private hostname:                           clusternode3-priv
 ...
phys-schost-1# clsetup
phys-schost-1# nscd -i hosts
phys-schost-1# vi /etc/inet/ntp.conf
 ...
 peer clusternode1-priv
 peer clusternode4-priv
 peer clusternode3-priv
phys-schost-1# ping clusternode4-priv
phys-schost-1# /etc/init.d/xntpd start
[Enable all applications and data services disabled at the beginning of the procedure.]

Procedure非大域ゾーンのプライベートホスト名を追加する

インストール完了後、クラスタ非大域ゾーンのプライベートホスト名を追加するには、次の手順を使用します。

  1. clsetup(1CL) ユーティリティーを実行して、適切なゾーンでプライベートホスト名を追加します。


    # clsetup
    
  2. プライベートホスト名のオプションに対応する番号を入力し、Return キーを押します。

  3. ゾーンプライベートホスト名を追加するためのオプションに対応する番号を入力し、Return キーを押します。

    表示される質問に答えます。非大域ゾーンのプライベートホスト名にはデフォルトはありません。ホスト名を入力する必要があります。

Procedure非大域ゾーンのプライベートホスト名を変更する

インストール完了後、クラスタの非大域ゾーンのプライベートホスト名を変更するには、次の手順を使用します。

プライベートホスト名は、クラスタの初期インストール時に割り当てられます。プライベートホスト名の形式は、clusternode< nodeid>-priv です clusternode3-priv . 名前がすでにドメイン内で使用されている場合にかぎり、プライベートホスト名を変更します。


注意 – 注意 –

新しいプライベートホスト名には IP アドレスを割り当てないでください。クラスタソフトウェアが IP アドレスを割り当てます。


この手順では、長形式の Sun Cluster コマンドを使用して説明します。多くのコマンドには短縮形もあります。コマンド名の形式の長短を除き、コマンドは同一です。コマンドのリストとその短形式については、付録 A 「Sun Cluster オブジェクト指向コマンド」を参照してください。

  1. クラスタ内のすべてのノード上で、プライベートホスト名をキャッシュする可能性があるデータサービスリソースやアプリケーションをすべて無効にします。


    # clresource disable resource1, resource2
    

    無効にするアプリケーションには次のようなものがあります。

    • HA-DNS と HA-NFS サービス (構成している場合)

    • プライベートホスト名を使用するようにカスタマイズしているアプリケーション

    • クライアントがプライベートインターコネクト経由で使用しているアプリケーション

    clresource コマンドの使用法については、clresource(1CL) のマニュアルページと、『Sun Cluster データサービスの計画と管理 (Solaris OS 版)』 を参照してください。

  2. clsetup(1CL) ユーティリティーを実行して、適切な非大域ゾーンのプライベートホスト名を変更します。


    # clsetup
    

    この手順は、クラスタ内の 1 つのノードからのみ実行する必要があります。


    注 –

    新しいプライベートホスト名を選択するときには、その名前がクラスタ内で一意であることを確認してください。


  3. プライベートホスト名のオプションに対応する番号を入力し、Return キーを押します。

  4. ゾーンプライベートホスト名を追加するためのオプションに対応する番号を入力し、Return キーを押します。

    非大域ゾーンのプライベートホスト名にはデフォルトはありません。ホスト名を入力する必要があります。

  5. ゾーンプライベートホスト名を変更するためのオプションに対応する番号を入力します。

    表示される質問に答えます。ここでは、プライベートホスト名を変更する非大域ゾーンの名前 (clusternode<nodeid>-priv) と新しいプライベートホスト名を問い合わせられます。

  6. ネームサービスキャッシュをフラッシュします。

    クラスタの各ノードで次の手順を実行します。フラッシュすることによって、クラスタアプリケーションとデータサービスが古いプライベートホスト名にアクセスすることを防ぎます。


    # nscd -i hosts
    
  7. 手順 1 で無効にしたデータサービスリソースとその他のアプリケーションをすべて有効にします。

Procedure非大域ゾーンのプライベートホスト名を削除する

クラスタ非大域ゾーンのプライベートホスト名を削除するには、次の手順を使用します。

  1. clsetup(1CL) ユーティリティーを実行して、適切なゾーンでプライベートホスト名を削除します。

  2. ゾーンプライベートホスト名のオプションに対応する番号を入力します。

  3. ゾーンプライベートホスト名を削除するためのオプションに対応する番号を入力します。

  4. 削除する非大域ゾーンのプライベートホスト名の名前を入力します。

Procedureノードを保守状態にする

サービスからクラスタノードを長時間はずす場合は、そのノードを保守状態にします。保守状態のノードは、サービス対象中に定足数確立の投票に参加しません。クラスタノードを保守状態にするには、clnode(1CL) evacuate および cluster(1CL) shutdown コマンドを使用してノードを停止しておく必要があります。


注 –

ノードを 1 つだけ停止する場合は、Solaris の shutdown コマンドを使用します。クラスタ全体を停止する場合にだけ、 cluster shutdown コマンドを使用します。


クラスタノードが停止されて保守状態になると、そのノードのポートで構成されるすべての定足数デバイスの、定足数投票数 (quorum vote count) が 1 つ減ります。このノードが保守状態から移動してオンラインに戻されると、ノードおよび定足数デバイスの投票数は 1 つ増えます。

クラスタノードを保守状態にするには、clnode(1CL) disable コマンドを使用します。

この手順では、長形式の Sun Cluster コマンドを使用して説明します。多くのコマンドには短縮形もあります。コマンド名の形式の長短を除き、コマンドは同一です。コマンドのリストとその短形式については、付録 A 「Sun Cluster オブジェクト指向コマンド」を参照してください。

  1. 保守状態にするノード上で、スーパーユーザーになるか、RBAC の承認 solaris.cluster.modify を提供する役割になります。

  2. すべてのリソースグループとデバイスグループをノードから退避します。clnode evacuate コマンドは、非大域ゾーンを含むすべてのリソースグループとデバイスグループを、指定ノードから次に優先されるノードに切り替えます。


    # clnode evacuate node
    
  3. 退避させたノードを停止します。


    # shutdown -g0 -y-i 0
    
  4. クラスタ内の別のノード上で、スーパーユーザーになるか、RBAC の承認 solaris.cluster.modify を提供する役割になり、手順 3 で停止したノードを保守状態にします。


    # clquorum disable  node
    
    node

    保守モードにするノードの名前を指定します。

  5. クラスタノードが保守状態にあることを確認します。


    # clquorum status node
    

    保守状態にしたノードの状態はオフラインであり、その PresentPossible の定足数投票数は 0 (ゼロ) である必要があります。


例 8–9 クラスタノードを保守状態にする

次に、クラスタノードを保守状態にして、その結果を確認する例を示します。clnode status の出力では、phys-schost-1 のノードの投票数は 0 (ゼロ) で、その状態はオフラインです。定足数の概要では、投票数も減っているはずです。構成によって異なりますが、Quorum Votes by Device の出力では、いくつかの定足数ディスクデバイスも offline である可能性があります。


[On the node to be put into maintenance state:]
phys-schost-1# clnode evacute phys-schost-1
phys-schost-1# shutdown -g0 -y -i0

[On another node in the cluster:]
phys-schost-2# clquorum disable phys-schost-1
phys-schost-2# clquorum status phys-schost-1

-- Quorum Votes by Node --

Node Name           Present       Possible       Status
---------           -------       --------       ------
phys-schost-1       0             0              Offline
phys-schost-2       1             1              Online
phys-schost-3       1             1              Online

参照

ノードをオンライン状態に戻す方法については、「ノードを保守状態から戻す」を参照してください。

Procedureノードを保守状態から戻す

次の手順を使用して、ノードをオンラインに戻し、定足数投票数をリセットしてデフォルト設定に戻します。クラスタノードのデフォルトの投票数は 1 です。定足数デバイスのデフォルトの投票数は N-1 です。N は、投票数が 0 以外で、定足数デバイスが構成されているポートを持つノードの数を示します。

ノードが保守状態になると、そのノードの投票数は 1 つ減ります。また、このノードのポートに構成されているすべての定足数デバイスの投票数も (1 つ) 減ります。投票数がリセットされ、ノードが保守状態から戻されると、ノードの投票数と定足数デバイスの投票数の両方が 1 つ増えます。

保守状態にしたノードを保守状態から戻した場合は、必ずこの手順を実行してください。


注意 – 注意 –

globaldev または node オプションのどちらも指定しない場合、定足数投票数はクラスタ全体でリセットされます。


この手順では、長形式の Sun Cluster コマンドを使用して説明します。多くのコマンドには短縮形もあります。コマンド名の形式の長短を除き、コマンドは同一です。コマンドのリストとその短形式については、付録 A 「Sun Cluster オブジェクト指向コマンド」を参照してください。

  1. クラスタの、保守状態のノード以外の任意のノード上で、スーパーユーザーになるか、RBAC の承認 solaris.cluster.modify を提供する役割になります。

  2. クラスタ構成内にあるノードの数に応じて、次の手順のいずれかを実行します。

    • クラスタ構成内に 2 つのノードがある場合は、手順 4 に進みます。

    • クラスタ構成内に 3 つ以上のノードがある場合は、手順 3 に進みます。

  3. 保守状態から解除するノードに定足数デバイスがある場合は、保守状態にあるノード以外のノードからクラスタ定足数のカウントをリセットします。

    保守状態ではないノードの定足数投票数をリセットするのは、そのノードを再起動する前である必要があります。そうしないと、定足数の確立を待機してハングアップすることがあります。


    # clquorum reset
    
    reset

    定足数をリセットする変更フラグです。

  4. 保守状態を解除するノードを起動します。

  5. 定足数投票数を確認します。


    # clquorum status
    

    保守状態を解除したノードの状態は online であり、PresentPossible の定足数投票数は適切な値である必要があります。


例 8–10 クラスタノードの保守状態を解除して、定足数投票数をリセットする

次に、クラスタノードの定足数投票数をリセットして、その定足数デバイスをデフォルトに戻し、その結果を確認する例を示します。scstat -q の出力では、phys-schost-1 の Node votes1 であり、その状態は online です。Quorum Summary では、投票数も増えているはずです。


phys-schost-2# clquorum reset

phys-schost-1# clquorum status

--- Quorum Votes Summary ---

            Needed   Present   Possible
            ------   -------   --------
            4        6         6


--- Quorum Votes by Node ---

Node Name        Present       Possible      Status
---------        -------       --------      ------
phys-schost-2    1             1             Online
phys-schost-3    1             1             Online


--- Quorum Votes by Device ---

Device Name           Present      Possible      Status
-----------           -------      --------      ------
/dev/did/rdsk/d3s2    1            1             Online
/dev/did/rdsk/d17s2   0            1             Online
/dev/did/rdsk/d31s2   1            1             Online
`