使用 Shared-Secrets Job
shared-secrets
job 负责提供整个安装过程中使用的各种 secret,除非另外手动指定。包括:
- 初始 root 密码
- 所有公共服务的自签名 TLS 证书:GitLab、MinIO 和 Registry
- Registry 认证证书
- MinIO、Registry、GitLab Shell 和 Gitaly 的 Secret
- Redis 和 PostgreSQL 密码
- SSH 主机密钥
- 用于加密凭证的 GitLab Rails secret。
安装命令行选项
下表包含可以使用 --set
标志提供给 helm install
命令的所有可能的配置:
参数 | 默认值 | 说明 |
---|---|---|
enabled
| true
| 查看下方文档 |
env
| production
| Rails 环境 |
podLabels
| 补充 Pod 标签。不会用于选择器。 | |
annotations
| 补充 Pod annotations | |
image.pullPolicy
| Always
| Gitaly 镜像拉取策略 |
image.pullSecrets
| 用于镜像仓库的 Secrets | |
image.repository
| registry.gitlab.com/gitlab-org/build/cng/kubectl
| Gitaly 镜像仓库 |
image.tag
| 1f8690f03f7aeef27e727396927ab3cc96ac89e7
| Gitaly 镜像标签 |
rbac.create
| true
| 创建RBAC角色和绑定 |
resources
| 资源请求值、限制值 | |
securitContext.fsGroup
| 65534
| 用于挂载文件系统的 User ID |
securitContext.runAsUser
| 65534
| 用于运行容器的 User ID |
selfsign.caSubject
| GitLab Helm Chart
| selfsign CA 主题 |
selfsign.image.repository
| registry.gitlab.com/gitlab-org/build/cnf/cfssl-self-sign
| selfsign 镜像仓库 |
selfsign.image.pullSecrets
| 用于拉取镜像仓库的 secrets | |
selfsign.image.tag
| selfsign 镜像标签 | |
selfsign.keyAlgorithm
| rsa
| selfsign 证书密钥算法 |
selfsign.keySize
| 4096
| selfsign 证书密钥大小 |
serviceAccount.enabled
| true
| 定义 Job 中的 serviceAccountName |
serviceAccount.create
| true
| 创建 ServiceAccount |
serviceAccount.name
| RELEASE_NAME-shared-secrets
| Job 中指定的 Service account 名称 (如果 serviceAccount.create=true ,在 serviceAccount 中)
|
tolerations
| []
| 分配给 Pod 的容忍标签 |
Job 配置示例
tolerations
tolerations
允许您调度 Pod 到受污染的工作节点上。
下面是一个使用 tolerations
的例子:
tolerations:
- key: "node_label"
operator: "Equal"
value: "true"
effect: "NoSchedule"
- key: "node_label"
operator: "Equal"
value: "true"
effect: "NoExecute"
禁用功能
某些用户可能希望明确禁用此 Job 提供的功能。
为此,我们提供了 enabled
标志布尔值,默认为 true
。
要禁用该 Job,请传递 --set shared-secrets.enabled=false
,或通过 -f
标志在 YAML 中将以下内容传递给 helm
:
shared-secrets:
enabled: false
如果禁用此 Job,则必须手动创建所有 secret,并提供所有必要的 secret 内容。有关更多详细信息,请参阅相关文档。