极狐 GitLab

使用 Linux 软件包安装的独立 PostgreSQL

Tier: 基础版, 专业版, 旗舰版

Offering: 私有化部署

如果您希望将数据库服务与极狐 GitLab 应用服务器分开托管,您可以使用与 Linux 软件包一起打包的 PostgreSQL 二进制文件来实现。这是我们参考架构,最多支持 40 RPS 或 2,000 用户的一部分推荐配置。

设置#

  1. SSH 登录到 PostgreSQL 服务器。

  2. 下载并安装您想要的 Linux 软件包,使用极狐 GitLab 下载页面的步骤 1 和 2。不要完成下载页面上的其他步骤。

  3. 为 PostgreSQL 生成密码哈希。这假设您使用默认的用户名 gitlab(推荐)。该命令请求密码和确认。在下一步中使用此命令输出的值作为 POSTGRESQL_PASSWORD_HASH 的值。

    shell
    sudo gitlab-ctl pg-password-md5 gitlab
  4. 编辑 /etc/gitlab/gitlab.rb 并添加以下内容,适当地更新占位符值。

    • POSTGRESQL_PASSWORD_HASH - 上一步输出的值
    • APPLICATION_SERVER_IP_BLOCKS - 极狐 GitLab 应用服务器连接到数据库的 IP 子网或 IP 地址的空格分隔列表。示例:%w(123.123.123.123/32 123.123.123.234/32)
    ruby
    1# Disable all components except PostgreSQL 2roles(['postgres_role']) 3prometheus['enable'] = false 4alertmanager['enable'] = false 5pgbouncer_exporter['enable'] = false 6redis_exporter['enable'] = false 7gitlab_exporter['enable'] = false 8 9postgresql['listen_address'] = '0.0.0.0' 10postgresql['port'] = 5432 11 12# Replace POSTGRESQL_PASSWORD_HASH with a generated md5 value 13postgresql['sql_user_password'] = 'POSTGRESQL_PASSWORD_HASH' 14 15# Replace XXX.XXX.XXX.XXX/YY with Network Address 16# ???? 17postgresql['trust_auth_cidr_addresses'] = %w(APPLICATION_SERVER_IP_BLOCKS) 18 19# Disable automatic database migrations 20gitlab_rails['auto_migrate'] = false
  5. 重新配置极狐 GitLab以使更改生效。

  6. 记录 PostgreSQL 节点的 IP 地址或主机名、端口和明文密码。这些在稍后配置极狐 GitLab 应用服务器时是必要的。

  7. 启用监控

支持高级配置选项,如有需要,可以添加。