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

重要なサービスに優先権を指定する

クラスタは、重要なサービスと重要でないサービス組み合わせて動作するように構成できます。たとえば、重要な顧客サービスをサポートするデータベースは、重要でない研究タスクと同じクラスタで実行できます。

重要でないサービスが重要なサービスに影響を与えないようにするには、重要なサービスに優先権を指定します。重要なサービスに優先権を指定することによって、重要でないサービスが重要なサービスと同じノード上で動作することを防ぐことができます。

すべてのノードが操作可能であるとき、重要なサービスは重要でないサービスとは異なるノード上で動作します。しかし、重要なサービスに障害が発生すると、このサービスは重要でないサービスが動作しているノードにフェイルオーバーします。このような状況では、重要でないサービスは直ちにオフラインになり、重要なサービスはコンピューティングリソースを完全に利用できるようになります。

重要なサービスに優先権を指定するには、重要でない各サービスのリソースグループに、重要なサービスを含むリソースグループに対する強い否定的なアフィニティーを宣言します。


# clresourcegroup set|create -p RG_affinities=--critical-rg noncritical-rg
noncritical-rg

重要でないサービスを含むリソースグループを指定します。このリソースグループは、別のリソースグループに対する強い否定的なアフィニティーを宣言するリソースグループです。

-p RG_affinities=--critical-rg

重要なサービスを含むリソースグループを指定します。このリソースグループは、強い否定的なアフィニティーを宣言する対象のリソースグループです。

強い否定的なアフィニティーのソースのリソースグループは、そのアフィニティーのターゲットのリソースグループから離れます。

強い否定的なアフィニティーのターゲットをオフラインにした場合、強い否定的なアフィニティーのソースは、すべてのノード上でオフラインになる場合があります。このような状況では、強い否定的なアフィニティーのソースは自動的にオンラインになります。通常、ノードリストのノードの順序および宣言されたアフィニティーに基づいて、リソースグループは最も優先されるノード上でオンラインになります。

たとえば、リソースグループ rg1 にリソースグループ rg2 に対する強い否定的なアフィニティーが宣言されていると仮定します。最初はリソースグループ rg1 がすべてのノード上でオフラインになりますが、リソースグループ rg2 は 1 つのノード上でオンラインになります。管理者が rg2 をオフラインにすると、rg1 は自動的にオンラインになります。

clresourcegroup suspend コマンドを使用すると、強いアフィニティーまたはクラスタ再構成により強い否定的なアフィニティーのソースが自動的にオンラインになるのを防止できます。


例 2–46 重要なサービスに優先権を指定する

この例では、重要でないリソースグループ ncrg1ncrg2 を変更して、重要なリソースグループ mcdbrg に重要でないリソースグループよりも高い優先権を与えるためのコマンドを示します。この例では、リソースグループ mcdbrgncrg1、および ncrg2 が存在していると仮定します。


# clresourcegroup set -p RG_affinities=--mcdbrg ncrg1 ncrg2