12.2. 用于 JBoss EAP XP 的 Helm chart 中的持久性数据存储的 OpenShift 卷
OpenShift 卷可让容器存储和共享来自不同来源的数据,包括云存储、网络文件系统(NFS)或主机机器。您可以使用 Helm Chart (OpenShift 软件包管理器)以一致、可重复的方式部署应用程序。通过将卷挂载添加到 Helm Chart 中,您可以使应用程序能够在部署之间持久保留数据。
12.2.1. 在 JBoss EAP XP 上使用 Helm Chart 挂载卷 复制链接链接已复制到粘贴板!
此流程解释了如何在 JBoss EAP XP 上使用 Helm Chart 将 secret 挂载为卷。另外,您还可以使用它来挂载 ConfigMap
。此操作可让应用程序安全地访问和使用数据,防止它被未授权访问或篡改。例如,通过将 secret 挂载为卷,您存储在机密中的敏感数据将显示为一个文件,在运行已挂载机密的 POD 中。
先决条件
- 您可以访问 OpenShift Development 控制台
-
您已创建了一个
secret
。例如,您已创建了名为eap-app-secret
的机密,该机密引用keystore.jks
等文件。 -
您已找出在容器文件系统中挂载 secret 的位置。例如,目录
/etc/jgroups-encrypt-secre-secret-volume
是挂载 secret 文件的目录,如keystore.jks
。 - 托管 Git 存储库中的 JBoss EAP XP 应用的源代码。
- 您的应用程序是一个 Maven 项目。
-
您已将应用配置为使用
org.jboss.eap.plugins:eap-maven-plugin
来调配您的 JBoss EAP XP 5.0 服务器。
流程
登录 OpenShift 开发控制台。
- 在下拉菜单中点击 Helm。
- 在右上角点击 create,然后点 Helm Release。
- 选择 JBoss EAP XP 5。
- 点 create 并选择 configure via YAML view。
编辑
deploy.volumes
字段中指定卷的 YAML 文件,并配置要使用的 secret。您必须提供卷名称和 secret 的 secretName 的名称:volumes: - name: eap-jgroups-keystore-volume secret: secretName: eap-app-secret
volumes: - name: eap-jgroups-keystore-volume secret: secretName: eap-app-secret
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 使用部署配置中的
deploy.volumeMounts
将卷挂载到文件系统中:volumeMounts: - name: eap-jgroups-keystore-volume mountPath: /etc/jgroups-encrypt-secret-volume readOnly: true
volumeMounts: - name: eap-jgroups-keystore-volume mountPath: /etc/jgroups-encrypt-secret-volume readOnly: true
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 当 pod 启动时,容器将 keystore.jks 文件挂载到
/etc/jgroups-encrypt-secret-volume/keystore.jks
位置。