渡邊です。こんにちは。
JBoss EAP6の研究をしています。
備忘録を兼ねて、EAP6ドキュメントを読む上で知っておくとよい概念を簡潔にまとめます。
ドメインモード起動によって、複数のEAP6インスタンスを一元管理できます。ドメインモードにおける4つの管理スコープについて整理します。
ドメイン
以下のサーバ、サーバグループ、ホストを包括する管理スコープです。
サーバ
最も粒度の小さな管理スコープです。Java EE6の仕様をサポートするJava EE アプリケーションサーバを示します。単にサーバ、またはサーバインスタンスといった場合は、これを意味します。
ホスト
その名が表わすように、基本的に1台の筐体に相当する管理スコープです。しかし、あくまでも論理的な概念です。
物理的には、1つのホストは1つのEAP6インスタンスに相当します。
従って、1台の筐体内に複数のEAP6インスタンスを起動すれば、その筐体内に複数のホストを作成できます。
そのような構成を本番環境で採用することはあまりないと思いますが、手軽に動作を検証する為の構成として重宝します。
サーバグループ
複数のサーバを束ねる管理単位です。複数のホストに分散しているサーバを任意にまとめることができます。
アプリケーションのデプロイ、プロファイル割当は、サーバグループ単位で行います(サーバ単位ではできません)。
管理スコープの種類は以上の通りです。それぞれのスコープで何を管理できるのかをまとめます。
次の表は、左からスコープの広い順に並べています。複数のスコープに設定をした場合は、より狭い方のスコープが有効になります。ただし、私が調査した限り、jmvsについてはホストよりもサーバグループの設定が優先されます。そもそも、サーバグループとホストのどちらが狭いのかという点が、微妙な気がします。
ドメイン | サーバグループ | ホスト | サーバ | |
---|---|---|---|---|
プロファイル | ○ | |||
ソケットバインディンググループ | ○ | ○ | ||
ポートオフセット | ○ | ○ | ||
インターフェース | ○ | |||
セキュリティドメイン | ○ | |||
JVM設定 | ○ | ○ | ○ | ○ |
システムプロパティ | ○ | ○ | ○ | ○ |
path | ○ | ○ | ||
アプリケーションのデプロイ/アンデプロイ | △ | ○ |
アプリケーションのデプロイ/アンデプロイについては、補足が必要です。
デプロイする為には、次の手順を踏みます(アンデプロイはこれを遡るような手順になります)。
1. アプリケーションをローカルからドメインにアップロードする。
2. アップロードしたアプリケーションをサーバグループに割り当てる。
3. サーバグループに割り当てたアプリケーションを有効にする。
アプリケーションが実際に利用できるようになるのは、手順3の終了後です。同手順によって、サーバグループに所属する全てのサーバに同じアプリケーションがデプロイされます。デプロイ方法によっては、1つの操作で上記の全手順を一気に行えます。
あるサーバグループに属する複数のサーバは、基本的にそれぞれが異なるホストの上にあることをイメージしてください。手順2によって、複数の筐体に分散している複数のサーバに対してアプリケーションのデプロイを一括で行えます。
公式ドキュメントは膨大なので、こうした基本的な情報が埋もれていたり、分散しがちです。
まずは「JBoss Enterprise Application Platform6 構築・運用パーフェクトガイド」をお読みになることをおすすめします。