使用 GitLab-Spamcheck chart
spamcheck
子 chart 提供了 Spamcheck 的部署,这是一个反垃圾邮件引擎。
要求
此 chart 依赖于对 GitLab API 的访问。
配置
启用 Spamcheck
spamcheck
默认被禁用。要在实例上启用它,请将 Helm 属性 global.spamcheck.enabled
设置为 true
,例如:
helm upgrade --force --install gitlab . \
--set global.hosts.domain='your.domain.com' \
--set global.hosts.externalIP=XYZ.XYZ.XYZ.XYZ \
--set certmanager-issuer.email='me@example.com' \
--set global.spamcheck.enabled=true
配置使用 Spamcheck
- 在顶部栏上,选择 菜单 > 管理员。
- 在左侧边栏,选择 设置 > 报告。
- 展开 垃圾邮件和反机器人保护。
- 更新垃圾邮件检查设置:
- 选中 通过外部API端点启用垃圾信息检查 复选框
- 对于外部垃圾邮件检查端点的 URL,使用
grpc://gitlab-spamcheck.default.svc:8001
,其中default
替换为部署 GitLab 的 Kubernetes 命名空间。 - 将 垃圾邮件检查 API 密钥 留空。
- 选择 保存修改。
安装命令行选项
下表包含可以使用 --set
标志提供给 helm install
命令的所有可能的 chart 配置。
参数 | 默认值 | 描述 |
---|---|---|
annotations
| {}
| Pod annotations |
common.labels
| {}
| 应用于此 chart 创建的所有对象的补充标签。 |
deployment.livenessProbe.initialDelaySeconds
| 20 | 启动 liveness 探测前的延迟时间 |
deployment.livenessProbe.periodSeconds
| 60 | 多久执行一次 liveness 探测 |
deployment.livenessProbe.timeoutSeconds
| 30 | liveness 探测超时时间 |
deployment.livenessProbe.successThreshold
| 1 | liveness 探测失败后,被视为成功的最小连续成功次数 |
deployment.livenessProbe.failureThreshold
| 3 | liveness 探测成功后,被视为失败的最小连续失败次数 |
deployment.readinessProbe.initialDelaySeconds
| 0 | 启动 readiness 探测前的延迟时间 |
deployment.readinessProbe.periodSeconds
| 10 | 多久执行一次 readiness 探测 |
deployment.readinessProbe.timeoutSeconds
| 2 | readiness 探测超时时间 |
deployment.readinessProbe.successThreshold
| 1 | readiness 探测失败后,被视为成功的最小连续成功次数 |
deployment.readinessProbe.failureThreshold
| 3 | readiness 探测成功后,被视为失败的最小连续失败次数 |
deployment.strategy
| {}
| 允许配置部署使用的更新策略。如果未提供,则使用集群默认值。 |
hpa.targetAverageValue
| 100m
| 设置自动缩放目标值(CPU) |
image.repository
| registry.gitlab.com/gitlab-com/gl-security/engineering-and-research/automation-team/spam/spamcheck
| Spamcheck 镜像仓库 |
logging.format
| json
| 日志格式 |
logging.level
| info
| 日志级别 |
metrics.enabled
| true
| 切换 Prometheus 指标导出器 |
metrics.port
| 8003
| 用于指标导出器的端口号 |
metrics.path
| /metrics
| 用于指标导出器的路径 |
maxReplicas
| 10
| HPA maxReplicas
|
maxUnavailable
| 1
| HPA maxUnavailable
|
minReplicas
| 2
| HPA maxReplicas
|
podLabels
| {}
| 补充 Pod 标签,不用于选择器。 |
resources.requests.cpu
| 100m
| Spamcheck 最小 CPU |
resources.requests.memory
| 100M
| Spamcheck 最小内存 |
securityContext.fsGroup
| 1000
| 在其下启动 Pod 的 Group ID |
securityContext.runAsUser
| 1000
| 在其下启动 Pod 的 User ID |
serviceLabels
| {}
| 补充服务标签 |
service.externalPort
| 8001
| Spamcheck 外部端口 |
service.internalPort
| 8001
| Spamcheck 内部端口 |
service.type
| ClusterIP
| Spamcheck 服务类型 |
serviceAccount.enabled
| 使用 ServiceAccount 标志 | false
|
serviceAccount.create
| 创建 ServiceAccount 标志 | false
|
tolerations
| []
| pod 分配的容忍标签 |
Chart 配置示例
tolerations
tolerations
允许您调度 pod 到受污染的工作节点上。
下面是一个使用 tolerations
的示例:
tolerations:
- key: "node_label"
operator: "Equal"
value: "true"
effect: "NoSchedule"
- key: "node_label"
operator: "Equal"
value: "true"
effect: "NoExecute"
annotations
annotations
允许您向 Web 服务 pod 添加注释。例如:
annotations:
kubernetes.io/example-annotation: annotation-value