使用外部 Redis 配置 chart

本文档旨在提供有关如何使用外部 Redis 服务配置此 Helm chart 的文档。

如果您没有配置 Redis,对于本地部署或部署到 VM,请考虑使用我们的 Omnibus GitLab 包

配置 Chart

禁用 redis chart 及其提供的 Redis 服务,将其它服务指向外部服务。 您需要设置以下参数:

  • redis.install:设置为 false 以禁用包括 Redis chart。
  • global.redis.host:设置为外部 Redis 的主机名,可以是域名或 IP 地址。
  • global.redis.password.enabled:如果外部 Redis 不需要密码,则设置为 false
  • global.redis.password.secret包含身份验证令牌的 secret 的名称。
  • global.redis.password.key:包含令牌内容的 secret 中的键。

如果您不使用默认值,可以进一步自定义以下配置项:

  • global.redis.port:数据库可用的端口,默认为6379

例如,在部署时通过 Helm 的 --set 标志传递这些值:

helm install gitlab gitlab/gitlab  \
  --set redis.install=false \
  --set global.redis.host=redis.example \
  --set global.redis.password.secret=gitlab-redis \
  --set global.redis.password.key=redis-password \

如果您要连接到运行 Sentinel 服务器的 Redis HA 集群,则需要将 global.redis.host 属性设置为指定的 Redis 实例组的名称(例如 mymasterresque) 在 sentinel.conf 中。 可以使用 global.redis.sentinels[0].hostglobal.redis.sentinels[0].port 值作为 --set 标志来引用 Sentinel 服务器。 该指数从零开始。

使用多个 Redis 实例

GitLab 支持将多个资源密集型 Redis 操作拆分到多个 Redis 实例。 此 chart 支持将以下持久类分发到其它 Redis 实例:cachequeuessharedStateactioncabletraceChunks

有关配置 chart 以使用多个 Redis 实例的更多详细信息,请参见 全局配置 文档。

指定安全 Redis 方案 (SSL)

为了使用 SSL 连接到 Redis,需要 rediss(注意双 s)方案参数:

  --set global.redis.scheme=rediss