{{< details >}}

  • Tier: 基础版, 专业版, 旗舰版
  • Offering: 私有化部署

{{< /details >}}

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

设置

  1. SSH 登录到 PostgreSQL 服务器。
  2. 下载并安装您想要的 Linux 软件包,使用极狐 GitLab 下载页面的步骤 1 和 2。不要完成下载页面上的其他步骤。
  3. 为 PostgreSQL 生成密码哈希。这假设您使用默认的用户名 gitlab(推荐)。该命令请求密码和确认。在下一步中使用此命令输出的值作为 POSTGRESQL_PASSWORD_HASH 的值。

    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)
    # Disable all components except PostgreSQL
    roles(['postgres_role'])
    prometheus['enable'] = false
    alertmanager['enable'] = false
    pgbouncer_exporter['enable'] = false
    redis_exporter['enable'] = false
    gitlab_exporter['enable'] = false
    
    postgresql['listen_address'] = '0.0.0.0'
    postgresql['port'] = 5432
    
    # Replace POSTGRESQL_PASSWORD_HASH with a generated md5 value
    postgresql['sql_user_password'] = 'POSTGRESQL_PASSWORD_HASH'
    
    # Replace XXX.XXX.XXX.XXX/YY with Network Address
    # ????
    postgresql['trust_auth_cidr_addresses'] = %w(APPLICATION_SERVER_IP_BLOCKS)
    
    # Disable automatic database migrations
    gitlab_rails['auto_migrate'] = false
    
  5. 重新配置极狐 GitLab以使更改生效。
  6. 记录 PostgreSQL 节点的 IP 地址或主机名、端口和明文密码。这些在稍后配置极狐 GitLab 应用服务器时是必要的。
  7. 启用监控

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