7.3.5. 使用 EAP 操作器部署 Java 应用:完成可选配置
如果应用的 EAP 操作器 CustomResource(CR)引用 Secret
对象或 ConfigMap
,请在使用 EAP 操作器在 OpenShift 中部署应用时完成以下可选配置:
JBoss EAP 7 不支持从 ConfigMap
提供 standalone.xml
文件。
先决条件
- 已安装 EAP operator。如需有关安装 EAP 操作器的更多信息,请参阅使用 Webconsole 和 CLI 安装 EAP Operator。
- 您已完成在 OpenShift 中部署 Java 应用的必要配置。
-
如果应用的 EAP operator CR 引用了一个对象,则您已创建了
Secret
对象。有关创建Secret
对象的详情,请参阅 创建 Secret。 -
如果应用的 EAP operator CR 引用了一个
ConfigMap
,则已创建了 ConfigMap。有关创建ConfigMap
的详情,请参阅 创建 ConfigMap。 -
可选 :您已从
standalone.xml
文件创建了ConfigMap
。有关从standalone.xml
文件创建ConfigMap
的详情,请参考 从 standalone.xml 文件创建 ConfigMap。
流程
完成与应用程序部署相关的以下可选配置:
- 指定服务器数据目录的存储要求。
指定您在
WildFlyServerSpec
中创建的Secret
名称,以便您可以将Secret
对象作为运行应用程序的 Pod 中的卷挂载。例如:spec: secrets: - my-secret
Secret
挂载于/etc/secrets/<secret name>
,每个键/值都保存为一个文件。文件的名称是键,内容是值。Secret
作为 pod 中的卷挂载。以下示例演示了可用于查找键值的命令:$ ls /etc/secrets/my-secret/ my-key my-password $ cat /etc/secrets/my-secret/my-key devuser $ cat /etc/secrets/my-secret/my-password my-very-secure-pasword
注意修改
Secret
对象可能会导致项目不一致。为避免项目的不一致,请创建一个内容与旧对象相同的新Secret
对象。然后,您可以根据需要更新内容,并将 EAP 操作器自定义资源(CR)中的引用从旧改为 new。这被视为一个新的 CR 更新,pod 会被重新载入。指定您在
WildFlyServerSpec
中创建的ConfigMap
名称,将其挂载为运行应用程序的 Pod 中的卷。例如:spec: configMaps: - my-config
ConfigMap
挂载于/etc/configmaps/<configmap name>
,每个键/值都存储为一个文件。文件的名称是键,内容是值。ConfigMap
挂载为 pod 中的卷。查找键值:$ ls /etc/configmaps/my-config/ key1 key2 $ cat /etc/configmaps/my-config/key1 value1 $ cat /etc/configmaps/my-config/key2 value2
注意修改
ConfigMap
可能会导致项目不一致。为了避免项目不一致,请创建一个内容与旧ConfigMap 相同的新 ConfigMap
。然后,您可以根据需要更新内容,并将 EAP 操作器自定义资源(CR)中的引用从旧改为 new。这被视为一个新的 CR 更新,pod 会被重新载入。如果您选择有自己的独立
ConfigMap
,请提供ConfigMap
的名称以及standalone.xml
文件的键:standaloneConfigMap: name: clusterbench-config-map key: standalone-openshift.xml
注意JBoss EAP 7 不支持从
standalone.xml
文件创建ConfigMap
。如果要禁用 OpenShift 中创建默认 HTTP 路由,请将
disableHTTPRoute
设置为true
:spec: disableHTTPRoute: true
其他资源
- 有关为服务器数据目录指定存储要求的更多信息,请参阅 为应用程序配置持久性存储。
- 有关在 OpenShift 中部署 Java 应用时完成强制配置的更多信息,请参阅使用 EAP 操作器在 OpenShift 上部署 Java 应用。