JavaScript is required to for searching.
ナビゲーションリンクをスキップ
印刷ビューの終了
Oracle Solaris Cluster システム管理     Oracle Solaris Cluster 4.0 (日本語)
search filter icon
search icon

ドキュメントの情報

はじめに

1.  Oracle Solaris Cluster の管理の概要

2.  Oracle Solaris Cluster と RBAC

3.  クラスタの停止とブート

4.  データ複製のアプローチ

5.  グローバルデバイス、ディスクパス監視、およびクラスタファイルシステムの管理

6.  定足数の管理

7.  クラスタインターコネクトとパブリックネットワークの管理

8.  ノードの追加と削除

9.  クラスタの管理

クラスタの管理の概要

クラスタ名を変更する方法

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

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

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

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

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

ノード名を変更する

既存の Oracle Solaris Cluster の論理ホスト名リソースで使用されている論理ホスト名を変更する

ノードを保守状態にする

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

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

ノードのアンインストールのトラブルシューティング

削除されないクラスタファイルシステムのエントリ

デバイスグループに削除されていないリストがある場合

Oracle Solaris Cluster SNMP イベント MIB の作成、設定、および管理

SNMP イベント MIB を有効にする

SNMP イベント MIB を無効にする

SNMP イベント MIB を変更する

SNMP ホストがノード上の SNMP トラップを受信できるようにする

SNMP ホストがノード上の SNMP トラップを受信できないようにする

SNMP ユーザーをノードに追加する

SNMP ユーザーをノードから削除する

負荷制限の設定

ノードに負荷制限を設定する

サービスまたは管理エージェントのポート番号の変更

共通エージェントコンテナを使用して、サービスまたは管理エージェントのポート番号を変更する

ゾーンクラスタ管理タスクの実行

ゾーンクラスタを削除する

ゾーンクラスタからファイルシステムを削除する

ゾーンクラスタからストレージデバイスを削除する

トラブルシューティング

グローバルクラスタ外でのアプリケーションの実行

非クラスタモードで起動したノードから Solaris Volume Manager メタセットを取得する

破損したディスクセットの復元

Solaris ボリュームマネージャー ソフトウェア構成を保存する

破損したディスクセットを削除する

Solaris ボリュームマネージャー ソフトウェア構成を再作成する

10.  CPU 使用率の制御の構成

11.  ソフトウェアの更新

12.  クラスタのバックアップと復元

A.  例

索引

クラスタの管理の概要

このセクションでは、グローバルクラスタやゾーンクラスタ全体の管理タスクを実行する方法を説明します。次の表に、これらの管理タスクと、関連する手順を示します。クラスタの管理タスクは通常は大域ゾーンで行います。 ゾーンクラスタを管理するには、そのゾーンクラスタをホストするマシンが 1 台以上クラスタモードで起動していることが必要です。すべてのゾーンクラスタノードが起動し動作している必要はありません。現在クラスタ外にあるノードがクラスタに再結合すると、構成の変更点が Oracle Solaris Cluster によって再現されます。


注 - デフォルトでは、電源管理は無効になっているため、クラスタに干渉しません。 単一ノードクラスタの電源管理を有効にすると、クラスタは引き続き動作していますが、数秒間使用できなくなる場合があります。 電源管理機能はノードを停止しようとしますが、停止されません。


この章での phys-schost# は、グローバルクラスタのプロンプトを表します。clzonecluster の対話型シェルプロンプトは clzc:schost> です。

表 9-1 タスクリスト : クラスタの管理

タスク
手順
クラスタへのノードの追加または削除
クラスタ名を変更
ノード ID およびそれらの対応するノード名の一覧の表示
クラスタへの新しいノードの追加を許可または拒否
NTP を使用して、クラスタの時刻を変更する
ノードを停止し、SPARC ベースのシステムでは OpenBoot PROM ok プロンプト、x86 ベースのシステムでは GRUB メニューで「Press any key to continue」というメッセージを表示
プライベートホスト名の追加または変更
クラスタノードを保守状態に変更
ノード名の変更
クラスタノードを保守状態から復帰
クラスタノードからソフトウェアをアンインストール
SNMP Event MIB の追加および管理
各ノードの負荷制限の構成
ゾーンクラスタの移動、アプリケーション用ゾーンクラスタの準備、ゾーンクラスタの削除

クラスタ名を変更する方法

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

phys-schost# プロンプトは、グローバルクラスタのプロンプトを表します。この手順は、グローバルクラスタ上で実行します。

この手順では、長形式の Oracle Solaris Cluster コマンドを使用して説明します。多くのコマンドには短縮形もあります。コマンド名の形式の長短を除き、コマンドは同一です。

  1. グローバルクラスタ内にある任意のノード上でスーパーユーザーになります。
  2. 8 ユーティリティーを起動します。
    phys-schost# clsetup

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

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

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

  4. メニューから選択を行なって、画面の指示に従います。
  5. Oracle Solaris Cluster のサービスタグに新しいクラスタ名を反映させる場合は、既存の Oracle Solaris Cluster タグを削除してクラスタを再起動します。

    Oracle Solaris Cluster サービスタグインスタンスを削除するには、クラスタ内のすべてのノードで次のサブステップを完了します。

    1. すべてのサービスタグの一覧を表示します。
      phys-schost# stclient -x
    2. Oracle Solaris Cluster サービスタグインスタンス番号を見つけて、次のコマンドを実行します。
      phys-schost# stclient -d -i service_tag_instance_number
    3. クラスタ内のすべてのノードをリブートします。
      phys-schost# reboot

例 9-1 クラスタ名の変更

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

phys-schost# cluster rename -c dromedary

詳細は、cluster(1CL) および clsetup(1CL) のマニュアルページを参照してください。

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

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

グローバルクラスタまたはゾーンクラスタ用の構成情報を表示するために、スーパーユーザーになる必要はありません。グローバルクラスタのノードから、このプロシージャーの 1 ステップが実行されます。他のステップはゾーンクラスタノードから実行されます。

  1. clnode コマンドを使用して、グローバルクラスタに対するクラスタ構成情報を一覧表示します。
    phys-schost# clnode show | grep Node

    詳細は、clnode(1CL) のマニュアルページを参照してください。

  2. 1 つのゾーンクラスタに対して、複数のノード ID を一覧表示することも可能です。

    ゾーンクラスタノードは、実行中のグローバルクラスタノードと同じノード ID を持っています。

    phys-schost# zlogin sczone clnode -v | grep Node

例 9-2 ノード名のノードID へのマップ

次の例は、グローバルクラスタに対するノード ID の割り当てを示しています。

phys-schost# 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

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

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

phys-schost# プロンプトは、グローバルクラスタのプロンプトを表します。この手順は、グローバルクラスタ上で実行します。

この手順では、長形式の Oracle Solaris Cluster コマンドを使用して説明します。多くのコマンドには短縮形もあります。コマンド名の形式の長短を除き、コマンドは同一です。

  1. グローバルクラスタ内にある任意のノード上でスーパーユーザーになります。
  2. clsetup ユーティリティーを起動します。
    phys-schost# clsetup

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

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

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

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

例 9-3 新しいマシンがグローバルクラスタに追加されないようにする

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

phys-schost# claccess deny -h hostname

例 9-4 すべての新しいマシンがグローバルクラスに追加されることを許可する

clsetup ユーティリティーにより、claccess コマンドを生成します。次の例は、すべての新しいマシンをクラスタに追加できるようにする claccess コマンドを示しています。

phys-schost# claccess allow-all

例 9-5 グローバルクラスタに追加される新しいマシンを指定する

clsetup ユーティリティーにより、claccess コマンドを生成します。次の例は、1 台の新しいマシンをクラスタに追加できるようにする claccess コマンドを示しています。

phys-schost# claccess allow -h hostname

例 9-6 認証を標準 UNIX に設定する

clsetup ユーティリティーにより、claccess コマンドを生成します。次の例は、クラスタに参加している新規ノードの標準 UNIX 認証に対し、リセットを行う claccess コマンドを示しています。

phys-schost# claccess set -p protocol=sys

例 9-7 認証を DES に設定する

clsetup ユーティリティーにより、claccess コマンドを生成します。次の例は、クラスタに参加している新規ノードの DES 認証を使用する claccess コマンドを示しています。

phys-schost# claccess set -p protocol=des

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

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

Oracle Solaris Cluster ソフトウェアは、NTP を使用して、クラスタノード間で時刻を同期させています。グローバルクラスタの時刻の調整は、ノードが時刻を同期するときに、必要に応じて自動的に行われます。詳細は、『Oracle Solaris Cluster Concepts Guide 』および http://download.oracle.com/docs/cd/E19065-01/servers.10k/ の『Network Time Protocol's User's Guide』を参照してください。


注意

注意 - NTP を使用する場合、クラスタの稼動中はクラスタの時刻を調整しないでください。daterdate、または svcadm コマンドを使用した対話形式で、または cron スクリプト内で、時刻を調整しないでください。詳細は、date(1)rdate(1M)svcadm(1M)、または cron(1M) のマニュアルページを参照してください。ntpd(1M) のマニュアルページは、service/network/ntp の Oracle Solaris 11 パッケージで配布されています。


phys-schost# プロンプトは、グローバルクラスタのプロンプトを表します。この手順は、グローバルクラスタ上で実行します。

この手順では、長形式の Oracle Solaris Cluster コマンドを使用して説明します。多くのコマンドには短縮形もあります。コマンド名の形式の長短を除き、コマンドは同一です。

  1. グローバルクラスタ内にある任意のノード上でスーパーユーザーになります。
  2. グローバルクラスタを停止します。
    phys-schost# cluster shutdown -g0 -y -i 0
  3. SPARC ベースのシステムではノードが ok プロンプトを表示し、x86 ベースのシステムでは GRUB メニューで「Press any key to continue」というメッセージが表示されていることを確認します。
  4. 非クラスタモードでノードをブートします。
    • SPARC ベースのシステム上で、次のコマンドを実行します。

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

      # shutdown -g -y -i0
      
      Press any key to continue
    1. GRUB メニューで矢印キーを使用して該当する Oracle Solaris エントリを選択し、e と入力してコマンドを編集します。

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

      GRUB ベースのブートについては、『Booting and Shutting Down Oracle Solaris on x86 Platforms』の「Booting an x86 Based System Interactively」を参照してください。

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

      GRUB ブートパラメータ画面が表示されます。

    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/kernel/$ISADIR/unix _B $ZFS-BOOTFS -x
    4. Enter キーを押して変更を受け入れ、ブートパラメータの画面に戻ります。

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

    5. b と入力して、ノードを非クラスタモードでブートします。

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


  5. 単一のノードで、date コマンドを実行して時刻を設定します。
    phys-schost# date HHMM.SS
  6. ほかのマシンで、rdate(1M) コマンドを実行し、時刻をこのノードに同期化します。
    phys-schost# rdate hostname
  7. 各ノードを起動し、クラスタを再起動します。
    phys-schost# reboot
  8. すべてのクラスタノードで変更が行われたことを確認します。

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

    phys-schost# date

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

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

phys-schost# プロンプトは、グローバルクラスタのプロンプトを表します。この手順は、グローバルクラスタ上で実行します。

この手順では、長形式の Oracle Solaris Cluster コマンドを使用して説明します。多くのコマンドには短縮形もあります。コマンド名の形式の長短を除き、コマンドは同一です。

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

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

    tc_port_number

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

  2. clnode evacuate コマンドを使用してから、shutdown コマンドを使用することで、クラスタノードを正常に停止します。

    clnode evacuate コマンドは、すべてのデバイスグループを、指定ノードから次に優先されるノードに切り替えます。またこのコマンドは、グローバルクラスタの指定した投票ノードから、次に優先される投票ノードへ、すべてのリソースグループを切り替えます。

    phys-schost# clnode evacuate node
    # shutdown -g0 -y

    注意

    注意 - クラスタコンソールで send brk を使用して、クラスタノードをシャットダウンしないでください。


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

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

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

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


注意

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


phys-schost# プロンプトは、グローバルクラスタのプロンプトを表します。この手順は、グローバルクラスタ上で実行します。

この手順では、長形式の Oracle Solaris Cluster コマンドを使用して説明します。多くのコマンドには短縮形もあります。コマンド名の形式の長短を除き、コマンドは同一です。

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

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

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

    • プライベートホスト名を使用するためにカスタム構成されたアプリケーション

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

    clresource コマンドの使用については、clresource(1CL) のマニュアルページおよび『Oracle Solaris Cluster Data Services Planning and Administration Guide』を参照してください。

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

    svcadm コマンドを使用して、NTP デーモンをシャットダウンします。NTP デーモンについての詳細は、svcadm(1M) のマニュアルページを参照してください。

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

    クラスタ内の 1 つのノードでのみユーティリティーを実行します。詳細は、clsetup(1CL) のマニュアルページを参照してください。


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


    clsetup ユーティリティーの代わりに clnode コマンドを実行して、プライベートホスト名を変更することもできます。次の例では、クラスタノード名は pred1 です。次の clnode コマンドを実行したら、手順 6 に進みます。

    phys-schost# /usr/cluster/bin/clnode set -p privatehostname=New-private-nodename pred1
  4. clsetup ユーティリティーで、プライベートホスト名のオプションの番号を入力します。
  5. clsetup ユーティリティーで、プライベートホスト名を変更するためのオプションの番号を入力します。

    表示される質問に答えます。変更しようとしているプライベートホスト名のノード名 (clusternode<nodeid> -priv) および新しいプライベートホスト名を入力してください。

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

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

    phys-schost# nscd -i hosts
  7. NTP 構成またはインクルードファイルでプライベートホスト名を変更した場合は、各ノードの NTP ファイルを更新します。NTP 構成ファイル (/etc/inet/ntp.conf) 内のプライベートホスト名を変更し、NTP 構成ファイル (/etc/inet/ntp.conf.include) にピアホストエントリまたはピアホストのインクルードファイルへのポインタがある場合は、各ノードのこのファイルを更新します。NTP インクルードファイルのプライベートホスト名を変更した場合は、各ノードの /etc/inet/ntp.conf.sc ファイルを更新します。
    1. 任意のエディタを使用してください。

      この手順をインストール時に行う場合は、構成するノードの名前を削除する必要があります。通常、ntp.conf.sc ファイルは各クラスタノード上で同じです。

    2. すべてのクラスタノードから新しいプライベートホスト名に ping を実行できることを確認します。
    3. NTP デーモンを再起動します。

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

      NTP デーモンを再起動するには、svcadm コマンドを使用します。

      # svcadm enable svc:network/ntp:default
  8. 手順 1 で無効にしたデータサービスリソースとそのほかのアプリケーションをすべて有効にします。
    phys-schost# clresource enable resource[,...]

    clresource コマンドの使用については、clresource(1CL) のマニュアルページおよび『Oracle Solaris Cluster Data Services Planning and Administration Guide』を参照してください。

例 9-8 プライベートホスト名を変更する

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

[Disable all applications and data services as necessary.]
phys-schost-1# svcadm disable ntp
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.sc
 ...
 peer clusternode1-priv
 peer clusternode4-priv
 peer clusternode3-priv
phys-schost-1# ping clusternode4-priv
phys-schost-1# svcadm enable ntp
[Enable all applications and data services disabled at the beginning of the procedure.]

ノード名を変更する

Oracle Solaris Cluster 構成の一部であるノードの名前を変更できます。ノード名を変更する前に Oracle Solaris ホスト名を変更する必要があります。ノード名を変更するには、clnode rename コマンドを使用します。

次の説明は、グローバルクラスタで動作しているすべてのアプリケーションに該当します。

  1. グローバルクラスタでは、スーパーユーザーになるか、solaris.cluster.modify RBAC の承認を提供する役割になります。
  2. Oracle Solaris 構成のパートナーシップにある Oracle Solaris Cluster Geographic Edition クラスタのノードの名前を変更する場合は、追加の手順を行う必要があります。

    Geographic Edition クラスタおよびノードの詳細は、『Oracle Solaris Cluster Geographic Edition System Administration Guide』の第 5 章「Administering Cluster Partnerships」を参照してください。

    名前変更手順を行なっているクラスタが保護グループのプライマリクラスタで、保護グループのアプリケーションをオンラインにしておく場合は、名前変更手順を行なっている間、保護グループをセカンダリクラスタに切り替えることができます。

  3. 『Oracle Solaris Administration: Common Tasks』の「How to Change a System’s Identity (nodename)」の手順を完了して (ただし、手順の最後にあるリブートは実行しない)、Oracle Solaris のホスト名を変更します。

    代わりに、この手順を完了したあと、クラスタの停止を実行します。

  4. すべてのクラスタノードを非クラスタモードでブートします。
    ok> boot -x
  5. Oracle Solaris のホスト名を変更したノード上で、非クラスタモードでノードの名前を変更し、名前を変更したホストごとに cmd コマンドを実行します。

    一度に 1 つのノード名を変更します。

    # clnode rename -n newnodename oldnodename
  6. クラスタで実行されるアプリケーション内の以前のホスト名への既存の参照を更新します。
  7. コマンドメッセージとログファイルをチェックして、ノード名が変更されたことを確認します。
  8. すべてのノードをクラスタモードで再起動します。
    # sync;sync;sync;reboot
  9. ノードに新しい名前が表示されていることを確認します。
    # clnode status -v
  10. Geographic Edition クラスタノード上で名前を変更していて、名前が変更されたノードを含むクラスタのパートナークラスタが引き続き以前のノード名を参照している場合、保護グループの同期状態はエラーとして表示されます。

    geopg update <pg> を使用して、名前が変更されたノードが含まれているパートナークラスタのいずれかのノードから保護グループを更新する必要があります。その手順の完了後、geopg start -e global <pg> コマンドを実行します。 あとで、名前が変更されたノードのクラスタに保護グループを再び切り替えることができます。

  11. 論理ホスト名リソースの hostnamelist プロパティーを変更することを選択できます。

    この省略可能な手順については、「既存の Oracle Solaris Cluster の論理ホスト名リソースで使用されている論理ホスト名を変更する」を参照してください。

既存の Oracle Solaris Cluster の論理ホスト名リソースで使用されている論理ホスト名を変更する

「ノード名を変更する」の手順に従ってノード名を変更する前または変更したあとに、論理ホスト名リソースの hostnamelist プロパティーを変更することもできます。この手順は省略可能です。

  1. グローバルクラスタでは、スーパーユーザーになるか、solaris.cluster.modify RBAC の承認を提供する役割になります。
  2. 必要に応じて、既存の Oracle Solaris Cluster の論理ホスト名リソースのいずれかで使用されている論理ホスト名を変更できます。

    次の手順は、新しい論理ホスト名と連動するように apache-lh-res リソースを構成する方法を示したもので、クラスタモードで実行する必要があります。

    1. クラスタモードで、論理ホスト名を含む Apache リソースグループをオフラインにします。
      # clrg offline apache-rg
    2. Apache 論理ホスト名リソースを無効にします。
      # clrs disable appache-lh-res
    3. 新しいホスト名リストを指定します。
      # clrs set -p HostnameList=test-2 apache-lh-res
    4. hostnamelist プロパティーの以前のエントリに対するアプリケーションの参照を、新しいエントリを参照するように変更します。
    5. 新しい Apache 論理ホスト名リソースを有効にします。
      # clrs enable apache-lh-res
    6. Apache リソースグループをオンラインにします。
      # clrg online -emM apache-rg
    7. 次のコマンドを実行してクライアントをチェックし、アプリケーションが正しく起動したことを確認します。
      # clrs status apache-rs

ノードを保守状態にする

サービスからグローバルクラスタノードを長時間外す場合は、そのノードを保守状態にします。保守状態のノードは、サービス対象中に定足数確立の投票に参加しません。ノードを保守状態にするには、clnode evacuate および cluster shutdown コマンドを使用して、ノードをシャットダウンしておく必要があります。詳細は、clnode(1CL) および cluster(1CL) のマニュアルページを参照してください。


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


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

clquorum disable コマンドを使用して、クラスタノードを保守状態にします。詳細は、clquorum(1CL) のマニュアルページを参照してください。

phys-schost# プロンプトは、グローバルクラスタのプロンプトを表します。この手順は、グローバルクラスタ上で実行します。

この手順では、長形式の Oracle Solaris Cluster コマンドを使用して説明します。多くのコマンドには短縮形もあります。コマンド名の形式の長短を除き、コマンドは同一です。

  1. 保守状態にするグローバルクラスタノード上で、スーパーユーザーになるか、RBAC の承認 solaris.cluster.modify を提供する役割になります。
  2. ノードからすべてのリソースグループおよびデバイスグループを退避させます。

    clnode evacuate コマンドは、すべてのリソースグループとデバイスグループを切り替えます。

    phys-schost# clnode evacuate node
  3. 退避させたノードをシャットダウンします。
    phys-schost# shutdown -g0 -y -i 0
  4. クラスタ内の別のノード上で、スーパーユーザーになるか、RBAC の承認 solaris.cluster.modify を提供する役割になり、手順 3 でシャットダウンしたノードを保守状態にします。
    phys-schost# clquorum disable  node
    node

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

  5. グローバルクラスタノードが保守状態にあることを確認します。
    phys-schost# clquorum status node

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

例 9-9 グローバルクラスタノードを保守状態にする

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

[On the node to be put into maintenance state:]
phys-schost-1# clnode evacuate 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

参照

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

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

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

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

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


注意

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


phys-schost# プロンプトは、グローバルクラスタのプロンプトを表します。この手順は、グローバルクラスタ上で実行します。

この手順では、長形式の Oracle Solaris Cluster コマンドを使用して説明します。多くのコマンドには短縮形もあります。コマンド名の形式の長短を除き、コマンドは同一です。

  1. グローバルクラスタの、保守状態のノード以外の任意のノード上で、スーパーユーザーになるか、RBAC の承認 solaris.cluster.modify を提供する役割になります。
  2. グローバルクラスタ構成内にあるノードの数に応じて、次の手順のいずれかを実行します。
    • クラスタ構成内に 2 つのノードがある場合は、手順 4 に進みます。

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

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

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

    phys-schost# clquorum reset
    reset

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

  4. 保守状態を解除するノードを起動します。
  5. 定足数投票数を確認します。
    phys-schost# clquorum status

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

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

次に、クラスタノードの定足数投票数をリセットして、その定足数デバイスをデフォルトに戻し、その結果を確認する例を示します。cluster status の出力では、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
`

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

完全に確立されているクラスタ構成からグローバルクラスタノードを切断する前に、グローバルクラスタノードから Oracle Solaris Cluster ソフトウェアを構成解除するには、この手順を行います。この手順では、クラスタに存在する最後のノードからソフトウェアをアンインストールできます。


注 - クラスタにまだ結合されていない、あるいはまだインストールモードであるノードから Oracle Solaris Cluster ソフトウェアをアンインストールする場合、この手順を使用してはいけません。その代わりに、『Oracle Solaris Cluster ソフトウェアのインストール』の「インストールの問題を修正する方法ために Oracle Solaris Cluster ソフトウェアを構成解除する方法」に進みます。


phys-schost# プロンプトは、グローバルクラスタのプロンプトを表します。この手順は、グローバルクラスタ上で実行します。

この手順では、長形式の Oracle Solaris Cluster コマンドを使用して説明します。多くのコマンドには短縮形もあります。コマンド名の形式の長短を除き、コマンドは同一です。

  1. 作業マップにあるクラスタノードを削除するための前提作業がすべて完了していることを確認します。

    表 8-2 を参照してください。

    この手順を続ける前に、clnode remove を使用してクラスタ構成からノードを削除します。その他の手順には、クラスタのノード認証リストへのアンインストール対象のノードの追加、ゾーンクラスタのアンインストールなどが含まれる場合があります。


    注 - ノードを構成解除して、Oracle Solaris Cluster ソフトウェアはノードにインストールしたままにするには、clnode remove コマンドを実行したあとに先に進まないでください。


  2. アンインストールするノードでスーパーユーザーになります。
  3. ノードにグローバルデバイス名前空間用の専用パーティションがある場合、グローバルクラスタノードを非クラスタモードでリブートします。
    • SPARC ベースのシステム上で、次のコマンドを実行します。

      # shutdown -g0 -y -i0 ok boot -x
    • x86 ベースのシステム上で、次のコマンドを実行します。

      # shutdown -g0 -y -i0
      ...
                            <<< Current Boot Parameters >>>
      Boot path: /pci@0,0/pci8086,2545@3/pci8086,1460@1d/pci8086,341a@7,1/
      sd@0,0:a
      Boot args:
      
      Type    b [file-name] [boot-flags] <ENTER>  to boot with options
      or      i <ENTER>                           to enter boot interpreter
      or      <ENTER>                             to boot with defaults
      
                        <<< timeout in 5 seconds >>>
      Select (b)oot or (i)nterpreter: b -x
  4. /etc/vfstab ファイルから、グローバルにマウントされるすべてのファイルシステムエントリを削除します。ただし、/global/.devices グローバルマウントを除きます。
  5. ノードを再起動して非クラスタモードにします。
    • SPARC ベースのシステムで、次のコマンドを実行します。
      ok boot -x
    • x86 ベースのシステムで、次のコマンドを実行します。
      1. GRUB メニューで矢印キーを使用して該当する Oracle Solaris エントリを選択し、e と入力してコマンドを編集します。

        GRUB ベースのブートについては、『Booting and Shutting Down Oracle Solaris on x86 Platforms』の「Booting an x86 Based System to a Specified State (Task Map)」を参照してください。

      2. ブートパラメータ画面で矢印キーを使用して kernel エントリを選択し、e と入力してエントリを編集します。
      3. コマンドに -x を追加して、システムが非クラスタモードで起動するように指定します。
      4. Enter キーを押して変更を承諾し、ブートパラメータ画面に戻ります。

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

      5. b と入力して、ノードを非クラスタモードで起動します。

        注 - カーネルブートパラメータコマンドへのこの変更は、システムをブートすると無効になります。次にノードをリブートする際には、ノードはクラスタモードでブートします。非クラスタモードで起動するには、上記の手順を実行してもう一度カーネルのブートパラメータコマンドに -x オプションを追加してください。


  6. Oracle Solaris Clusterパッケージのファイルが何も含まれていない、root (/) ディレクトリなどのディレクトリへ移動します。
    phys-schost# cd /
  7. ノードを構成解除し、Oracle Solaris Cluster ソフトウェアを削除するには、次のコマンドを実行します。
    phys-schost# scinstall -r [-b bename]
    -r

    クラスタノードから、クラスタの構成情報を削除し、Oracle Solaris Cluster のフレームワークおよびデータサービスソフトウェアをアンインストールします。その後、このノードを再インストールしたり、クラスタから削除したりできます。

    -b bootenvironmentname

    アンインストール処理の完了後のブート先となる新しいブート環境の名前を指定します。名前の指定は省略可能です。ブート環境の名前を指定しなかった場合は、名前が自動的に生成されます。

    詳細については、scinstall(1M) のマニュアルページを参照してください。

  8. アンインストールが完了したあとに、このノードに Oracle Solaris Cluster ソフトウェアを再インストールするつもりの場合は、ノードをリブートして新しいブート環境でブートします。
  9. このクラスタ上で Oracle Solaris Cluster ソフトウェアを再インストールしない場合は、ほかのクラスタデバイスからトランスポートケーブルとトランスポートスイッチを切断します (存在する場合)。
    1. アンインストールしたノードが、並列 SCSI インタフェースを使用する記憶装置デバイスに接続されている場合は、トランスポートケーブルを切り離した後で、この記憶装置デバイスのオープン SCSI コネクタに SCSI ターミネータを取り付ける必要があります。

      アンインストールしたノードが、Fibre Channel インタフェースを使用する記憶装置デバイスに接続されている場合は、終端処理は必要ありません。

    2. 切断の手順については、ホストアダプタおよびサーバーに付属しているドキュメントに従います。

    ヒント - グローバルデバイス名前空間の lofi への移行については、「グローバルデバイス名前空間を移行する」を参照してください。


ノードのアンインストールのトラブルシューティング

ここでは、clnode remove コマンドを実行したときに出力される可能性があるエラーメッセージとその対処方法について説明します。

削除されないクラスタファイルシステムのエントリ

次のエラーメッセージは、削除したグローバルクラスタノードに、vfstab ファイルから参照されているクラスタファイルシステムがまだあることを示しています。

Verifying that no unexpected global mounts remain in /etc/vfstab ... failed
clnode:  global-mount1 is still configured as a global mount.
clnode:  global-mount1 is still configured as a global mount.
clnode:  /global/dg1 is still configured as a global mount.
 
clnode:  It is not safe to uninstall with these outstanding errors.
clnode:  Refer to the documentation for complete uninstall instructions.
clnode:  Uninstall failed.

このエラーを修正するためには、「クラスタノードから Oracle Solaris Cluster ソフトウェアをアンインストールする」に戻って、その手順を繰り返す必要があります。clnode remove コマンドを再度実行する前に、この手順 4 が正しく行われているか確認してください。

デバイスグループに削除されていないリストがある場合

次のエラーメッセージは、削除したノードが依然としてデバイスグループにリストされていることを示しています。

Verifying that no device services still reference this node ... failed
clnode:  This node is still configured to host device service "
service".
clnode:  This node is still configured to host device service "
service2".
clnode:  This node is still configured to host device service "
service3".
clnode:  This node is still configured to host device service "
dg1".
 
clnode:  It is not safe to uninstall with these outstanding errors.          
clnode:  Refer to the documentation for complete uninstall instructions.
clnode:  Uninstall failed.

Oracle Solaris Cluster SNMP イベント MIB の作成、設定、および管理

ここでは、SNMP イベント管理情報ベース (MIB) を作成、設定、および管理する方法を説明します。またこのセクションでは、Oracle Solaris Cluster SNMP イベント MIB を有効化、無効化、および変更する方法も説明します。

Oracle Solaris Cluster ソフトウェアでは現在、イベント MIB という MIB を 1 つサポートしています。SNMP マネージャーソフトウェアがクラスタイベントをリアルタイムでトラップします。有効な場合、SNMP マネージャー はトラップ通知を clsnmphost コマンドによって定義されているすべてのホストに自動的に送信します。MIB には、最新の 50 イベントの読み取り専用のテーブルが保持されます。クラスタは多数の通知を生成するので、重要度が warning 以上のイベントだけがトラップ通知として送信されます。この情報は、リブートが実行されると消失します。

SNMP イベント MIB は、sun-cluster-event-mib.mib ファイルで定義されており、/usr/cluster/lib/mib ディレクトリにあります。この定義を使用して、SNMP トラップ情報を解釈できます。

イベント SNMP モジュールのデフォルトのポート番号は 11161 で、SNMP トラップのデフォルトのポートは 11162 です。これらのポート番号は、共通エージェントコンテナのプロパティーファイル (/etc/cacao/instances/default/private/cacao.properties) を変更することによって変更できます。

Oracle Solaris Cluster SNMP イベント MIB の作成、設定、および管理には、次の作業が含まれます。

表 9-2 作業マップ: Oracle Solaris Cluster SNMP イベント MIB の作成、設定、および管理

タスク
手順
SNMP イベント MIB の有効化
SNMP イベント MIB の無効化
SNMP イベント MIB の変更
MIB のトラップ通知を受信するホストリストへの SNMP ホストの追加
SNMP ホストの削除
SNMP ユーザーの追加
SNMP ユーザーの削除

SNMP イベント MIB を有効にする

この手順では、SNMP イベント MIB を有効化する方法を説明します。

phys-schost# プロンプトは、グローバルクラスタのプロンプトを表します。この手順は、グローバルクラスタ上で実行します。

この手順では、長形式の Oracle Solaris Cluster コマンドを使用して説明します。多くのコマンドには短縮形もあります。コマンド名の形式の長短を除き、コマンドは同一です。

  1. スーパーユーザーになるか、RBAC 承認 solaris.cluster.modify を提供する役割になります。
  2. SNMP イベント MIB を有効にします。
    phys-schost-1# clsnmpmib enable [-n node] MIB
    [-n node]

    有効にするイベント MIB がある node を指定します。ノード ID またはノード名を指定できます。このオプションを指定しないと、デフォルトで現在のノードが使用されます。

    MIB

    有効にする MIB の名前を指定します。この場合、MIB 名は event にしてください。

SNMP イベント MIB を無効にする

この手順では、SNMP イベント MIB を無効化する方法を説明します。

phys-schost# プロンプトは、グローバルクラスタのプロンプトを表します。この手順は、グローバルクラスタ上で実行します。

この手順では、長形式の Oracle Solaris Cluster コマンドを使用して説明します。多くのコマンドには短縮形もあります。コマンド名の形式の長短を除き、コマンドは同一です。

  1. スーパーユーザーになるか、RBAC 承認 solaris.cluster.modify を提供する役割になります。
  2. SNMP イベント MIB を無効にします。
    phys-schost-1# clsnmpmib disable -n node MIB
    -n node

    無効にするイベント MIB がある node を指定します。ノード ID またはノード名を指定できます。このオプションを指定しないと、デフォルトで現在のノードが使用されます。

    MIB

    無効にする MIB の種類を指定します。この場合、event を指定してください。

SNMP イベント MIB を変更する

この手順では、SNMP イベント MIB のプロトコルを変更する方法を説明します。

phys-schost# プロンプトは、グローバルクラスタのプロンプトを表します。この手順は、グローバルクラスタ上で実行します。

この手順では、長形式の Oracle Solaris Cluster コマンドを使用して説明します。多くのコマンドには短縮形もあります。コマンド名の形式の長短を除き、コマンドは同一です。

  1. スーパーユーザーになるか、RBAC 承認 solaris.cluster.modify を提供する役割になります。
  2. SNMP イベント MIB のプロトコルを変更します。
    phys-schost-1# clsnmpmib set -n node -p version=value MIB
    -n node

    変更するイベント MIB がある node を指定します。ノード ID またはノード名を指定できます。このオプションを指定しないと、デフォルトで現在のノードが使用されます。

    -p version=value

    MIB で使用する SNMP プロトコルのバージョンを指定します。value は次のように指定します。

    • version=SNMPv2

    • version=snmpv2

    • version=2

    • version=SNMPv3

    • version=snmpv3

    • version=3

    MIB

    サブコマンドが適用される単数または複数の MIB の名前を指定します。この場合、event を指定してください。このオペランドを指定しない場合は、サブコマンドが、すべての MIB を意味するデフォルトのプラス記号 (+) を使用します。MIB オペランドを使用する場合は、ほかのすべてのコマンド行オプションのあとで、MIB を空白区切りのリスト内に指定します。

SNMP ホストがノード上の SNMP トラップを受信できるようにする

この手順では、ノード上の SNMP ホストを、MIB のトラップ通知を受信するホストのリストに追加する方法を説明します。

phys-schost# プロンプトは、グローバルクラスタのプロンプトを表します。この手順は、グローバルクラスタ上で実行します。

この手順では、長形式の Oracle Solaris Cluster コマンドを使用して説明します。多くのコマンドには短縮形もあります。コマンド名の形式の長短を除き、コマンドは同一です。

  1. スーパーユーザーになるか、RBAC 承認 solaris.cluster.modify を提供する役割になります。
  2. ホストを、別のノード上のコミュニティーの SNMP ホストリストに追加します。
    phys-schost-1# clsnmphost add -c SNMPcommunity [-n node] host
    -c SNMPcommunity

    ホスト名とともに使用される SNMP コミュニティー名を指定します。

    ホストを public 以外のコミュニティーに追加する場合は、コミュニティー名 SNMPcommunity を指定してください。add サブコマンドを -c オプションなしで使用すると、このサブコマンドは public をデフォルトのコミュニティー名として使用します。

    指定されたコミュニティー名が存在しない場合、このコマンドはそのコミュニティーを作成します。

    -n node

    クラスタ内の SNMP MIB に対するアクセス権を付与されている SNMP ホストの node の名前を指定します。ノード名またはノード ID を指定できます。このオプションを指定しないと、デフォルトで現在のノードが使用されます。

    host

    クラスタ内の SNMP MIB に対するアクセス権が付与されたホストの名前、IP アドレス、または IPv6 アドレスを指定します。

SNMP ホストがノード上の SNMP トラップを受信できないようにする

この手順では、ノード上の SNMP ホストを、MIB のトラップ通知を受信するホストのリストから削除する方法を説明します。

phys-schost# プロンプトは、グローバルクラスタのプロンプトを表します。この手順は、グローバルクラスタ上で実行します。

この手順では、長形式の Oracle Solaris Cluster コマンドを使用して説明します。多くのコマンドには短縮形もあります。コマンド名の形式の長短を除き、コマンドは同一です。

  1. スーパーユーザーになるか、RBAC 承認 solaris.cluster.modify を提供する役割になります。
  2. 指定のノード上のコミュニティーの SNMP ホストリストからホストを削除します。
    phys-schost-1# clsnmphost remove -c SNMPcommunity -n node host
    remove

    指定のノードから指定の SNMP ホストを削除します。

    -c SNMPcommunity

    SNMP ホストを削除する SNMP コミュニティーの名前を指定します。

    -n node

    構成から削除される SNMP ホストの node の名前を指定します。ノード名またはノード ID を指定できます。このオプションを指定しないと、デフォルトで現在のノードが使用されます。

    host

    構成から削除されるホストの名前、IP アドレス、または IPv6 アドレスを指定します。

    指定の SNMP コミュニティー内のすべてのホストを削除するには、-c オプション付きの host に正符号 (+) を使用します。すべてのホストを削除するには、host に正符号 + を使用します。

SNMP ユーザーをノードに追加する

この手順では、ノード上の SNMP ユーザー構成に SNMP ユーザーを追加する方法を説明します。

phys-schost# プロンプトは、グローバルクラスタのプロンプトを表します。この手順は、グローバルクラスタ上で実行します。

この手順では、長形式の Oracle Solaris Cluster コマンドを使用して説明します。多くのコマンドには短縮形もあります。コマンド名の形式の長短を除き、コマンドは同一です。

  1. スーパーユーザーになるか、RBAC 承認 solaris.cluster.modify を提供する役割になります。
  2. SNMP ユーザーを追加します。
    phys-schost-1# clsnmpuser create -n node -a authentication \ -f password user
    -n node

    SNMP ユーザーが追加されるノードを指定します。ノード ID またはノード名を指定できます。このオプションを指定しないと、デフォルトで現在のノードが使用されます。

    -a authentication

    ユーザーの承認に使用する認証プロトコルを指定します。認証プロトコルの値は SHA または MD5 です。

    -f password

    SNMP ユーザーパスワードを含むファイルを指定します。新しいユーザーを作成する際にこのオプションを指定しないと、コマンドはパスワードを求めるプロンプトを表示します。このオプションは、add サブコマンドとだけ有効です。

    ユーザーパスワードは、次の形式で、独立した行の上に指定します。

    user:password

    パスワードには次に示す文字または空白文字を含めることはできません。

    • ; (セミコロン)

    • : (コロン)

    • \ (バックスラッシュ)

    • \n (復帰改行)

    user

    追加する SNMP ユーザーの名前を指定します。

SNMP ユーザーをノードから削除する

この手順では、ノード上の SNMP ユーザー構成から SNMP ユーザーを削除する方法を説明します。

phys-schost# プロンプトは、グローバルクラスタのプロンプトを表します。この手順は、グローバルクラスタ上で実行します。

この手順では、長形式の Oracle Solaris Cluster コマンドを使用して説明します。多くのコマンドには短縮形もあります。コマンド名の形式の長短を除き、コマンドは同一です。

  1. スーパーユーザーになるか、RBAC 承認 solaris.cluster.modify を提供する役割になります。
  2. SNMP ユーザーを削除します。
    phys-schost-1# clsnmpuser delete -n node user
    -n node

    SNMP ユーザーが削除されるノードを指定します。ノード ID またはノード名を指定できます。このオプションを指定しないと、デフォルトで現在のノードが使用されます。

    user

    削除する SNMP ユーザーの名前を指定します。

負荷制限の設定

負荷制限を設定することによって、ノードまたはゾーンのリソースグループの負荷の自動分散を有効にできます。一連の負荷制限はクラスタノードごとに設定できます。 リソースグループに負荷係数を割り当てると、その負荷係数はノードの定義済み負荷制限に対応します。デフォルトの動作では、リソースグループの負荷がそのリソースグループのノードリスト内の使用可能なすべてのノードに均等に分散されます。

リソースグループは RGM によってリソースグループのノードリストのノード上で起動されるため、ノードの負荷制限を超えることはありません。RGM によってリソースグループがノードに割り当てられると、各ノードのリソースグループの負荷係数が合計され、合計負荷が算出されます。 次に、合計負荷がそのノードの負荷制限と比較されます。

負荷制限は次の項目から構成されます。

1 つのコマンドで強い制限と弱い制限の両方を設定できます。いずれかの制限が明示的に設定されていない場合は、デフォルト値が使用されます。 各ノードの強い負荷制限値と弱い負荷制限値の作成と変更には、clnode create-loadlimitclnode set-loadlimit、および clnode delete-loadlimit コマンドを使用します。 詳細については、clnode(1CL) のマニュアルページを参照してください。

高い優先度を持つようにリソースグループを設定すると、特定のノードから移動させられる可能性が低くなります。preemption_mode プロパティーを設定して、ノードの過負荷が原因でリソースグループが優先度の高いリソースによってノードから横取りされるかどうかを判定することもできます。 concentrate_load プロパティーを使用して、リソースグループの負荷をできるだけ少ないノードに集中させることもできます。 concentrate_load プロパティーのデフォルト値は、FALSE です。


注 - 負荷制限は、グローバルクラスタまたはゾーンクラスタのノード上で設定できます。負荷制限を設定するには、コマンド行、clsetup ユーティリティー、または Oracle Solaris Cluster Manager インタフェースを使用します。 次の手順は、コマンド行を使用して負荷制限を設定する方法を示したものです。


ノードに負荷制限を設定する

  1. グローバルクラスタの任意のノードで、スーパーユーザーになるか、RBAC の承認 solaris.cluster.modify を提供する役割になります。
  2. 負荷分散を使用するノードに対して、負荷制限を作成および設定します。
    # clnode create-loadlimit -p limitname=mem_load -Z zc1 -p softlimit=11 -p hardlimit=20 node1 node2 node3

    この例では、ゾーンクラスタ名は zc1 です。サンプルプロパティーは mem_load で、弱い負荷制限は 11、強い負荷制限は 20 です。強い制限と弱い制限は省略可能な引数で、特に定義しなかった場合、デフォルトは無制限です。 詳細については、clnode(1CL) のマニュアルページを参照してください。

  3. 負荷係数値を各リソースグループに割り当てます。
    # clresourcegroup set -p load_factors=mem_load@50,factor2@1 rg1 rg2

    この例では、2 つのリソースグループ (rg1 と rg2) で負荷係数が設定されています。負荷係数の設定は、ノードの定義済み負荷制限に対応します。 この手順は、リソースグループの作成中に clresourceroup create コマンドを使用して実行することもできます。 詳細は、clresourcegroup(1CL) のマニュアルページを参照してください。

  4. 必要に応じて、既存の負荷を再分散できます (clrg remaster)。
    # clresourcegroup remaster rg1 rg2

    このコマンドにより、リソースグループを現在のマスターからほかのノードに移動し、均等な負荷分散を実現できます。

  5. 必要に応じて、一部のリソースグループに、ほかのリソースグループより高い優先度を与えることができます。
    # clresourcegroup set -p priority=600 rg1

    デフォルトの優先度は 500 です。優先度の値が高いリソースグループは、ノードの割り当てにおいて、優先度の値が低いリソースグループよりも優先されます。

  6. 必要に応じて、Preemption_mode プロパティーを設定できます。
    # clresourcegroup set -p Preemption_mode=No_cost rg1

    HAS_COSTNO_COST、および NEVER オプションについては、clresourcegroup(1CL) のマニュアルページを参照してください。

  7. 必要に応じて、Concentrate_load プロパティーを設定できます。
    # cluster set -p Concentrate_load=TRUE
  8. 必要に応じて、リソースグループ間のアフィニティーを指定できます。

    強い正または負のアフィニティーは負荷分散より優先されます。強いアフィニティーや強い負荷制限が無効になることはありません。 強いアフィニティーと強い負荷制限の両方を設定すると、両方の制限が満たされなかった場合に一部のリソースグループが強制的にオフラインのままになることがあります。

    次の例では、ゾーンクラスタ zc1 のリソースグループ rg1 とゾーンクラスタ zc2 のリソースグループ rg2 の間の強い正のアフィニティーを指定しています。

    # clresourcegroup set -p RG_affinities=++zc2:rg2 zc1:rg1
  9. クラスタ内のすべてのグローバルクラスタノードとゾーンクラスタノードの状態を確認します。
    # clnode status -Z all -v

    出力には、ノードで定義された負荷制限設定がすべて含まれます。

サービスまたは管理エージェントのポート番号の変更

クラスタをブートすると、共通エージェントコンテナが自動的に起動します。


注 - ノードに関する情報を表示しようとしたときにシステムエラーメッセージが表示された場合は、共通エージェントコンテナのネットワークバインドアドレスパラメータが正しい値である 0.0.0.0 に設定されていることを確認してください。

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

1. network-bind-address パラメータの値を表示します。

# cacaoadm get-param network-bind-address network-bind-address=0.0.0.0

2. パラメータ値が 0.0.0.0 に設定されていない場合は、この値に変更します。

# cacaoadm stop # cacaoadm set-param network-bind-address=0.0.0.0 # cacaoadm start


共通エージェントコンテナを使用して、サービスまたは管理エージェントのポート番号を変更する

共通エージェントコンテナサービスのデフォルトのポート番号が実行中の別のプロセスと競合する場合、cacaoadm コマンドを使用し、クラスタの各ノード上で、競合しているサービスまたは管理エージェントのポート番号を変更できます。

  1. すべてのクラスタ上で 共通エージェントコンテナ 管理デーモンを停止します。
    # /opt/bin/cacaoadm stop
  2. get-param サブコマンドを使用して、共通エージェントコンテナサービスによって現在使用されているポート番号を取得します。
    # /opt/bin/cacaoadm get-param parameterName

    cacaoadm コマンドを使用して、次の共通エージェントコンテナサービスのポート番号を変更できます。次のリストは、共通エージェントコンテナで管理できるサービスとエージェント、および対応するパラメータ名の例を示しています。

    JMX コネクタポート

    jmxmp-connector-port

    SNMP ポート

    snmp-adapter-port

    SNMP トラップポート

    snmp-adapter-trap-port

    コマンドストリームポート

    commandstream-adapter-port


    注 - ノードに関する情報を表示しようとしたときにシステムエラーメッセージが表示された場合は、共通エージェントコンテナのネットワークバインドアドレスパラメータが正しい値である 0.0.0.0 に設定されていることを確認してください。

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

    1. network-bind-address パラメータの値を表示します。

    # cacaoadm get-param network-bind-address network-bind-address=0.0.0.0

    2. パラメータ値が 0.0.0.0 に設定されていない場合は、この値に変更します。

    # cacaoadm stop # cacaoadm set-param network-bind-address=0.0.0.0 # cacaoadm start


  3. ポート番号を変更します。
    # /opt/bin/cacaoadm set-param parameterName=parameterValue
  4. クラスタの各ノードで、手順 3 を繰り返します。
  5. すべてのクラスタノードで 共通エージェントコンテナ 管理デーモンを再起動します。
    # /opt/bin/cacaoadm start