JBoss EAP の紹介
サブシステムや操作モードなど、一般的な Red Hat JBoss Enterprise Application Platform の概念の説明
概要
JBoss EAP ドキュメントへのフィードバック (英語のみ)
エラーを報告したり、ドキュメントを改善したりするには、Red Hat Jira アカウントにログインし、課題を送信してください。Red Hat Jira アカウントをお持ちでない場合は、アカウントを作成するように求められます。
手順
- このリンクをクリック してチケットを作成します。
- ドキュメント URL、セクション番号、課題の説明 を記入してください。
- Summary に課題の簡単な説明を入力します。
- Description に課題や機能拡張の詳細な説明を入力します。問題があるドキュメントのセクションへの URL を含めてください。
- Submit をクリックすると、課題が作成され、適切なドキュメントチームに転送されます。
多様性を受け入れるオープンソースの強化
Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。まずは、マスター (master)、スレーブ (slave)、ブラックリスト (blacklist)、ホワイトリスト (whitelist) の 4 つの用語の置き換えから始めます。この取り組みは膨大な作業を要するため、今後の複数のリリースで段階的に用語の置き換えを実施して参ります。詳細は、Red Hat CTO である Chris Wright のメッセージ をご覧ください。
第1章 Red Hat JBoss Enterprise Application Platform の紹介
Red Hat JBoss Enterprise Application Platform の使用を開始する前に、JBoss EAP で使用される一般的なコンポーネントを理解する必要があります。
これらのコンポーネントを理解すると、Red Hat JBoss Enterprise Application Platform の使用方法を改善するだけでなく、設定スキルも強化されます。
1.1. JBoss EAP 7 の使用
Red Hat JBoss Enterprise Application Platform (JBoss EAP) 7.4 は、Web プロファイルやフルプラットフォーム仕様などの Jakarta EE 8 仕様と互換性があります。JBoss EAP の各メジャーバージョンでは、テスト済みで安定性のある認定製品が提供されます。
JBoss EAP は、高可用性クラスターリング、メッセージング、分散キャッシュなど、事前設定されたオプションを機能に提供します。
JBoss EAP を使用して、サポート対象の API およびサービスでアプリケーションをデプロイおよび実行できます。さらに、以下のようなニーズに合わせて JBoss EAP を設定できます。
- JBoss EAP をカスタマイズして、ニーズを満たすために必要なサブシステムのみを含めることができます。これにより、JBoss EAP 7.4 インスタンスの起動速度が向上する可能性があります。
- XML 設定ファイルを編集しなくても、Web ベースの管理コンソールおよび管理インターフェイス (CLI) を使用してタスクをスクリプト化および自動化できます。
JBoss EAP のメジャーバージョンは、WildFly コミュニティープロジェクトが希望の完成度の達した時点で毎回、このプロジェクトからフォークされます。メジャーバージョンは、実稼働環境での使用に耐える程度に安定性しており認定かつ強化されるまで、テストされます。
JBoss EAP メジャーバージョンのライフサイクル期間中、選択された機能はコミュニティープロジェクトから、メジャーリリース内にあるマイナーリリースに、チェリーピックおよびバックポートされます。マイナーリリースごとに、メジャーリリースに強化機能が追加されます。
関連情報
- WildFly コミュニティープロジェクトの詳細は WildFly を参照してください。
1.2. JBoss EAP 7 の機能
JBoss EAP には、組織のニーズに合わせてさまざまな機能が含まれています。
機能 | 説明 |
---|---|
Jakarta EE 対応 | JBoss EAP 7.4 は Web Profile と Full Platform 仕様 の Jakarta EE 8 対応実装です。 |
管理対象ドメイン | 管理対象ドメインは、複数のサーバーインスタンスと物理ホストを一元管理しますが、スタンドアロンサーバーはサーバーインスタンス 1 台のみをサポートします。 設定、デプロイメント、ソケットバインディング、モジュール、拡張、およびシステムプロパティーなど、サーバーグループを管理します。 アプリケーションセキュリティーおよびセキュリティードメインの管理を一元化および簡略化します。 |
管理コンソールおよび管理 CLI | 新しいドメインまたはスタンドアロンサーバー管理インターフェイスです。管理 CLI には、スクリプトが管理タスクを自動化するバッチモードが含まれています。
注記: ドメインがアクティブな間はシステム設定が変更されないように、ドメインの JBoss EAP の XML 設定ファイルは直接編集しないでください。管理 CLI を使用して設定を変更します。 |
簡素化されたディレクトリーのレイアウト | modules ディレクトリーにはアプリケーションサーバーモジュールが含まれます。 ドメインディレクトリーには、ドメインデプロイメントのアーティファクトおよび設定ファイルが含まれます。スタンドアロンディレクトリーには、スタンドアロンデプロイメントが含まれます。 |
モジュラークラスローディングの仕組み | モジュールは必要に応じてロードおよびアンロードされます。これにより、セキュリティーのパフォーマンスが向上し、起動および再起動にかかる時間が短縮されます。 |
データソース管理の合理化 | データベースドライバーは、他の JBoss EAP サービスと同様にデプロイされます。 データソースは管理コンソールおよび管理 CLI で作成および管理されます。 |
統一されたセキュリティーフレームワーク | Elytron では、スタンドアロンサーバーと管理対象ドメインの両方のアクセスを管理および設定する単一の統合フレームワークを利用できます。また、Elytron は JBoss EAP サーバーにデプロイされたアプリケーションのセキュリティーアクセス設定に使用されます。 |
1.3. アプリケーションサーバー
アプリケーションサーバーは、Web アプリケーションを実行する環境を提供するソフトウェアです。ほとんどのアプリサーバーは、一連の API を使用して Web アプリケーションに機能を提供します。たとえば、アプリサーバーは API を使用してデータベースに接続できます。
1.4. JBoss EAP サブシステム
JBoss EAP は API をサブシステムに整理します。このようなサブシステムを設定して、JBoss EAP インスタンスの機能を強化できます。
管理者は、アプリケーションの目的に合わせて、これらのサブシステムが異なる動作をサポートできるように設定できます。
たとえば、アプリケーションにデータベースが必要な場合は、JBoss EAP サーバーでデプロイされたアプリケーションがデータベースにアクセスできるようにデータソースを設定する必要があります。
1.5. JBoss EAP の高可用性 (HA) 機能
JBoss EAP HA 機能を使用して、複数の実行している JBoss EAP インスタンス間のデータ共有を向上することで、実行中のアプリケーションを強化できます。
JBoss EAP では、高可用性 (HA) とは、データフローの変動、サーバーの負荷、およびサーバーの障害に最大限の耐性を得られるように、複数のアプリケーションを連携してアプリケーションを拡張することをいいます。HA は、スケーラビリティー、負荷分散、フォールトトレランスなど、多くの特性を取り入れます。
1.6. JBoss EAP でサポートされる操作モード
JBoss EAP には、デプロイされたアプリケーションを管理する強力な機能があります。これらの機能は、JBoss EAP の起動に使用される操作モードによって異なります。
JBoss EAP は以下の操作モードを提供します。
- インスタンスを個別に管理するスタンドアロンサーバー。
- 単一の制御ポイントからインスタンスのグループを管理する管理対象ドメイン
第2章 Red Hat JBoss Enterprise Application Platform の設定
JBoss EAP には、簡単な設定と複雑な設定があります。
簡単な設定には、1 つまたは複数のデプロイされたアプリケーションを実行しているスタンドアロンサーバーで設定される JBoss EAP インスタンスが 1 つ含まれます。
複雑な設定には、インスタンス間をスムーズに通信できるようにさまざまなコンポーネントで設定される複数の JBoss EAP インスタンスが含まれます。
2.1. 簡単な JBoss EAP の設定
簡単な JBoss EAP 設定には、1 つ以上のデプロイされたアプリケーションを実行するスタンドアロンサーバーが含まれます。
スタンドアロンサーバーでは、ドメインコントローラーを使用してドメインの管理ポリシーに合わせて各サーバーインスタンスを設定するなど、管理ドメインサーバーが対応している複雑な設定はサポートされません。このスタンドアロンサーバーのユースケースは、簡単な JBoss EAP 設定と見なされます。
図2.1 簡単な JBoss EAP 設定のイメージ
JBoss EAP インスタンスは datasources
サブシステムを使用して以下のコンポーネントに接続します。
- データベース
- Kerberos サーバー
JBoss EAP は security
サブシステムまたは elytron
サブシステムを使用して Kerberos サーバーに接続し、サーバーをデプロイされたアプリケーション 2 つに公開します。
JBoss EAP は undertow
サブシステムを使用してクライアントサーバーからの要求を処理し、適切なアプリケーションに s 要求を送信します。
アプリケーションは JBoss EAP によって公開される API を使用してデータベースおよび Kerberos サーバーに接続します。アプリケーションはタスクを完了し、undertow
サブシステムを使用して応答を要求元に送信します。
2.2. 複雑な JBoss EAP の設定
JBoss EAP は複雑なユースケースを処理できます。たとえば、ロードバランサーを使用して、管理対象ドメイン内の JBoss EAP インスタンス間で処理負荷を分散できます。
以下の図は、管理対象ドメインのロードバランサーによって配置される 3 つの JBoss EAP インスタンスを示します。
図2.2 複雑な JBoss EAP 設定の図
この例では、管理者は各インスタンスが mod_cluster
および Infinispan
セッションレプリケーションを使用して、アプリケーションに対して高可用性 (HA) サポートを提供します。各インスタンスには、以下のコンポーネントが含まれます。
- Web アプリケーション
- Web サービス
- デプロイされたエンタープライズ Bean
-
datasources
サブシステムと確立されたデータベース接続 -
レガシー
security
サブシステムまたはelytron
サブシステムで確立された LDAP サーバーとの接続
この図では、複雑な JBoss EAP 設定に関連する以下の設定を紹介します。
-
JBoss EAP 1 には、外部メッセージブローカーに接続する Jakarta Messaging キューで設定される
messaging-activemq
サブシステムがあります。 - この接続は、すべての JBoss EAP インスタンスで実行しているアプリケーション、Web サービス、エンタープライズ Bean、および Jakarta Messaging キューを公開します。
すべての受信要求はロードバランサーを通過します。
- 設定された負荷分散アルゴリズムと各 JBoss EAP インスタンスによって提供される情報に応じて、ロードバランサーは要求を適切な JBoss EAP インスタンスに転送します。
-
各 JBoss EAP インスタンスは
undertow
サブシステムを使用して、要求を適切なアプリケーションに転送します。 - 各アプリケーションは JBoss EAP によって公開される API を使用してデータベースおよび Kerberos サーバーに接続します。
-
アプリケーションが機能すると、アプリケーションは
undertow
サブシステムを使用して要求元に応答を送信します。
infinispan
サブシステムは、JBoss EAP インスタンス間でセッション情報など、永続化されない情報を伝播します。
改訂日時: 2024-02-08