第6章 機能のトリム

起動可能な JAR をビルドする場合、含まれる JBoss EAP の機能とサブシステムを決定できます。

注記

機能のトリムは、OpenShift 上で、または起動可能な JAR のビルド時にのみサポートされます。

6.1. 利用可能な JBoss EAP レイヤー

Red Hat は、OpenShift または起動可能な JAR での JBoss EAP サーバーのプロビジョニングをカスタマイズするために複数のレイヤーを提供します。

3 つの層は、コア機能を提供するベースレイヤーです。他のレイヤーは、追加機能を備えたベースレイヤーを強化するデコレーターレイヤーです。

ほとんどのデコレーターレイヤーを使用して、JBoss EAP for OpenShift で S2I イメージをビルドしたり、起動可能な JAR をビルドしたりできます。一部のレイヤーは S2I イメージをサポートしません。レイヤーノートの説明は、この制限の説明になります。

注記

一覧表示されたレイヤーのみがサポートされます。ここで記載されていないレイヤーはサポートされません。

6.1.1. ベースレイヤー

各ベースレイヤーには、典型的なサーバーユーザーケースのコア機能が含まれています。

datasources-web-server

このレイヤーには、サーブレットコンテナーが含まれ、データソースを設定する機能が含まれます。

このレイヤーには MicroProfile 機能が含まれません。

このレイヤーでは、以下の Jakarta EE 仕様がサポートされます。

  • Jakarta JSON Processing 1.1
  • Jakarta JSON Binding 1.0
  • Jakarta Servlet 4.0
  • Jakarta Expression Language 3.0
  • Jakarta Server Pages 2.3
  • Jakarta Standard Tag Library 1.2
  • Jakarta Concurrency 1.1
  • Jakarta Annotations 1.3
  • Jakarta XML Binding 2.3
  • Jakarta Debugging Support for Other Languages 1.0
  • Jakarta Transaction 1.3
  • Jakarta Connector API 1.7
jaxrs-server

このレイヤーは、以下の JBoss EAP サブシステムを使用して datasources-web-server レイヤーを強化します。

  • jaxrs
  • weld
  • jpa

このレイヤーは、コンテナーに Infinispan ベースのセカンドレベルのエンティティーキャッシングをローカルに追加します。

以下の MicroProfile 機能は、このレイヤーに含まれています。

  • MicroProfile REST クライアント

以下の Jakarta EE 仕様は、datasources-web-server レイヤーでサポートされるものに加え、このレイヤーでサポートされています。

  • Jakarta Contexts and Dependency Injection 2.0
  • Jakarta Bean Validation 2.0
  • Jakarta Interceptors 1.2
  • Jakarta RESTful Web Services 2.1
  • Jakarta Persistence 2.2
cloud-server

このレイヤーは、以下の JBoss EAP サブシステムを使用して jaxrs-server レイヤーを強化します。

  • resource-adapters
  • messaging-activemq (組み込みメッセージではなく、リモートブラオーカーメッセージング)

このレイヤーは、以下の observability 機能も jaxrs-server レイヤーに追加します。

  • MicroProfile Health
  • MicroProfile Metrics
  • MicroProfile Config
  • MicroProfile OpenTracing

以下の Jakarta EE 仕様は、jaxrs-server レイヤーでサポートされるものに加え、このレイヤーでサポートされています。

  • Jakarta Security 1.0

6.1.2. デコレーターレイヤー

デコレーターレイヤーは単独で使用されません。ベースレイヤーで 1 つ以上のデコレーターレイヤーを設定するとで、追加機能を利用できます。

ejb-lite

このデコレーターレイヤーは、プロビジョニングされたサーバーに最小限の EJB/Jakarta Enterprise Bean 実装を追加します。このレイヤーには、以下のサポートは含まれません。

  • IIOP の統合
  • MDB インスタンスプール
  • リモートコネクターリソース

このレイヤーは、起動可能な JAR をビルドする場合のみサポートされます。このレイヤーは、S2I を使用する場合にはサポートされません。

ejb

このデコレーターレイヤーは、ejb-lite レイヤーを拡張します。このレイヤーは、ejb-lite レイヤーに含まれるベース機能に加えて、プロビジョニングされたサーバーに以下のサポートを追加します。

  • MDB インスタンスプール
  • リモートコネクターリソース

メッセージ駆動 Bean (MDB) または EJB リモーティング機能のいずれかを使用する場合は、このレイヤーを使用します。これらの機能が必要ない場合は、ejb-lite レイヤーを使用します。

このレイヤーは、起動可能な JAR をビルドする場合のみサポートされます。このレイヤーは、S2I を使用する場合にはサポートされません。

ejb-local-cache

このデコレーターレイヤーは、EJB/Jakarta Enterprise Beans のローカルキャッシュサポートをプロビジョニングされたサーバーに追加します。

依存関係: ejb-lite レイヤーまたは ejb レイヤーを含む場合に限り、このレイヤーを含めることができます。

注記

このレイヤーは ejb-dist-cache レイヤーと互換性がありません。ejb-dist-cache レイヤーが含まれている場合は、ejb-local-cache レイヤーを含めることができません。両方のレイヤーが含まれる場合、生成されるビルドには予期しない EJB 設定が含まれる可能性があります。

このレイヤーは、起動可能な JAR をビルドする場合のみサポートされます。このレイヤーは、S2I を使用する場合にはサポートされません。

ejb-dist-cache

このデコレーターレイヤーは、EJB/Jakarta Enterprise Beans の分散キャッシングサポートをプロビジョニングされたサーバーに追加します。

依存関係: ejb-lite レイヤーまたは ejb レイヤーを含む場合に限り、このレイヤーを含めることができます。

注記

このレイヤーは ejb-local-cache レイヤーと互換性がありません。ejb-dist-cache レイヤーが含まれている場合は、ejb-local-cache レイヤーを含めることができません。両方のレイヤーを含めると、ビルドが予期しない設定になる可能性があります。

このレイヤーは、起動可能な JAR をビルドする場合のみサポートされます。このレイヤーは、S2I を使用する場合にはサポートされません。

jdr

このデコレーターレイヤーは、Red Hat からサポートを要求する際に診断データを収集するために JBoss Diagnostic Reporting (jdr) サブシステムを追加します。

このレイヤーは、起動可能な JAR をビルドする場合のみサポートされます。このレイヤーは、S2I を使用する場合にはサポートされません。

jpa

このデコレーターレイヤーは、単一ノードサーバーの永続性機能を追加します。分散キャッシングは、サーバーがクラスターを形成できる場合にのみ機能することに注意してください。

レイヤーは Hibernate ライブラリーをプロビジョニングされたサーバーに追加し、以下のサポートを受けることができます。

  • jpa サブシステムの設定
  • infinispan サブシステムの設定
  • ローカルの Hibernate キャッシュコンテナー
注記

このレイヤーは jpa-distributed で配布されるレイヤーと互換性がありません。jpa レイヤーを含める場合は、jpa-distributed レイヤーを含めることはできません。

このレイヤーは、起動可能な JAR をビルドする場合のみサポートされます。このレイヤーは、S2I を使用する場合にはサポートされません。

jpa-distributed

このデコレーターレイヤーは、クラスターで稼働しているサーバーに永続性を追加します。レイヤーは Hibernate ライブラリーをプロビジョニングされたサーバーに追加し、以下のサポートを受けることができます。

  • jpa サブシステムの設定
  • infinispan サブシステムの設定
  • ローカルの Hibernate キャッシュコンテナー
  • インバリデーションおよびレプリケーション Hibernate キャッシュコンテナー
  • jgroups サブシステムの設定
注記

このレイヤーは jpa レイヤーと互換性がありません。jpa レイヤーを含める場合は、jpa-distributed レイヤーを含めることはできません。

このレイヤーは、起動可能な JAR をビルドする場合のみサポートされます。このレイヤーは、S2I を使用する場合にはサポートされません。

jsf

このデコレーターレイヤーは、プロビジョニングしたサーバーに jsf サブシステムを追加します。

このレイヤーは、起動可能な JAR をビルドする場合のみサポートされます。このレイヤーは、S2I を使用する場合にはサポートされません。

microprofile-platform

このデコレーターレイヤーは、以下の Eclipse MicroProfile 機能を、プロビジョニングされたサーバーに追加します。

  • MicroProfile Config
  • MicroProfile Fault Tolerance
  • MicroProfile Health
  • MicroProfile JWT
  • MicroProfile Metrics
  • MicroProfile OpenAPI
  • MicroProfile OpenTracing
注記

このレイヤーには、observability レイヤーにも含まれる MicroProfile 機能が含まれます。このレイヤーを含める場合は、observability レイヤーを含める必要はありません。

可観測性

このデコレーターレイヤーは、プロビジョニングしたサーバーに以下の observability 機能を追加します。

  • MicroProfile Health
  • MicroProfile Metrics
  • MicroProfile Config
  • MicroProfile OpenTracing
注記

このレイヤーは、cloud-server レイヤーに組み込まれています。このレイヤーは cloud-server レイヤーに追加する必要はありません。

remote-activemq

このデコレーターレイヤーは、リモート ActiveMQ ブローカーと通信し、メッセージングサポートを統合する機能を追加します。

プールされた接続ファクトリー設定は、guestuser および password 属性の値として指定します。CLI スクリプトを使用して、起動時にこれらの値を変更できます。

このレイヤーは、起動可能な JAR をビルドする場合のみサポートされます。このレイヤーは、S2I を使用する場合にはサポートされません。

sso

このデコレーターレイヤーは、プロビジョニングしたサーバーに Red Hat Single Sign-On 統合を追加します。

このレイヤーは、S2I を使用してサーバーをプロビジョニングする場合にのみ使用してください。

web-console

このデコレーターレイヤーは、プロビジョニングしたサーバーに管理コンソールを追加します。

このレイヤーは、起動可能な JAR をビルドする場合のみサポートされます。このレイヤーは、S2I を使用する場合にはサポートされません。

web-clustering

このレイヤーは、埋め込み Infinispan ベースの Web セッションクラスターリングをプロビジョニングされたサーバーに追加します。

webservices

このレイヤーは Jakarta Web サービスデプロイメントをサポートするプロビジョニングされたサーバーに Web サービス機能を追加します。

このレイヤーは、起動可能な JAR をビルドする場合のみサポートされます。このレイヤーは、S2I を使用する場合にはサポートされません。