Home > コンセプトペーパ > クラスタリング環境での配備 > Spaceの配備
Magic xpiは、2つのSpaceとプロセスユニットを持っています。
MAGIC_SPACE …… このSpaceはプロジェクトのメタデータ、管理リカバリ、およびメッセージングに対応しています。
MAGIC_INFO …… このSpaceは、モニタとODSデータのために統計と同様にアクティビティログを保持します。MAGIC_INFO Spaceは、SpaceにないODSレコードが要求されるとデータベースから読むこともできます。 (Since version: 4.5).
MGMirror …… このプロセスユニット(PU)は、データベースへのアクティビティログとODSデータの書き込み操作の管理に対応しています。 (Since version: 4.5).
Magic xpi のOSサービスは、グリッドサービスエージェント(GSA)を開始します。これは、<Magic xpiインストールフォルダ>\Runtime\Gigaspaces\config\gsaフォルダから以下を順番に実行します。
Magic Space(MAGIC_SPACE)の配備に対応した mgdeployと呼ばれるアプリケーション。
MAGIC_INFO Spaceの配備に対応した mginfoと呼ばれるアプリケーション。
MGMirrorプロセスユニットの配備に対応した mgmirrorと呼ばれるアプリケーション。
配備プロセスは、magicxpi_sla.xmlファイルとmagicinfo_sla.xmlファイル(SpaceクラスタリングSLAのトピックで説明したように)で定義されたSLA設定を使用します。
配備プロセスは、1つのサーバの障害がMagic Spaceの処理に影響を及ぼさず、データ損失も発生しないような方法で、有効なコンテナ(GSC)上でパーティションを拡張しようとします。
このプロビジョニング処理は自動的に行われます。1回完了すると、自身で再編成することはありません。
Magic Spaceの配備処理の間は、1つのPCだけが実行していて、単一PCに関連するSLA定義(max-instances-per-machine)の制約がなければ、このPCは全てのパーティションを保持します。配備が完了した後、他のPC上で起動しているコンテナはMagic Spaceのパーティションを保持しません。そして、現在Magic Spaceを実行している単一PCは障害点とみなされるようになります。
グリッドの要素として複数のPCがある場合、Magic Spaceを実行するタイミングを制御したいと思うはずです。グリッドサービスエージェント(GSA)がロードされ、PCがグリッドの一部となる場合、Magic Spaceがすでにグリッド上にあれば 、そのPCはMagic Spaceの一部とはなりません。
1つのPCが全てのパーティションを保持している場合に、パーティションを複数のPCに展開するには、以下のオプションが利用できます。
SLAで、max-instances-per-machine の制限を使用することができます。この方法は、少なくとも3台のPCのクラスタに限定されるべきであり、グリッドには少なくとも2台のPCでSpaceパーティションが実行するようにしてください。
a. magicxpi_sla.xmlファイルで、max-instances-per-machine ="1" のエントリを定義します。SpaceクラスタリングSLAトのピックで説明しています。
b. 自動配備プロセスが開始されると、少なくとも2台のPCがMagic Spaceパーティションをホストするまで、それは完了しません。
Magic xpiは、同じホストで実行しているプライマリとバックアップの両方のパーティションの単一障害ポイントを自動的にモニタし、再配置することができます。定期的なチェックは、パーティションのインスタンスの再配置が必要なのかどうかを決定するために行われます。このメカニズムは、mgdeploy.xmlファイル(<Magic xpiインストールフォルダ>\Runtime\GigaSpaces\config\gsa ディレクトリ)に定義される以下の2つのプロパティによってコントロールされます。
rebalance-partitions …… このプロパティがTrue(デフォルト)に設定される時や、定義されていない場合、再配置のメカニズムが有効になります。
rebalance-interval ……- このプロパティは、再配置チェック間の間隔を定義します。プロパティがない場合は、デフォルトは5分になります。
これらのプロパティは、mgdeploy.xmlファイルで以下のように定義されています。
<argument>-rebalance-partitions</argument>
<argument>true</argument>
<argument>-rebalance-interval</argument>
<argument>5</argument>
Since version: 4.1
GigaSpaces UIから手動でパーティションを組み替えることができます。これを行うには、Gigaspacesの[UI Hosts]タブを開き、左側の階層ツリー上位のHostsエントリにカーソルを置きます。Gigaspaces UI の右側の[サービス]ペインに、コンテナとパーティションのツリーが表示されます。次にパーティション(プライマリかバックアップのどちらか)を選択し、以下のイメージに示すように異なるコンテナにドラッグすることができます。
バックアップGSCを再起動することができて、GigaSpacesはグリッドを提供します。これを行うには、以下のようにします。
a. バックアップパーティションのGSCノード上パークしてください。
b. コンテキストメニューから、[Restart]を選択してください。
以下のイメージで示すように、GigaSpacesは、バックアップコンテナを2番目のPCに配置しようとします。これはによって、アプリケーションに冗長性が提供されます。第2のPCが利用できない場合、GigaSpacesは現在のPC上にバックアップパーティションを作成します。第2のPCが再び利用できるようになっても、GigaSpacesは自動的に第2のPC上にバックアップを再配置しないかもしれません。手動で処理を実行する必要があるかもしれません。
グリッドコンポーネント−メモリアロケーション
様々なGigaSpacesエンティティに対するメモリアロケーションは、magicxpi-gs-agent.batと呼ばれるバッチファイルで定義されています。このファイルは、<Magic xpiのインストールフォルダ>\GigaSpaces-xpa\binフォルダ内にあります。
このバッチファイルの中には、[gigaSpaces Memory related settings]セクションがあります。
GSA、GSM、およびLUSエンティティは、メモリの使用量は少ないため、これらの設定はデフォルトのままにしておくことができます。GSCは、スペース・パーティションを実行するコンテナで、プロジェクト内の全てのデータを保持します。GSCに関するメモリの問題に直面した場合、この値を少なくとも1024MBに変更することを考慮してください。
GigaSpacesサービスの設定
magicxpi-gs-agent.batファイルには、以下の行が見つかるはずです。
call gs-agent.bat gsa.gsc 2 gsa.global.gsm 2 gsa.lus 1 gsa.global.lus 0 gsa.mgmirror 1 gsa.mgdeploy 1 gsa.mginfo 1
このファイルには、以下のエントリがあります。
gsa.gsc …… 配備するGSCの数。この値は必要なパーティションの数と一致させてください。
gsa.global.gsm …… グリッド上にグローバルに配備され、管理されるGSMの数。
gsa.lus …… ローカルで開始されるLUSの数。このエントリの値は、PCがLUSを実行することに対応しているかどうかを定義します。
gsa.global.lus …… グリッド上でグローバルに配備され、管理されるLUSの数。
gsa.mgmirror …… 配備するミラーの数。
gsa.mgdeploy …… 配備するMAGIC_SPACEの数。.
gsa.mginfo …… 装備するMAGIC_INFO Spaceの数。
GigaSpacesの構成に関する追加情報は、次を参照してください: http://docs.gigaspaces.com/xap110adm/moving-into-production-checklist.html