配置说明
说明:此文档仅对重要参数加以解释说明,部分参数因作用相似或雷同,这里不加以赘述。
- 所有非第三方服务均可以自定义服务名
<service>.name,用以更改服务名称以及 ingress 暴露的域名(portal 主域名除外)。- 所有非第三方服务均可以定义 deployment,statefulset 的绝大部署相关属性,例如 labels, annotations, replicas, serviceAccount, environments, resources, volumeMounts, livenessProbe, readinessProbe, startupProbe, lifecycle, stdin,tty, volumes, nodeSelector, tolerations, affinity, securityContext 等等。
本文档用于说明 CSGHub Helm Chart 中的重要配置项,包括全局配置、核心服务配置、内置组件以及各项参数的优先级说明。适用于部署、运维及二次开发人员。
1. Global 全局配置
1.1 edition 发行版
global:
edition: "ce" or "ee"
用于指定部 署版本,为社区版或企业版。不同版本会影响镜像 tag、启用的功能以及依赖项。
1.2 Ingress 访问配置
global:
ingress:
domain: "example.com"
useTop: false
tls:
enabled: false
secretName: "<kubernetes tls secret name>"
service:
type: "LoadBalancer" or "NodePort"
-
ingress
-
domain
CSGHub 系统使用的基础域名,所有服务都会基于此生成最终访问域名。
-
useTop
是否直接使用顶级域名。
- true:CSGHub主服务直接使用顶级域名(如
example.com)。 - false:服务使用子域名(默认
csghub.example.com)。
- true:CSGHub主服务直接使用顶级域名(如
-
tls
- enabled
- true:启用 HTTPS 加密访问, 开启 HTTPS 必须提供 secretName。
- false: 不启用 HTTPS 加密访问。
- enabled
-
service
-
type
指定 csghub Ingress 的对外暴露方式,可选值
LoadBalancer或NodePort。注意:此值需要在部署时指定,部署后修改 svc 类型的方式会影响访问。
此字段通过 YAML 锚点引用(&type),会影响
ingress-nginx.controller.service.type。
-
-
优先级设定:
global.ingress < ingress < <service>.ingress
1.3 Image 全局镜像配置
global:
image:
registry: "opencsg-registry.cn-beijing.cr.aliyuncs.com"
tag: "v1.11.0"
pullPolicy: "IfNotPresent"
pullSecrets:
- acr-pull-secret
-
registry
此参数会覆盖 helm chart 中所有镜像的镜像仓库,通常不建议修改,默认会依赖镜像的原镜像仓库拉取相关镜像。可能是 docker.io 等。如果是国内使用可以设置为
opencsg-registry.cn-beijing.cr.aliyuncs.com。 -
tag
用来定义 csghub 镜像的版本号。如果镜像 namespace 属于 opencsghq,模板会根据 tag 是否合规自动补全 edition 等标识。例如示例中的 tag 在实际渲染时会输出为
v1.11.0-ce/v1.11.0-ee。 -
pullPolicy
镜像拉取策略。
-
pullSecrets
配置拉取秘钥从私有镜像仓库拉取镜像。
优先级设定:
global.image < image < <service>.image
1.4 Persistence 全局存储
global:
persistence:
storageClass: "hostpath"
accessModes: ["ReadWriteOnce"]
size: "10Gi"
-
storageClass
所有 Statefulset 默认使用的存储类。
-
accessModes
所有 Statefulset 默认使用的访问模式。
-
Size
所有 Statefulset 创建 PVC 默认的存储卷大小。
优先级设定:
global.persistence < <service>.persistence
1.5 PostgreSQL、Redis、Mongo、Object Storage、Registry 等 external 配置
每个组件均支持:
<service>:
enabled: true or false
external: {}
-
enabled
- true:启用内置服务组件,此时 external 配置不生效
-
external
当 enabled 设置为 false 时,通过 external 设置对应外置服务组件的连接信息。
优先级设定:
global.service < <service>.service
1.6 ChartContext 上下文配置
chartContext:
isBuiltIn: true
-
isBuitIn
默认为 true,主要作用是为了实现 dataflow,runner,csgship chart 的无缝集成,标识 chart 是独立部署还是和 csghub 主服务捆绑部署。
2. CSGHub Core 核心服务配置
2.1 Image(核心服务镜像)
image:
registry: "opencsg-registry.cn-beijing.cr.aliyuncs.com"
tag: "v1.11.0"
pullPolicy: "IfNotPresent"
pullSecrets:
- acr-pull-secret
此参数作用和 global.image作用类似,但是作用域仅局限在以 csghub-server/csghub-portal 镜像启动的服务。
优先级设定:
global.image < image(Here) < <service>.image