Oracle Clusterwareは、次の順序でサーバー・プールに新しいサーバーを割り当てます。
汎用サーバー・プール
ユーザー作成のサーバー・プール
空きサーバー・プール
次の条件が満たされるまで、Oracle Clusterwareはサーバー・プールへのサーバーの割当てを続行します。
重要度順にすべてのサーバー・プールが最小値まで一杯になるまで(MIN_SIZE)。
重要度順にすべてのサーバー・プールが最大値まで一杯になるまで(MAX_SIZE)。
デフォルトでは、サーバー・プールに配置されていないサーバーは、空きサーバー・プールに割り当てられます。
空きサーバー・プールのIMPORTANCE属性は変更できます。空きサーバー・プールのIMPORTANCE属性の値が、その他の1つ以上のサーバー・プールよりも大きく、これらのMIN_SIZE属性の値が満たされた時点で、残りのサーバーは空きサーバー・プールに割り当てられます。
サーバーをクラスタに追加する場合、いくつかの問題が発生します。
表3-2で構成されているサーバー・プールについて考えてみます。
表3-2 サーバー・プール属性の構成例
| NAME | IMPORTANCE | MIN_SIZE | MAX_SIZE | PARENT_POOLS | EXCLUSIVE_POOLS |
|---|---|---|---|---|---|
sp1 |
1 |
1 |
10 |
|
|
sp2 |
3 |
1 |
6 |
|
|
sp3 |
2 |
1 |
2 |
|
|
sp2_1 |
2 |
1 |
5 |
sp2 |
S123 |
sp2_2 |
1 |
1 |
5 |
sp2 |
S123 |
たとえば、クラスタ内にサーバーがなく、すべてのサーバー・プールが空であるとします。
server1というサーバーをクラスタに追加するには、次の手順を実行します。
サーバーからプールへの割当てを開始します。
Oracle Clusterwareは、最上位のサーバー・プール(親サーバー・プールがないサーバー・プール)のみを最初に処理します。この例では、最上位のサーバー・プールはsp1、sp2およびsp3です。
Oracle Clusterwareは、IMPORTANCEの順位に従ってsp2、sp3、sp1のようにサーバー・プールを表示します。
sp2のIMPORTANCEが最大値で、MIN_SIZE値は満たされていないため、Oracle Clusterwareはserver1をsp2に割り当てます。
Oracle Clusterwareは、残り2つのサーバー・プール(sp2_1およびsp2_2)を処理します。両方のサーバー・プールのサイズはMIN_SIZE属性の値(サーバー・プールは両方とも空で、MIN_SIZE値は1)を下回っています。
Oracle Clusterwareは、IMPORTANCEの順位に従ってsp2_1、sp2_2のように残り2つのサーバー・プールを表示します。
Oracle Clusterwareは、server1をsp2_1に割り当てますが、sp2_1はsp2_2に対して排他的であるように構成されているため、server1をsp2_2に割り当てることはできません。
処理後、クラスタ構成は次のように表示されます。
表3-3 処理後のサーバー・プール構成
| サーバー・プール名 | 割り当てられたサーバー |
|---|---|
sp1 |
|
sp2 |
server1 |
sp3 |
|
sp2_1 |
server1 |
sp2_2 |
|