四步完成指定版本的 GitLab Runner 安装

打印 上一主题 下一主题

主题 700|帖子 700|积分 2100

本分分享如何使用 Helm 来在 Kubernetes 集群上安装极狐GitLab Runner。整体步骤分为:Helm 的安装、vaules.yaml 文件的设置、Runner 的安装、Runner 的测试。
极狐GitLab 为 GitLab 在中国的发行版,中文版本对中国用户更友爱。极狐GitLab 支持一键私有化摆设,可以在 ubuntu、centos、Debian、Docker、Kubernetes 上灵活安装。安装详情可以检察官方网站
Helm 的安装

Helm 的安装非常简单,在官网下载对应版本的安装包,然后解压即可。比如,在 Ubuntu 上安装 3.x 版本,使用如下命令:
  1. # 解压安装包
  2. tar -zxvf helm-v3.15.4-linux-amd64.tar.gz
  3. # 将可执行文件拷贝到 /usr/local/bin
  4. cp linux-amd64/helm /usr/local/bin/helm
  5. 安装后,可用 version或者 help命令进行查看:
  6. helm version
  7. version.BuildInfo{Version:"v3.15.4", GitCommit:"fa9efb07d9d8debbb4306d72af76a383895aa8c4", GitTreeState:"clean", GoVersion:"go1.22.6"}
  8. 接着就可以添加极狐GitLab Runner helm repo 了。
  9. # 添加仓库
  10. helm repo add jh-gitlab https://charts.gitlab.cn
  11. "jh-gitlab" has been added to your repositories
  12. # 更新仓库
  13. helm repo update
  14. Hang tight while we grab the latest from your chart repositories...
  15. ...Successfully got an update from the "jh-gitlab" chart repository
复制代码
vaules.yaml 文件的设置

使用 Helm 安装,values.yaml 的设置是非常重要的,该文件会包罗一些现实参数,然后安装的时间用这些参数去对 Chart 进行渲染。极狐GitLab Runner Helm chart 中的 vaules.yaml 文件的设置比较多,详情可以检察官网详情。但是必须用到的几个参数如下:
必要设置


  • gitlabUrl:极狐GitLab 的实例地点,Runner 安装的过程需要跟该实例进行通信。比如针对极狐GitLab SaaS,该地点为 https://jihulab.com。用户需要根据自身情况,填写真实的极狐GitLab 实例地点;
  • runnerToken:极狐GitLab Runner 注册所用的令牌,这个需要自行创建。步骤会在下面讲解。
额外设置


  • runners.config:Runner 的一些“个性化”设置,比如使用 s3 存储桶、docker 执行器等。
  • rbac:确定是否要创建指定的 Kubernetes rbac。
Runner token 的创建

首先在项目 --> 设置 --> CI/CD中找到 Runner 设置:

选择新建项目 runner

填写必要的信息,诸如标签(tag)、描述、最大作业超时(凌驾这个时间 Runner 会自动终止作业)。然后选择创建 runner。

这时间就能看到 Runner token 已经存在了 glrt-xRnstJB7UBRHfgcvQVEB。在后面注册 Runner 的时间会用到。上面的截图中也表现了,如果要用 gitlab-runner注册 runner 的话,后面的两个参数就是极狐GitLab 实例地点和 runner token。
runner token 创建出来以后,就可以用下面的 values.yaml 文件用 Helm 进行安装了:
  1. imagePullPolicy: IfNotPresent
  2. gitlabUrl: "http://jhma.jihulab.net"
  3. runnerToken: "glrt-xRnstJB7UBRHfgcvQVEB"
  4. concurrent: 10
  5. checkInterval: 30
  6. logLevel: info
  7. rbac:
  8.   create: true
  9. metrics:
  10.   enabled: false
  11. runners:
  12.   config: |
  13.     [[runners]]
  14.       [runners.kubernetes]
  15.         namespace = "{{.Release.Namespace}}"
  16.         image = "ubuntu:22.04"
  17.         [[runners.kubernetes.volumes.host_path]]
  18.             name = "docker"
  19.             mount_path = "/var/run/docker.sock"
  20.             host_path = "/var/run/docker.sock"
  21.   privileged: "true"
  22.   name: kubernetes-runner
  23.   tags: "kubernetes,runner"
  24. securityContext:
  25.   runAsUser: 100
  26.   fsGroup: 65533
复制代码
用 Helm 安装 Runner

使用 helm install即可进行安装,如果要安装特定版本的 Runner,在安装的时间用 --version指定极狐GitLab Runner Helm Chart 的版本即可。
对于极狐GitLab Runenr 的版本检察,可以使用如下命令:
  1. # 查看极狐GitLab Runner 版本
  2. helm search repo -l jh-gitlab/gitlab-runner
  3. NAME                       CHART VERSION    APP VERSION    DESCRIPTION
  4. jh-gitlab/gitlab-runner    0.68.1           17.3.1         GitLab Runner
  5. jh-gitlab/gitlab-runner    0.68.0           17.3.0         GitLab Runner
  6. jh-gitlab/gitlab-runner    0.67.0           17.2.0         GitLab Runner
  7. jh-gitlab/gitlab-runner    0.66.0           17.1.0         GitLab Runner
  8. jh-gitlab/gitlab-runner    0.65.0           17.0.0         GitLab Runner
  9. ......太长,删除......
  10. jh-gitlab/gitlab-runner    0.41.0           15.0.0         GitLab Runner
  11. jh-gitlab/gitlab-runner    0.40.1           14.10.1        GitLab Runner
  12. jh-gitlab/gitlab-runner    0.40.0           14.10.0        GitLab Runner
  13. jh-gitlab/gitlab-runner    0.39.0           14.9.0         GitLab Runner
复制代码
比如 0.68.1 的 chart 对应的 runner 是 17.3.1,0.39.0 的 chart 对应的是 14.9.0。我们选择安装 17.3.0 的 runner,对应的 chart 版本为 0.68.0。
使用如下命令进行安装:
  1. helm install --namespace jh-gitlab-runner --create-namespace jh-gitlab-runner -f values.yaml jh-gitlab/gitlab-runner --version 0.68.0
复制代码
安装日志如下
  1. W0911 06:50:17.636340  639284 warnings.go:70] unknown field "spec.template.spec.containers[0].securityContext.fsGroup"
  2. NAME: jh-gitlab-runner
  3. LAST DEPLOYED: Wed Sep 11 06:50:17 2024
  4. NAMESPACE: jh-gitlab-runner
  5. STATUS: deployed
  6. REVISION: 1
  7. TEST SUITE: None
  8. NOTES:
  9. Your GitLab Runner should now be registered against the GitLab instance reachable at: "http://jhma.jihulab.net"
  10. Runner namespace "jh-gitlab-runner" was found in runners.config template.
  11. #############################################################################################
  12. ## WARNING: You enabled `rbac` without specifying if a service account should be created.  ##
  13. ## Please set `serviceAccount.create` to either `true` or `false`.                         ##
  14. ## For backwards compatibility a service account will be created.                          ##
  15. #############################################################################################
复制代码
检察安装结果
  1. # helm release 信息
  2. helm ls --all-namespaces
  3. NAME                              NAMESPACE                 REVISION    UPDATED                                    STATUS      CHART                                                                       APP VERSION
  4. jh-gitlab-runner                  jh-gitlab-runner          1           2024-09-11 06:50:17.139514892 +0000 UTC    deployed    gitlab-runner-0.68.0
  5. # namespace,pod 信息
  6. kubectl  get ns jh-gitlab-runner
  7. NAME               STATUS   AGE
  8. jh-gitlab-runner   Active   2m22s
  9. kubectl  -n jh-gitlab-runner get pods
  10. NAME                                              READY   STATUS    RESTARTS   AGE
  11. jh-gitlab-runner-gitlab-runner-5c558fb88b-lnfxm   1/1     Running   0          2m21s
复制代码
可以看到 pod 已经处于 running状态。在 runner 的界面上同样可以看到 runner 的状态是 running:

点击运行中的 Runner 就会看到对应的版本信息:

Runner 测试

在极狐GitLab 实例上新建一个项目,在项目中创建 .gitlab-ci.yml文件,即可启用 CI/CD 流水线。例如可以直接在项目标页面上创建 .gitlab-ci.yml文件,然后选择一个 bash 模版:

点击提交更改就会触发 CI/CD 流水线:

点击作业检察构建日志,就可以看到使用的是上面创建的 Runner 在构建作业!

本文由博客群发一文多发等运营工具平台 OpenWrite 发布

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

北冰洋以北

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表