使用 Helm 安装极狐GitLab

使用云原生的极狐GitLab Helm Chart,在 Kubernetes 环境中安装极狐GitLab。

假设您已经安装并配置了先决条件项,您可以使用 helm 命令部署极狐GitLab

caution 默认的 Helm chart 配置不适用于生产。默认 chart 会创建一个 PoC 实现,所有的极狐GitLab 服务都会被部署到此集群中。对于生产部署,您必须遵循云原生混合参考架构

对于生产部署,您应该有丰富的 Kubernetes 知识。这种部署方式相比于传统部署有不同的管理、可观测性和概念。

在生产部署中:

  • 有状态组件,诸如 PostgreSQL 或 Gitaly(一个 Git 仓库用来存储数据面),必须在 PaaS 或计算实例上的集群外运行。这种配置是为了扩展性和可靠地服务生产极狐GitLab 环境中发现的各种工作负载所必需的。
  • 您应该为 PostgreSQL、Redis 和对象存储提供所有非 Git 仓库存储。

如果极狐GitLab 实例不需要 Kubernetes,请参阅更简单的替代方案的参考架构

配置 Helm chart 以使用外部的有状态数据

您可以配置极狐GitLab Helm chart 以让一些条目,诸如 PostgreSQL、Redis、所有非 Git 仓库存储以及 Git 仓库存储(Gitaly)使用外部的有状态存储。

以下的基础设施即代码(IaC)选项就使用了这种方法。

对于生产级实现来说,应使用适当的 cahrt 参数指向与所选参考架构一致的预构建、外部化的状态存储。

使用参考架构

在 Kubernetes 上部署极狐GitLab 实例的参考架构被称之为云原生混合参考架构,之所以这么叫是因为并非所有的极狐GitLab 服务都能够在生产级的集群上运行。所有的有状态极狐GitLab 组件必须部署在 Kubernetes 集群之外。

可用的云原生混合参考架构尺寸都列在参考架构页面。比如,这就是一个针对 3,000 人的云原生混合参考架构

使用基础设施即代码(IaC)和构建器资源

极狐GitLab 开发了基础设施即代码(Infrastructure as Code),能够配置 Helm charts 和补充云基础设施的组合: