极狐GitLab Runner Helm Chart

将极狐GitLab Runner 实例部署到 Kubernetes 集群的官方方法是使用极狐GitLab Runner Helm Chart。

这个 chart 将极狐GitLab Runner 配置为:

  • 使用极狐GitLab Runner 的 Kubernetes 执行器运行。
  • 对于每个来自极狐GitLab CI/CD 的新作业,在特定的命名空间中部署新的 Pod 进行运行。

使用 Helm chart 配置极狐GitLab Runner

将您的极狐GitLab Runner 配置变更存储在 values.yaml 文件中。关于此文件的配置信息,可以查看:

  • chart 仓库中 values.yaml 文件的默认配置。
  • Helm 文档中关于 Values 文件 的解释,详细解释了如何用文件覆盖默认设置。

为了极狐GitLab Runner 的正确运行,您必须在 values.yaml 中指定以下内容:

  • gitlabUrl: 极狐GitLab 实例的完整 URL (比如 https://gitlab.example.com) ,用于 Runner 的注册。
  • rbac: { create: true }: 为极狐GitLab Runner 创建 RBAC(基于角色的访问控制)规则,以便在特定的命名空间中创建 Pod 运行作业。
    • 如果您想使用现有的 serviceAccount?您需要设置 rbac: {serviceAccountName: "SERVICE_ACCOUNT_NAME" }
    • 关于 serviceAccount 所需最小权限的更多信息,可以查看 配置 runner API 权限
  • runnerToken: 当您在GitLab UI 上创建 runner 是所获取的认证令牌。
    • 直接设置此令牌或将其设为 Kubernetes secret。

可查看更多可选配置设置

准备好 安装极狐GitLab Runner 吧,少年!

使用 Helm Chart 安装极狐GitLab Runner

先决条件:

安装步骤为:

  1. 添加极狐GitLab Helm 仓库:

     helm repo add gitlab-jh https://charts.gitlab.cn
    
  2. 如果使用的是 Helm 2,您必须初始化 Helm:

     helm init
    
  3. 要查看您有权访问的极狐GitLab Runner 版本列表,请运行:

     helm search repo -l gitlab-jh/gitlab-runner
    
  4. 如果您无法访问最新版本的极狐GitLab Runner,您应该更新 Chart。要更新 Chart,请运行:

     helm repo update gitlab
    
  5. 如果您在 values.yaml配置了极狐GitLab Runner,请运行以下命令:

     # For Helm 2
     helm install --namespace <NAMESPACE> --name gitlab-runner -f <CONFIG_VALUES_FILE> gitlab/gitlab-runner
    
     # For Helm 3
     helm install --namespace <NAMESPACE> gitlab-runner -f <CONFIG_VALUES_FILE> gitlab/gitlab-runner
    
    • <NAMESPACE> 是您想安装极狐GitLab Runner 的 Kubernetes 命名空间。
    • <CONFIG_VALUES_FILE> 是包含自定义配置的 Values 文件的路径。如果您想创建,请参见使用 Helm Chart 配置极狐GitLab Runner
    • 如果您想安装特定版本的极狐GitLab Runner Helm Chart,请向 helm install 命令中添加 --version <RUNNER_HELM_CHART_VERSION>。 您可以用这种方法安装任何版本的 Chart,但是更新的 values.yml 可能不适用于旧版本的 Chart。

查看可用的极狐GitLab chart 版本

Helm charts 和极狐GitLab Runner 并不具有同样的版本。要查看两者之间的版本映射。执行以下 Helm 命令:

# For Helm 2
helm search -l gitlab-jh/gitlab-runner

# For Helm 3
helm search repo -l gitlab-jh/gitlab-runner

输出示例:

NAME                   	CHART VERSION	APP VERSION	DESCRIPTION
gitlab-jh/gitlab-runner	0.71.0       	17.6.0     	GitLab Runner
gitlab-jh/gitlab-runner	0.70.3       	17.5.3     	GitLab Runner
gitlab-jh/gitlab-runner	0.70.2       	17.5.2     	GitLab Runner
gitlab-jh/gitlab-runner	0.70.1       	17.5.1     	GitLab Runner
gitlab-jh/gitlab-runner	0.70.0       	17.5.0     	GitLab Runner
gitlab-jh/gitlab-runner	0.69.0       	17.4.0     	GitLab Runner
gitlab-jh/gitlab-runner	0.68.1       	17.3.1     	GitLab Runner
gitlab-jh/gitlab-runner	0.68.0       	17.3.0     	GitLab Runner
gitlab-jh/gitlab-runner	0.67.0       	17.2.0     	GitLab Runner
gitlab-jh/gitlab-runner	0.66.0       	17.1.0     	GitLab Runner
...

使用 Helm Chart 升级极狐GitLab Runner

先决条件:

  • 您已经安装了您的极狐GitLab Runner chart。
  • 您已经暂停了 Runner。这可以防止作业出现问题,例如完成时的授权问题
  • 您已经确保所有作业都已经完成。

如果修改变更或升级 charts,使用 helm upgrade 命令,按需修改参数即可:

helm upgrade --namespace <NAMESPACE> -f <CONFIG_VALUES_FILE> <RELEASE-NAME> gitlab/gitlab-runner
  • <NAMESPACE> 是安装极狐GitLab Runner 的 Kubernetes 命名空间。
  • <CONFIG_VALUES_FILE> 是包含自定义配置的 Values 文件的路径。如果您想创建,请参见使用 Helm Chart 配置极狐GitLab Runner
  • <RELEASE-NAME> 是安装 chart 时您为它取的名字。 在使用 Helm Chart 安装极狐GitLab Runner中,我们将其称为 gitlab-runner
  • 如果您想升级到特定版本的极狐GitLab Runner Helm Chart,而不是最新的版本,请在 helm upgrade 命令中添加 --version <RUNNER_HELM_CHART_VERSION>

使用 Helm chart 卸载极狐GitLab Runner

To uninstall GitLab Runner:

要卸载极狐GitLab Runner:

  1. 在极狐GitLab 中暂停 runner 并确保所有作业都已经完成。这可以防止作业出现问题,例如完成时的授权问题
  2. 运行如下命令,并按需修改:
  3. Run, this command, modifying it as needed:

    helm delete --namespace <NAMESPACE> <RELEASE-NAME>
    
    • <NAMESPACE> 是安装极狐GitLab Runner 的 Kubernetes 命名空间。
    • <RELEASE-NAME> 是安装 chart 时您为它取的名字。 在使用 Helm Chart 安装极狐GitLab Runner中,我们将其称为 gitlab-runner