7.2. CRD 参数详情


下表描述了 JWS Operator 提供的 CRD 参数。下表显示了在层次结构中上述任何更高级别的参数上下文中的每个参数名称。

参数名称描述

replicas

您要运行的 JBoss Web Server 镜像的 pod 数量

例如:
replicas: 2

applicationName

您希望 JWS Operator 部署的 Web 应用程序的名称

应用名称必须是 OpenShift 命名空间或项目中的唯一值。JWS Operator 使用您指定的应用程序名称来创建访问 Web 应用程序的路由。

例如:
applicationName: my-app

useSessionClustering

启用 DNSping 会话集群

这默认设置为 false。如果将此参数设置为 true,则镜像必须基于 JBoss Web Server 镜像,因为会话集群使用 ENV_FILES 环境变量和一个 shell 脚本在 server.xml 文件中添加集群。

注意

在本发行版本中,会话集群功能仅作为技术预览功能提供。当前 Operator 版本使用 DNS Membership 提供者,这受到 DNS 限制的限制。InetAddress.getAllByName() 结果会被缓存,这意味着扩展时会话复制可能无法正常工作。

例如:
useSessionClustering: true

WebImage

控制 JWS Operator 如何部署现有镜像的 pod 的一组参数

此参数包含 applicationImageimagePullSecretwebAppwebServerHealthCheck 字段。

WebImage:
applicationImage

要部署的应用程序镜像的完整路径

例如:
applicationImage: quay.io/$user/my-image-name

webImage:
imagePullSecret

JWS Operator 用来从存储库中拉取镜像的 secret 名称

secret 必须包含密钥 .dockerconfigjson。JWS Operator 挂载 secret,并使用类似于-- authfile /mount_point/.dockerconfigjson 从存储库拉取镜像。

Secret 对象定义文件可以包含多个用户名和密码值或令牌,以允许访问镜像流、构建器镜像和 JWS Operator 构建的镜像。

例如:
imagePullSecret: mysecret

WebImage:
webApp

一组参数,用于描述 JWS Operator 如何构建您要添加到应用程序镜像中的 Web 应用程序

如果没有指定 webApp 参数,JWS Operator 会在不构建应用程序的情况下部署 Web 应用程序。

此参数包含 名称,sourceRepositoryURL,sourceRepositoryRef,contextDir,webAppWarImage,webAppWarImagePushSecret, 和 builder 字段。

WebImage:
webApp:
name

Web 应用文件的名称

默认名称为 ROOT.war

例如:
name: my-app.war

WebImage:
webApp:
sourceRepositoryURL

应用程序源文件所在的 URL

源应包含 Maven pom.xml 文件,以支持 Maven 构建。当 Maven 为应用程序生成 .war 文件时,.war 文件将复制到 JWS Operator 用来部署应用程序(例如 /opt/jws-5.x/tomcat/webapps)的 webapps 目录中。

例如:
sourceRepositoryUrl: 'https://github.com/$user/demo-webapp.git'

WebImage:
webApp:
sourceRepositoryRef

JWS Operator 使用的源存储库的分支

例如:
sourceRepositoryRef: main

WebImage:
webApp:
contextDir

pom.xml 文件所在的源存储库中的 子目录,并运行 mvn install 命令

例如:
contextDir: /

WebImage:
webApp:
webAppWarImage

JWS Operator 推送构建镜像的镜像的 URL

WebImage:
webApp:
webAppWarImagePushSecret

JWS Operator 用来将镜像推送到存储库的 secret 名称

secret 必须包含密钥 .dockerconfigjson。JWS Operator 挂载 secret,并使用类似于-- authfile /mount_point/.dockerconfigjson 来将镜像推送到存储库。

如果 JWS Operator 使用 pull secret 从存储库拉取镜像,您必须将 pull secret 名称指定为 webAppWarImagePushSecret 参数的值。如需更多信息,请参阅 imagePullSecret

例如:
imagePullSecret: mysecret

WebImage:
webApp:
builder

一组参数,用于描述 JWS Operator 如何构建 Web 应用程序并将镜像推送(push)到镜像存储库

注意

为确保构建器能够成功运行并使用不同的用户 ID 运行命令,构建器必须有权访问 anyuid SCC (安全上下文约束)。要授予构建器对 anyuid SCC 的访问权限,请输入以下命令:

oc adm policy add-scc-to-user anyuid -z builder

此参数包含 镜像imagePullSecretapplicationBuildScript 字段。

WebImage:
webApp:
builder:
image

JWS Operator 构建 Web 应用程序的容器的镜像

例如:
image: quay.io/$user/tomcat10-buildah

WebImage:
webApp:
builder:
imagePullSecret

JWS Operator 用来从存储库拉取构建器镜像的 secret (如果指定)的名称

secret 必须包含密钥 .dockerconfigjson。JWS Operator 挂载 secret,并使用类似于-- authfile /mount_point/.dockerconfigjson 从存储库拉取镜像。

Secret 对象定义文件可以包含多个用户名和密码值或令牌,以允许访问镜像流、构建器镜像和 JWS Operator 构建的镜像。

例如:
imagePullSecret: mysecret

WebImage:
webApp:
builder:
applicationBuildScript

构建器镜像用来构建应用程序 .war 文件的脚本,并将其移到 /mnt 目录中

如果没有为此参数指定值,则构建器镜像将使用 Maven 和 Buildah 的默认脚本。

WebImage:
webServerHealthCheck

JWS Operator 使用的健康检查

默认行为是使用 health valve,它不需要任何参数。

此参数包含 serverReadinessScriptserverLivenessScript 字段。

WebImage:
webServerHealthCheck:
serverReadinessScript

指定 pod 就绪度健康检查逻辑的字符串

如果没有指定此参数,JWS Operator 将使用 OpenShift 内部注册表检查默认健康检查。

例如:
serverReadinessScript: /bin/bash -c " /usr/bin/curl --noproxy '*' -s 'http://localhost:8080/health' | /usr/bin/grep -i 'status configuredUP'"

WebImage:
webServerHealthCheck:
serverLivenessScript

指定 pod 存活度健康检查逻辑的字符串

这个参数是可选的。

webImageStream

用于控制 JWS Operator 如何使用镜像流提供运行或构建的镜像的一组参数

JWS Operator 使用镜像流中的最新镜像。

此参数包含 applicationImageimagePullSecretwebAppwebServerHealthCheck 字段。

webImageStream:
imageStreamName

您创建的镜像流的名称,允许 JWS Operator 查找基础镜像

例如:
imageStreamName: my-image-name-imagestream:latest

webImageStream:
imageStreamNamespace

创建镜像流的命名空间或项目

例如:
imageStreamNamespace: my-namespace

webImageStream:
webSources

一组参数,用于描述应用程序源文件所处的位置以及如何构建它们

如果没有指定 webSources 参数,JWS Operator 会在镜像流中部署最新的镜像。

此参数包含 sourceRepositoryUrlsourceRepositoryRefcontextDirwebSourcesParams 字段。

webImageStream:
webSources:
sourceRepositoryUrl

应用程序源文件所在的 URL

源应包含 Maven pom.xml 文件,以支持 Maven 构建。当 Maven 为应用程序生成 .war 文件时,.war 文件将复制到 JWS Operator 用来部署应用程序(例如 /opt/jws-5.x/tomcat/webapps)的 webapps 目录中。

例如:
sourceRepositoryUrl: 'https://github.com/$user/demo-webapp.git'

webImageStream:
webSources:
sourceRepositoryRef

JWS Operator 使用的源存储库的分支

例如:
sourceRepositoryRef: main

webImageStream:
webSources:
contextDir

pom.xml 文件所在的源存储库中的 子目录,并运行 mvn install 命令

例如:
contextDir: /

webImageStream:
webSources:
webhookSecrets

指定通过 Webhook 触发构建的 secret 名称的一组参数

此参数包含 通用的githubgitlab 字段。

webImageStream:
webSources:
webhookSecrets:
generic

可触发构建的通用 Webhook 的 secret 名称

有关创建 secret 的更多信息,请参阅为 Webhook 创建 secret

有关使用通用 Webhook 的更多信息,请参阅 Webhook Triggers

例如:
generic: jws-secret

webImageStream:
webSources:
webhookSecrets:
github

可触发构建的 GitHub Webhook 的 secret 名称

有关创建 secret 的更多信息,请参阅为 Webhook 创建 secret

有关使用 GitHub Webhook 的更多信息,请参阅 Webhook Triggers

例如:
github: jws-secret

webImageStream:
webSources:
webhookSecrets:
gitlab

可以触发构建的 GitLab Webhook 的 secret 名称

有关创建 secret 的更多信息,请参阅为 Webhook 创建 secret

有关使用 GitLab Webhook 的更多信息,请参阅 Webhook Triggers

例如:
gitlab: jws-secret

webImageStream:
webSources:
webSourcesParams

描述如何构建应用程序镜像的一组参数

这个参数是可选的。

此参数包含 mavenMirrorUrl,artifactDir,genericWebhookSecret, 和 githubWebhookSecret 字段。

注意

genericWebhookSecretgithubWebhookSecret 字段在 JWS Operator 2.1 版本中已弃用。

webImageStream:
webSources:
webSourcesParams:
mavenMirrorUrl

Maven 用来构建 Web 应用的 Maven 代理 URL

如果集群无法访问互联网,则需要此参数。

webImageStream:
webSources:
webSourcesParams:
artifactDir

Maven 存储 Maven 为 Web 应用生成的 .war 文件的目录

此目录的内容复制到 JWS Operator 用来部署应用程序(例如 /opt/jws-5.x/tomcat/webapps)的 webapps 目录中。

默认值为 target

webImageStream:
webSources:
webSourcesParams:
genericWebHookSecret

重要

此参数在 2.1 版本中已弃用。改为使用 webhookSecrets:generic 参数。

webhook secret 字符串

有关创建 secret 的更多信息,请参阅为 Webhook 创建 secret

有关使用通用 Webhook 的更多信息,请参阅 Webhook Triggers

例如:
genericWebhookSecret: qwerty

webImageStream:
webSources:
webSourcesParams:
githubWebhookSecret

重要

此参数在 2.1 版本中已弃用。使用 webhookSecrets:github 参数替代。

特定于 GitHub 的 webhook secret 字符串

有关创建 secret 的更多信息,请参阅为 Webhook 创建 secret

有关使用 GitHub Webhook 的更多信息,请参阅 Webhook Triggers

注意

您无法对 GitHub Webhook 执行手动测试。GitHub 生成有效负载,它不为空。

webImageStream:
      webServerHealthCheck

JWS Operator 使用的健康检查

默认行为是使用 health valve,它不需要任何参数。

此参数包含 serverReadinessScriptserverLivenessScript 字段。

webImageStream:
webServerHealthCheck:
serverReadinessScript

指定 pod 就绪度健康检查逻辑的字符串

如果没有指定此参数,JWS Operator 将使用 OpenShift 内部注册表检查默认健康检查。

例如:
serverReadinessScript: /bin/bash -c " /usr/bin/curl --noproxy '*' -s 'http://localhost:8080/health' | /usr/bin/grep -i 'status configuredUP'"

webImageStream:
webServerHealthCheck:
serverLivenessScript

指定 pod 存活度健康检查逻辑的字符串

这个参数是可选的。

tlsConfig

为 web 服务器指定 TLS 配置的一组参数

此参数包含 routeHostname、certVerificationtlsSecret、和 tlsPassword 字段。

TLSConfig:
routeHostname

指明 Operator 是否应该创建路由,还是路由是否使用 TLS

支持的值是 NONEtls

  • 如果指定了 NONE,Operator 不会创建路由。在这种情况下,您必须手动创建路由。
  • 如果指定了 tls,Operator 会创建一个到 web 服务器的 passthrough 路由。

例如:
routeHostname: NONE

TLSConfig:
证书验证

指明 Operator 是否应该将 TLS 连接器与客户端证书一起使用

支持的值 需要可选 或空

如需更多信息,请参阅 Apache Tomcat HTTP Connector 文档 有关 certificateVerification 属性。

例如:
certificateVerification: required

TLSConfig:
tlsSecret

用于服务器证书(server.cert)和服务器密钥(server.key)的 secret,以及用于客户端证书的可选 CA 证书(ca.cert)

例如:
tlsSecret: tlssecret

TLSConfig:
tlsPassword

用于保护服务器密钥的密码短语(server.key)

例如:
tlsPassword: changeit

environmentVariables

用于部署的环境变量

persistentLogs

指定持久性卷和日志记录配置的一组参数

此参数包含 catalinaLogsenableAccessLogsvolumeNamestorageClass 字段。

persistentLogs:
catalinaLogs

指明每个 pod 的 catalina.out 日志文件是否已保存在持久性卷中,以便在可能 pod 失败后保持可用。

支持的值是 truefalse

例如:
catalinaLogs: true

persistentLogs:
enableAccessLogs

指明每个 Pod 的 access_log 日志文件是否保存在持久性卷中,以便在可能 pod 失败后保持可用。

支持的值是 truefalse

例如:
enableAccessLogs: true

persistentLogs:
volumeName

用于存储日志文件的持久性卷的名称

例如:
volumeName: pv0000

persistentLogs:
storageClass

用于存储日志文件的持久性卷的存储类的名称

例如:
storageClass: nfs-client

podResources

指定 web 服务器使用的 CPU 和内存资源配置

这些值必须分为 limitsrequests

例如:

resources:
limits:
cpu: 500m
requests:
cpu: 200m

这些值用于自动扩展。如需有关自动扩展的更多信息,请参阅使用 pod 横向自动扩展自动扩展 pod

securityContext

定义运行应用程序所需的安全功能

useInsightsClient

指明是否要与红帽提供的运行时清单 Operator 连接

支持的值是 truefalse

例如:
使用InsightsClient: true

您可以通过将 INSIGHTS_DEBUG 环境变量设置为 true 来为 Insights 客户端启用调试日志。

注意

useInsightsClient 参数需要使用 Red Hat JBoss Web Server 6.1 或更高版本的镜像。这个参数只是一个技术预览功能。

返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2025 Red Hat, Inc.