7.12. OpenShift 上的 Jakarta Enterprise Beans Remoting
若要让 JBoss EAP 能够与 OpenShift 上的不同 JBoss EAP 集群之间的企业 Bean 远程调用正确配合,您必须了解企业 Bean 远程处理 OpenShift 上的配置选项。
在 OpenShift 上部署时,请考虑使用 EAP 操作器:EAP 操作器使用 StatefulSet
来适当处理企业 Bean 远程处理和事务恢复处理。StatefulSet 确保
持久性存储和网络主机名的稳定性,即使在 pod 重启后也是如此。
当使用企业 Bean 远程调用及交易传播联系 JBoss EAP 实例时,需要保持网络主机名稳定性。即使 pod 重新启动,也必须在同一主机名下访问 JBoss EAP 实例。事务管理器是一个有状态的组件,可将持久交易数据绑定到特定的 JBoss EAP 实例。由于事务日志绑定到特定的 JBoss EAP 实例,它必须在同一实例中完成。
为防止使用 JDBC 事务日志存储时数据丢失,请确保您的数据库提供一致的数据读取和写入。当数据库横向扩展时,数据读写的一致性非常重要。
企业 bean 远程调用器有两个选项来配置远程调用:
- 定义远程出站连接。如需更多信息,请参阅配置远程出站连接。
- 将编程 JNDI 查找用于远程服务器上的 Bean。如需更多信息,请参阅使用 Remote Jakarta 企业 Beans 客户端。
您必须根据企业 bean 远程调用配置方法重新配置代表目标节点地址的值。
远程调用的目标企业 bean 的名称必须是第一个 pod 的 DNS 地址。
StatefulSet
强制取决于 pod 的顺序。容器集按照预定义的顺序命名。例如,如果您将应用缩放为三个副本,您的容器集的名称为 eap-server-0
、eap-server-1
和 eap-server-2
。
EAP 操作器也使用无头服务来确保为 pod 分配特定的 DNS 主机名。如果应用使用 EAP 操作器,则会使用名称(如 eap-server-headless
)创建无头服务。在本例中,第一个容器集的 DNS 名称为 eap-server-0.eap-server-headless
。
使用主机名 eap-server-0.eap-server-headless
可确保企业 bean 调用到达与集群连接的任何 EAP 实例。bootstrap 连接用于初始化 Jakarta Enterprise Beans 客户端,该客户端将 EAP 集群的结构作为下一步收集。
7.12.1. 在 OpenShift 中配置 Jakarta Enterprise Beans 复制链接链接已复制到粘贴板!
您必须配置充当企业 Ban 远程调用者的 JBoss EAP 服务器。目标服务器必须配置有权接收企业 bean 远程调用的用户。
先决条件
- 您已使用 EAP 操作器和支持的 JBoss EAP for OpenShift S2I 镜像在 OpenShift 上部署和管理 JBoss EAP 应用实例。
- 集群设置正确。有关 JBoss EAP 集群的更多信息,请参阅集群部分。
流程
在目标服务器中创建用户,并有权接收企业 bean 远程调用:
$JBOSS_HOME/bin/add-user.sh
$JBOSS_HOME/bin/add-user.sh
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 配置调用者 JBoss EAP 应用服务器。
-
使用自定义配置功能,在
$JBOSS_HOME/standalone/configuration
中创建eap-config.xml
文件。如需更多信息,请参阅自定义配置。 使用
wildfly.config.url
属性配置调用者 JBoss EAP 应用服务器:JAVA_OPTS_APPEND="-Dwildfly.config.url=$JBOSS_HOME/standalone/configuration/eap-config.xml"
JAVA_OPTS_APPEND="-Dwildfly.config.url=$JBOSS_HOME/standalone/configuration/eap-config.xml"
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注意如果您的配置使用以下示例,请将 >>
PASTE_…_HERE<
;< 替换为您配置的用户名和密码。配置示例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
-
使用自定义配置功能,在