Docs

Documentation versions (currently viewingVaadin 24)
Documentation translations (currently viewingChinese)

本页面为机器翻译,原官方文档请访问 http://vaadin.com/docs。机器翻译可能含有错误、不准确或表述不当之处。Vaadin 对译文的准确性、可靠性或时效性不做任何担保或声明。

配置安装

如何使用 Helm 配置 Control Center 的安装。

本页面解释了如何使用 Helm 配置 Control Center 的安装。您可以设置许多值,包括您的域名和用户信息。

设置配置值

下面通过 Helm 命令示例配置多个参数。您应根据实际需要修改示例中的值。

Source code
Terminal
helm install control-center-name oci://docker.io/vaadin/control-center \ 1
    -n foo-namespace --create-namespace \ 2
    --set domain=mydomain.com \ 3
    --set user.email=example@mydomain.com \ 4
    --set app.host=cc.mydomain.com \ 5
    -f values-ingress.yaml \ 6
    --wait
  1. 已安装应用的名称被设置为 control-center-name

  2. 应用安装所在的命名空间被设置为 foo-namespace

  3. 必填的 domain 值被设置为 mydomain.com

  4. 必填的 user.email 值被设置为 example@mydomain.com

  5. 可选的 app.host 值被设置为 cc.mydomain.com

  6. Ingress 的值通过名为 values-ingress.yaml 的文件进行配置。

实际配置安装时,除了上述示例中展示的参数之外,还有更多命令选项可用。所有参数选项请详见 Helm 官方文档

值列表

下表列出了可用的配置值及其说明。每个值在安装 Control Center 时均可通过 --set 参数设置。

Value Required Default Description

domain

Control Center 安装的域名。用于生成 Control Center 及 Keycloak 的主机名。

user.email

Control Center 管理员用户的电子邮件地址。

nameOverride

替换所有 “control-center” 的出现。

fullnameOverride

如果发布名称为 "control-center",则全名生成为 "control-center"。如果发布名称为 "foo",则全名为 "foo-control-center"。此值可覆盖全名。

serviceAccount.create

true

指定是否应创建服务账户。

serviceAccount.automount

true

指定是否自动挂载服务账户令牌。

serviceAccount.name

要使用的服务账户名称。

serviceAccount.annotations

要添加到服务账户的注解。

app.host

Control Center 应用的主机名。若未指定,则使用 control.${domain}

app.tlsSecret

Control Center 应用的 keystore 密钥名称。

app.image.repository

vaadin/control-center

Control Center 应用使用的镜像仓库。

app.image.pullPolicy

镜像拉取策略。未指定时采用 Kubernetes 默认值。

app.image.tag

Control Center 应用镜像的标签。未指定时,使用 chart 的 appVersion

app.imagePullSecrets

Control Center 应用的镜像拉取密钥。

app.podLabels

为 Control Center 应用 Pod 添加的额外标签。

app.podAnnotations

为 Control Center 应用 Pod 添加的额外注解。

app.podSecurityContext

Control Center 应用 Pod 的安全上下文配置。

app.securityContext

Control Center 应用部署的安全上下文配置。

app.replicaCount

1

Control Center 应用的副本数量。

app.autoscaling.enabled

false

是否为 Control Center 应用启用 autoscaling

app.autoscaling.minReplicas

1

Control Center 应用的最小副本数。

app.autoscaling.maxReplicas

100

Control Center 应用的最大副本数。

app.autoscaling.targetCPUUtilizationPercentage

80

Control Center 应用的目标 CPU 利用率百分比。

app.autoscaling.targetMemoryUtilizationPercentage

90

Control Center 应用的目标内存利用率百分比。

app.resources

为 Control Center 应用容器分配的资源。

app.startupProbe.httpGet.path

/actuator/health

Control Center 应用启动探针的路径。

app.startupProbe.httpGet.port

http

启动探针使用的端口。

app.startupProbe.initialDelaySeconds

0

启动探针初始延迟(秒)。

app.startupProbe.failureThreshold

30

启动探针失败阈值,探针连续失败达到次数后容器将被重启。

app.livenessProbe.httpGet.path

/actuator/health/liveness

Control Center 应用存活探针的路径。

app.livenessProbe.httpGet.port

http

存活探针使用的端口。

app.livenessProbe.initialDelaySeconds

0

存活探针初始延迟(秒)。

app.livenessProbe.failureThreshold

3

存活探针失败阈值,连续失败次数达到后容器将被重启。

app.readinessProbe.httpGet.path

/actuator/health/readiness

Control Center 应用就绪探针的路径。

app.readinessProbe.httpGet.port

http

就绪探针使用的端口。

app.readinessProbe.initialDelaySeconds

0

就绪探针初始延迟(秒)。

app.readinessProbe.failureThreshold

3

就绪探针失败阈值。

app.volumes

Control Center 应用的卷定义。

app.volumeMounts

Control Center 应用的卷挂载。

app.nodeSelector

Control Center 应用的自定义节点选择器。

app.tolerations

Control Center 应用的自定义 tolerations

app.affinity

Control Center 应用的自定义亲和性配置。

app.service.type

ClusterIP

为 Control Center 应用创建的服务类型。

app.service.port

80

要暴露的 Control Center 应用端口。

app.service.targetPort

8080

Control Center 应用容器的端口。

app.ingress.enabled

true

指定是否为 Control Center 应用创建 Ingress。

app.ingress.annotations

为 Ingress 添加的注解。

app.ingress.hosts

Ingress 主机名,如果未指定则使用 app.host

app.ingress.tls

Ingress 的 TLS 配置。

postgres.replicaCount

1

PostgreSQL 数据库副本数量。

postgres.storage.size

1Gi

PostgreSQL 数据库存储容量。

keycloak.image.repository

vaadin/control-center-keycloak

用于 Keycloak 实例的镜像仓库。

keycloak.image.tag

用于 Keycloak 实例的镜像标签。未指定时使用 chart 的 appVersion

keycloak.resources

为 Keycloak 容器分配的资源。

keycloak.host

Keycloak 实例的主机名。如果未指定,默认为 auth.${domain}

keycloak.tlsSecret

Keycloak 实例 keystore 的密钥名称。

acme.enabled

false

指定是否为 Ingress 启用 ACME。启用后,将通过 CertManager 向 “Let’s Encrypt” 自动申请证书。需要为 Ingress 主机配置公网 DNS 记录。

acme.server

http://acme-v02.api.letsencrypt.org/directory

指定所使用的 ACME 服务器。

keycloak-operator.enabled

true

指定是否启用 Keycloak Operator。

keycloak-operator.image.repository

quay.io/keycloak/keycloak-operator

用于 Keycloak Operator 的镜像仓库。

cloudnative-pg.enabled

true

指定是否启用 Cloud Native PostgreSQL Operator。

cloudnative-pg.crds.create

false

指定是否为 Operator 创建自定义资源定义(CRD)。

ingress-nginx.enabled

true

指定是否启用 Ingress NGINX Controller。

ingress-nginx.controller.scope.enabled

true

指定是否为 Ingress NGINX Controller 启用作用域。

cert-manager.enabled

true

指定是否启用 CertManager。

cert-manager.enableCertificateOwnerRef

true

指定是否为 CertManager 启用证书所有者引用。

external-dns.enabled

false

指定是否启用 ExternalDNS。

external-dns.namespaced

true

指定 ExternalDNS 是否作用于命名空间级别。

external-dns.txtOwnerId

control-center

ExternalDNS 的 TXT owner ID。

external-dns.sources

[ingress]

ExternalDNS 的资源来源。