Sun Cluster データサービスの計画と管理 (Solaris OS 版)

リソースグループからノードを削除する

ノードまたはゾーンをリソースグループから削除する手順は、リソースグループがスケーラブルリソースグループであるか、またはフェイルオーバーリソースグループであるかによって異なります。詳細の手順については、以下の節を参照してください。

この手順を実行するには、次の情報が必要になります。

さらに、削除するノードまたはゾーン上でリソースグループがマスターされていないことを確認してください。削除するノードまたはゾーン上でマスターされている場合は、clresourcegroup コマンドを実行し、そのノードまたはゾーンでリソースグループをオフラインに切り替えてください。次の clresourcegroup コマンドは、指定されたノードまたはゾーンからリソースグループをオフラインにします。この場合、new‐masters にこのノードまたはゾーンが含まれていてはなりません。


# clresourcegroup switch -n new-masters resource-group
-n new-masters

このリソースグループを現在マスターできるノードまたはゾーンを指定します。

resource-group

切り替えるリソースグループの名前を指定します。このリソースグループは、削除するノードまたはゾーン上でマスターされます。

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


注意 – 注意 –

すべてのリソースグループからノードまたはゾーンを削除する場合で、スケーラブルサービス構成を使用するときは、最初にスケーラブルリソースグループからそのノードまたはゾーンを削除してください。続いて、フェイルオーバーグループからそのノードまたはゾーンを削除してください。


Procedureスケーラブルリソースグループからノードを削除する

スケーラブルサービスは、次に示すように 2 つのリソースグループとして構成されます。

スケーラブルリソースグループの RG_dependencies プロパティーは、フェイルオーバーリソースグループへの依存性を使用してスケーラブルグループを構成するように設定されます。このプロパティーの詳細については、付録 B 「標準プロパティー」を参照してください。

スケーラブルサービス構成の詳細は、『Sun Cluster の概念 (Solaris OS 版)』を参照してください。

スケーラブルリソースグループからノードまたはゾーンを削除すると、そのスケーラブルサービスはそのノードまたはゾーン上でオンラインにすることができなくなります。スケーラブルリソースグループからノードまたはゾーンを削除するには、以下の作業を行なってください。

  1. スケーラブルリソースグループをマスターできるノードまたはゾーンのリスト (nodelist リソースグループプロパティー) からノードまたはゾーンを削除します。


    # clresourcegroup set [-n node-zone-list] scalable-resource-group
    
    -n node-zone-list

    このリソースグループをマスターできるゾーンの、コンマ区切りの順序付けされたリストを指定します。このリソースグループは、このノード以外のすべてのノードでオフラインに切り替えられます。リスト内の各エントリの形式は node:zone です。この形式では、 node はノード名を指定し、zone は非大域 Solaris ゾーンの名前を指定します。大域ゾーンを指定する、または非大域ゾーンを持たないノードを指定するには、node のみを指定します。

    このリストはオプションです。このリストを省略すると、Nodelist プロパティーがクラスタ内のすべてのノードに対して設定されます。

    scalable-resource-group

    ノードまたはゾーンが削除されるリソースグループの名前を指定します。

  2. (省略可能) 共有アドレスリソースが入ったフェイルオーバーリソースグループからノードまたはゾーンを削除します。

    詳細については、「共有アドレスリソースを含むフェイルオーバーリソースグループからノードを削除する」を参照してください。

  3. (省略可能) スケーラブルリソースの Load_balancing_weights プロパティーを更新し、リソースグループから削除するノードまたはゾーンのウエイトを削除します。

参照

clresourcegroup(1CL) のマニュアルページ。

Procedureフェイルオーバーリソースグループからノードを削除する

フェイルオーバーリソースグループからノードまたはゾーンを削除するには、以下の作業を行なってください。


注意 – 注意 –

すべてのリソースグループからノードまたはゾーンを削除する場合で、スケーラブルサービス構成を使用するときは、最初にスケーラブルリソースグループからそのノードまたはゾーンを削除してください。続いて、この方法を使用してフェイルオーバーグループからノードまたはゾーンを削除してください。



注 –

フェイルオーバーリソースグループに、スケーラブルサービスが使用する共有アドレスリソースが含まれる場合は、「共有アドレスリソースを含むフェイルオーバーリソースグループからノードを削除する」を参照してください。


  1. このリソースグループをマスターできるすべてのノードを含めるように、ノードリストを更新します。

    この手順はノードまたはゾーンを削除してノードリストの値を上書きするため、リソースグループをマスターできるすべてのノードまたはゾーンをここに含める必要があります。


    # clresourcegroup set [-n node-zone-list] failover-resource-group
    
    -n node-zone-list

    このリソースグループをマスターできるゾーンの、コンマ区切りの順序付けされたリストを指定します。このリソースグループは、このノード以外のすべてのノードでオフラインに切り替えられます。リスト内の各エントリの形式は node:zone です。この形式では、 node はノード名を指定し、zone は非大域 Solaris ゾーンの名前を指定します。大域ゾーンを指定する、または非大域ゾーンを持たないノードを指定するには、node のみを指定します。

    このリストはオプションです。このリストを省略すると、Nodelist プロパティーがクラスタ内のすべてのノードに対して設定されます。

    failover-resource-group

    ノードまたはゾーンが削除されるリソースグループの名前を指定します。

  2. リソースグループ内の各リソース用に構成した IP ネットワークマルチパスグループの現在のリストを表示します。


    # clresourcegroup show -v failover-resource-group | grep -i netiflist
    
  3. ノードまたはゾーンの削除によって影響を受けるネットワークリソースの netiflist を更新します。

    この手順は netiflist の値を上書きするため、すべての IP ネットワークマルチパスグループをここに含める必要があります。


    # clresource set -p netiflist=netiflist network-resource
    

    注 –

    上記コマンド行の出力は、ノード 名によってノードを識別します。ノード ID を識別するには、コマンド clnode show -v | grep -i "Node ID" を実行してください。


    -p netiflist=netiflist

    各ノード上の IP ネットワークマルチパスグループをコンマで区切って指定します。netiflist の各要素は、netif@node の形式にする必要があります。netif は IP ネットワークマルチパス グループ名 (sc_ipmp0 など) として指定できます。ノードは、ノード名またはノード ID (sc_ipmp0@1sc_ipmp@phys-schost-1 など) で識別できます。

    network-resource

    netiflist エントリ上でホストされているネットワークリソースの名前を指定します。


    注 –

    Sun Cluster では、 netif にアダプタ名を使用できません。


  4. 更新された情報を確認します。


    # clresourcegroup show -vfailover-resource-group | grep -i nodelist
    # clresourcegroup show -vfailover-resource-group | grep -i netiflist 
    

Procedure共有アドレスリソースを含むフェイルオーバーリソースグループからノードを削除する

スケーラブルサービスが使用する共有アドレスリソースを含むフェイルオーバーリソースグループでは、ノードまたはゾーンは次の場所に現れます。

フェイルオーバーリソースグループのノードリストからノードまたはゾーンを削除するには、「フェイルオーバーリソースグループからノードを削除する」に示されている作業を行なってください。

共有アドレスリソースの auxnodelist を変更するには、共有アドレスリソースを削除して作成し直す必要があります。

フェイルオーバーグループのノードリストからノードまたはゾーンを削除すると、そのノードまたはゾーン上の共有アドレスリソースを継続して使用し、スケーラブルサービスを提供できます。共有アドレスリソースを継続して使用するには、共有アドレスリソースの auxnodelist にそのノードまたはゾーンを追加する必要があります。auxnodelist にノードまたはゾーンを追加するには、以下の作業を行なってください。


注 –

以下の作業は、共有アドレスリソースの auxnodelist からノードまたはゾーンを削除するためにも使用できます。auxnodelist からノードまたはゾーンを削除するには、共有アドレスリソースを削除して作成し直す必要があります。


  1. スケーラブルサービスリソースをオフラインに切り替えます。

  2. フェイルオーバーリソースグループから共有アドレスリソースを削除します。

  3. 共有アドレスリソースを作成します。

    フェイルオーバーリソースグループから削除したノードのノード ID またはノード名、あるいはゾーンのゾーン名を auxnodelist に追加します。


    # clressharedaddress create -g failover-resource-group \
     -X new-auxnodelist shared-address 
    
    failover-resource-group

    共有アドレスリソースを含めるために使用されたフェイルオーバーリソースグループの名前

    new-auxnodelist

    妥当なノードまたはゾーンの追加または削除によって変更された新しい auxnodelist

    shared-address

    共有アドレスの名前

例 – リソースグループからのノードの削除

次に、リソースグループ (resource-group-1) からノード (phys-schost-3) を削除する例を示します。このリソースグループは、論理ホスト名リソース (schost-1) を含んでいます。


# clresourcegroup show -v resource-group-1 | grep -i nodelist
Nodelist:       phys-schost-1 phys-schost-2
                                             phys-schost-3
# clresourcegroup set -n phys-schost-1,phys-schost-2 resource-group-1
# clresourcegroup show -v resource-group-1 | grep -i netiflist
( Res property name: NetIfList
Res property class: extension
( List of IP ネットワークマルチパス 
interfaces on each node
( Res property type: stringarray
 Res property value: sc_ipmp0@1 sc_ipmp0@2
                     sc_ipmp0@3

(sc_ipmp0@3 is the IP ネットワークマルチパス group to be removed.)

# clresource set  -p  netiflist=sc_ipmp0@1,sc_ipmp0@2 schost-1
# clresourcegroup show -v resource-group-1 | grep -i nodelist
Nodelist:       phys-schost-1 phys-schost-2
# clresourcegroup show -v resource-group-1 | grep -i netiflist
 Res property value: sc_ipmp0@1 sc_ipmp0@2