如何用 Helm 安装指定版本的 GitLab Runner?

news/2024/9/17 16:06:03/文章来源:https://www.cnblogs.com/jihugitlab/p/18408305

本分分享如何使用 Helm 来在 Kubernetes 集群上安装极狐GitLab Runner。整体步骤分为:Helm 的安装、vaules.yaml 文件的配置、Runner 的安装、Runner 的测试。

极狐GitLab 为 GitLab 在中国的发行版,中文版本对中国用户更友好。极狐GitLab 支持一键私有化部署,可以在 ubuntu、centos、Debian、Docker、Kubernetes 上灵活安装。安装详情可以查看官网 https://gitlab.cn。

Helm 的安装

Helm 的安装非常简单,在官网下载对应版本的安装包,然后解压即可。比如,在 Ubuntu 上安装 3.x 版本,使用如下命令:

# 解压安装包
tar -zxvf helm-v3.15.4-linux-amd64.tar.gz# 将可执行文件拷贝到 /usr/local/bin
cp linux-amd64/helm /usr/local/bin/helm安装后,可用 version或者 help命令进行查看:helm version
version.BuildInfo{Version:"v3.15.4", GitCommit:"fa9efb07d9d8debbb4306d72af76a383895aa8c4", GitTreeState:"clean", GoVersion:"go1.22.6"}接着就可以添加极狐GitLab Runner helm repo 了。# 添加仓库
helm repo add jh-gitlab https://charts.gitlab.cn
"jh-gitlab" has been added to your repositories# 更新仓库
helm repo update
Hang tight while we grab the latest from your chart repositories...
...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 配置:

file

选择新建项目 runner

file

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

file

这时候就能看到 Runner token 已经存在了 glrt-xRnstJB7UBRHfgcvQVEB。在后面注册 Runner 的时候会用到。上面的截图中也显示了,如果要用 gitlab-runner注册 runner 的话,后面的两个参数就是极狐GitLab 实例地址和 runner token。

runner token 创建出来以后,就可以用下面的 values.yaml 文件用 Helm 进行安装了:

imagePullPolicy: IfNotPresent
gitlabUrl: "http://jhma.jihulab.net"
runnerToken: "glrt-xRnstJB7UBRHfgcvQVEB"
concurrent: 10
checkInterval: 30
logLevel: inforbac:create: truemetrics:enabled: falserunners:config: |[[runners]][runners.kubernetes]namespace = "{{.Release.Namespace}}"image = "ubuntu:22.04"[[runners.kubernetes.volumes.host_path]]name = "docker"mount_path = "/var/run/docker.sock"host_path = "/var/run/docker.sock"privileged: "true"name: kubernetes-runnertags: "kubernetes,runner"securityContext:runAsUser: 100fsGroup: 65533

用 Helm 安装 Runner

使用 helm install即可进行安装,如果要安装特定版本的 Runner,在安装的时候用 --version指定极狐GitLab Runner Helm Chart 的版本即可。

对于极狐GitLab Runenr 的版本查看,可以使用如下命令:

# 查看极狐GitLab Runner 版本
helm search repo -l jh-gitlab/gitlab-runner
NAME                       CHART VERSION    APP VERSION    DESCRIPTION
jh-gitlab/gitlab-runner    0.68.1           17.3.1         GitLab Runner
jh-gitlab/gitlab-runner    0.68.0           17.3.0         GitLab Runner
jh-gitlab/gitlab-runner    0.67.0           17.2.0         GitLab Runner
jh-gitlab/gitlab-runner    0.66.0           17.1.0         GitLab Runner
jh-gitlab/gitlab-runner    0.65.0           17.0.0         GitLab Runner
......太长,删除......
jh-gitlab/gitlab-runner    0.41.0           15.0.0         GitLab Runner
jh-gitlab/gitlab-runner    0.40.1           14.10.1        GitLab Runner
jh-gitlab/gitlab-runner    0.40.0           14.10.0        GitLab Runner
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。

使用如下命令进行安装:

helm install --namespace jh-gitlab-runner --create-namespace jh-gitlab-runner -f values.yaml jh-gitlab/gitlab-runner --version 0.68.0

安装日志如下

W0911 06:50:17.636340  639284 warnings.go:70] unknown field "spec.template.spec.containers[0].securityContext.fsGroup"
NAME: jh-gitlab-runner
LAST DEPLOYED: Wed Sep 11 06:50:17 2024
NAMESPACE: jh-gitlab-runner
STATUS: deployed
REVISION: 1
TEST SUITE: None
NOTES:
Your GitLab Runner should now be registered against the GitLab instance reachable at: "http://jhma.jihulab.net"Runner namespace "jh-gitlab-runner" was found in runners.config template.#############################################################################################
## WARNING: You enabled `rbac` without specifying if a service account should be created.  ##
## Please set `serviceAccount.create` to either `true` or `false`.                         ##
## For backwards compatibility a service account will be created.                          ##
#############################################################################################

查看安装结果

# helm release 信息
helm ls --all-namespaces
NAME                              NAMESPACE                 REVISION    UPDATED                                    STATUS      CHART                                                                       APP VERSION
jh-gitlab-runner                  jh-gitlab-runner          1           2024-09-11 06:50:17.139514892 +0000 UTC    deployed    gitlab-runner-0.68.0# namespace,pod 信息
kubectl  get ns jh-gitlab-runner
NAME               STATUS   AGE
jh-gitlab-runner   Active   2m22skubectl  -n jh-gitlab-runner get pods
NAME                                              READY   STATUS    RESTARTS   AGE
jh-gitlab-runner-gitlab-runner-5c558fb88b-lnfxm   1/1     Running   0          2m21s

可以看到 pod 已经处于 running状态。在 runner 的界面上同样可以看到 runner 的状态是 running:

file

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

file

Runner 测试

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

file

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

file

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

file

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/795490.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

安装程序在安装此程序包时遇到了错误2503

原文链接:https://blog.csdn.net/sisi_new/article/details/139180294 安装程序在安装此程序包时遇到错误2503通常是由于安装权限不足造成的解决方案如下:1.修改TEMP文件夹的权限:进入“C:\Windows\Temp”路径,右键单击Temp文件夹选择“属性”,在“安全”选项卡中修改权限…

安全测试工具(1)- Burp Suite Pro的安装教程

啥是Burp Suite 用于攻击web 应用程序的集成平台 程序员必备技能,不仅可以拿来做渗透测试、漏洞挖掘还能帮助程序员调试程序 Bug 它包含了许多Burp工具,这些不同的burp工具通过协同工作,有效的分享信息,支持以某种工具中的信息为基础供另一种工具使用的方式发起攻击。这些工…

高等数学 1.6 极限存在准则 两个重要极限

目录第一个准则第一个重要极限第二个准则第二个重要极限柯西(Cauchy)极限存在准则 第一个准则 准则Ⅰ:如果数列 \(\{ x_n \}\) ,\(\{ y_n \}\) 及 \(\{ z_n \}\) 满足下列条件: (1)从某项起,即 \(\exists n_0 \in \mathbb{N}_+\) ,当 \(n > n_0\) 时,有 \[y_n \le…

socket套接字通信---win和linux互通(1)

一、Windows下的网络调试工具-NetAssist 下载页面 下载后无需安装,解压缩就是个exe的执行文件。双击打开就可使用 软件界面二、linux下的网络调试工具 nc(netcat) 1、当前系统 $ cat /proc/version Linux version 6.6.47-current-x86 (build@armbian) (gcc (Ubuntu 11.4.0-1u…

第一次编程作业

这个作业属于哪个课程 计科22级34班这个作业要求在哪里 个人项目这个作业的目标 1.设计一个查重算法。2. 了解并学习项目的PSP表格3. 学习如何运用github进行代码管理4. 学习使用性能分析工具,分析代码性能5. 学习如何进行单元测试我的github仓库链接:https://github.com/zfi…

mysql 拼接字段

select spot_position,req_line,CONCAT(spot_position,-,req_line) from pdm_qc_apply where req_qctype != 2;结果展示:

Origin2024中绘制多因子分组柱状图,直观展示不同组别内的数据变化!

当我们需要对比多组平行数据时,采用Origin多因子分组柱状图,不仅可以直接的对比多组数据,同时还能够直观展示各个指标因子的数据变化及趋势操作步骤: 1、先打开Origin2024软件,然后在Book1中输入如下示例数据: 2、第一步,绘制分组柱形图图表,选中所有数据:3、点击菜单…

floorplan-reconsturtion-based-plane-triangle

一个iter算25s, 每个epoch31个iter,480个epoch需要 2531480/3600/24 = 4.3(天)改用30个epoch,训练5个小时Loss曲线

易基因:Adv Sci:ACE等揭示产前不良环境暴露通过DNA羟甲基化变化介导子代自闭症|国人佳作

大家好,这里是专注表观组学十余年,领跑多组学科研服务的易基因。 自闭症谱系障碍(Autism spectrum disorder,ASD)是一种神经发育障碍,以社交沟通障碍和刻板行为为主要特征。许多研究证明,妊娠期暴露于环境毒素会导致儿童中ASD患病率快速增长。1-硝基芘(1-Nitropyrene,…

第十一章 图论 Part7

最小生成树算法(无向图) 1.prim算法 2.kruskal算法目录最小生成树算法prim算法适用范围:无向图思路kruskal算法适用范围: 无向图思路 最小生成树算法 prim算法 适用范围:无向图 思路 以将所有点归入最小生成树为目标,每次并入一个,最终生成最小生成树。 每次并入的步骤:…

小甲鱼FishC课后作业

第009讲:了不起的分支和循环30.下面的循环会打印多少次”i love fishc“ for i in range(0,10,2):print("i love fishc") 答:范围0-10,步进为2,打印5次1.下面的循环会打印多少次"I Love FishC"? for i in 5:print(I Love FishC) 答:报错int object i…