如何极狐GitLab Runner 使用特权身份运行,极狐arcfox评测

如何极狐GitLab Runner 使用特权身份运行The minimum required version of PostgreSQL is now 13. See https://gitlab.com/gitlab-org/charts

PostgreSQL 所需的最低版本现在为13。有关更多信息,请参阅https://gitlab.com/gitlab-org/charts/gitlab/-/blob/master/doc/installation/upgrade.md。

===注意

我安装了GitLab Runner,但无法使用“docker in docker”。

出于安全原因,GitLab Runner 图表(gitlab/gitlab-runner) 默认情况下部署时没有权限标志。这可以通过将gitlab-runner.runners.privileged 设置为true 来更改。在开始之前,请阅读GitLab Runner Charts 文档。为什么我们

我们选择默认不启用此功能。请参阅https://docs.gitlab.com/runner/install/kubernetes.html#running-docker-in-docker-containers-with-gitlab-runners。

[root@anolis-7-9 ~]#

2. 如果您在没有“特权身份”的情况下运行,您可能会遇到以下异常:

[root@anolis-7-9 ~]# kubectl -n gitlab-test 获取pod |

my-gitlab-gitlab-runner-6bf49f49db-7jn8w 1/1 运行4(53 分钟前)22 小时

runner-q5jcztox-project-4-concurrent-0-ltmz9a7f 2/3 错误0 37 秒

[root@anolis-7-9 ~]#

[root@anolis-7-9 ~]# kubectl -n gitlab-test 日志-frunner-q5jcztox-project-4-concurrent-0-ltmz9a7f svc-0

自签名证书请求就可以了

主题=CN=docker:dind 服务器

/certs/server/cert.pem: 确定

自签名证书请求就可以了

subject=CN=docker:dind 客户端

/certs/client/cert.pem: 确定

ip: 找不到设备“nf_tables”

nf_表74274 0

nfnetlink 14519 4 ip_set、nf_tables、nf_conntrack_netlink

modprobe: 无法将目录更改为“/lib/modules” : 没有这样的文件或目录

ip: 找不到设备“ip_tables”

ip_tables 27126 4 iptable_raw、iptable_mangle、iptable_nat、iptable_filter

modprobe: 无法将目录更改为“/lib/modules” : 没有这样的文件或目录

mount: 权限被拒绝(您是root 吗?)

无法挂载/sys/kernel/security。

AppArmor 检测和–privileged 模式可能会被破坏。

mount: 权限被拒绝(您是root 吗?)

[root@anolis-7-9 ~]#

解决了

1.导出Helm Gitlab配置

将已配置的值导出到文件中

helm -n gitlab-test 获取值my-gitlab my-gitlab.yaml

2. 显示[gitlab runner默认设置] ( )

此处为节选,不同版本可能会存在差异,请以 https://artifacthub.io/packages/helm/gitlab/gitlab?modal=values 中的配置为准

gitlab-runner:

跑步者:

配置:|

[[跑步者]]

[runner.kubernetes]

图片=“ubuntu:22.04”

{{- 如果.Values.global.minio.enabled }}

[跑步者缓存]

类型=“s3”

路径=“gitlab-runner”

共享=真

[Runners.cache.s3]

服务器地址={{ 包括“gitlab-runner.cache-tpl.s3ServerAddress” }}

BucketName=“运行器缓存”

BucketLocation=“us-east-1”

不安全=假

{{ 结尾}}

3、修改配置如下:

gitlab-runner:

跑步者:

配置:|

[[跑步者]]

[runner.kubernetes]

# pod 以特权身份运行

特权=真

图片=\’ubuntu:22.04\’

{{- 如果.Values.global.minio.enabled }}

[跑步者缓存]

类型=\’s3\’

路径=\’gitlab-runner\’

共享=真

[Runners.cache.s3]

服务器地址={{ 包括\’gitlab-runner.cache-tpl.s3ServerAddress\’ }}

存储桶名称=\’运行器缓存\’

BucketLocation=\’us-east-1\’

不安全=假

{{ 结尾}}

4.更新配置

GitLab Runner 使用特权身份运行

helm升级-n gitlab-test –安装my-gitlab gitlab/gitlab –超时600s -f my-gitlab.yaml –set gitlab-runner.runners.privileged=true –version 7.7.0

5. 等待所有“gitlab-runner”旧“pod”被删除,一旦新“pod”运行成功,重试管道并使用“docker in docker”。

[root@anolis-7-9 ~]# kubectl -n gitlab-test 获取pod |

my-gitlab-gitlab-runner-5f6ff5994c-wdw5l 1/1 运行0 115 米

runner-yr5wzqmq-project-4-concurrent-0-idibutkf 3/3 运行0 4 秒

[root@anolis-7-9 ~]#

请注意,您在这里看到的是**svc-0** 的日志,即服务Docker 日志。如果有多个服务,则按顺序排序。

[root@anolis-7-9 ~]# kubectl -n gitlab-test 日志-frunner-yr5wzqmq-project-4-concurrent-0-idibutkf svc-0

时间=”2023-12-23T16:34:27.467258283Z”级别=信息消息=”开始”

time=“2023-12-23T16:34:27.469102439Z” level=warning msg=“无法将组/var/run/docker.sock 更改为docker: 组docker”

time=\”2023-12-23T16:34:27.469335776Z\” level=warning msg=\”–由于绑定到没有tlsverify 的IP 地址不安全,请向具有网络访问权限的每个人授予对此计算机的root 访问权限。\” host=\”tcp://0.0.0.0:2375\”

time=\”2023-12-23T16:34:27.469359429Z\” level=warning msg=\”绑定到IP 地址,即使在本地主机上,也可以让您访问在浏览器中运行的脚本。保持安全host=\”tcp://0.0.0.0:2375 ”

time=\”2023-12-23T16:34:28.469505651Z\” level=warning msg=\”–不推荐使用tlsverify 绑定到IP 地址。启动时故意放慢速度以显示此消息“host=\”tcp://0.0.0.0:2375”。

time=”2023-12-23T16:34:28.469545042Z” level=warning msg=”为了防止向您的网络公开未经身份验证的根访问权限,请考虑使用客户端验证生成TLS 证书。”host=”tcp://0.0.0.0:2375”

time=”2023-12-23T16:34:28.469555494Z” level=warning msg=”您可以通过显式指定“-tls=false”或“-tlsverify=false”来覆盖此设置host=”tcp://0.0.0.0:2375”

time=”2023-12-23T16:34:28.469568946Z” level=warning msg=”支持在没有身份验证的情况下侦听TCP 或明确意图在没有身份验证的情况下运行将在下一版本中删除” host=“tcp://0.0.0.0:2375”

time=”2023-12-23T16:34:43.473007148Z” level=info msg=”libcontainerd: 启动了新的containerd进程” pid=33

时间=“2023-12-23T16:34:43.473101488Z”级别=信息消息=“解析的scheme:“unix””模块=grpc

time=“2023-12-23T16:34:43.473114333Z” level=info msg=“方案\’unix\’未注册,回退到默认方案” module=grpc

time=”2023-12-23T16:34:43.473147363Z” level=info msg=”ccResolverWrapper: 发送更新到cc: {[{unix:///var/run/docker/containerd/containerd.sock 0 }] }” module=grpc

time=”2023-12-23T16:34:43.473181211Z” level=info msg=”将ClientConn 平衡器切换到“pick_first”” module=grpc

time=”2023-12-23T16:34:43Z” level=warning msg=”已弃用版本: 1。请切换到版本2。”

时间=“2023-12-23T16:34:43.515744080Z”级别=信息消息=“启动containerd”版本=212e8b6fa2f44b9c21b2798135fc6fb7c53efc16版本=v1.6.4

time=”2023-12-23T16:34:43.531630020Z” level=info msg=”正在加载插件“io.containerd.content.v1.content”.” type=io.containerd.content.v1

时间=”2023-12-23T16:34:43.531804565Z” level=info msg=”正在加载插件“io.containerd.snapshotter.v1.aufs”…” type=io.containerd.snapshotter.v1

time=”2023-12-23T16:34:43.538312017Z” level=info msg=”Skipload plugin “io.containerd.snapshotter.v1.aufs”.” error=”aufs 不支持(modprobe aufs failed: 退出状态1 “ip: 可以设备\’ aufs\’ 未找到\\nmodprobe: 无法将目录更改为\’/lib/modules\’: 没有这样的文件或目录\\n”): 正在跳过插件” type=io .containerd.snapshotter.v1

time=”2023-12-23T16:34:43.538412286Z” level=info msg=”正在加载插件“io.containerd.snapshotter.v1.btrfs”…” type=io.containerd.snapshotter.v1

time=”2023-12-23T16:34:43.538731958Z” level=info msg=”跳过加载插件“io.containerd.snapshotter.v1.btrfs”…” error=”Path /var/lib/docker/containerd /daemon/io. “containerd.snapshotter.v1.btrfs (xfs) 必须是btrfs snapshotter: 跳过插件使用的btrfs 文件系统” type=io.containerd.snapshotter.v1

时间=”2023-12-23T16:34:43.538767621Z” level=info msg=”正在加载插件“io.containerd.snapshotter.v1.devmapper”…” type=io.containerd.snapshotter.v1

time=”2023-12-23T16:34:43.538782676Z” level=warning msg=”无法加载插件io.containerd.snapshotter.v1.devmapper” error=”devmapper 未配置”

time=”2023-12-23T16:34:43.538792101Z” level=info msg=”正在加载插件“io.containerd.snapshotter.v1.native”.” type=io.containerd.snapshotter.v1

time=”2023-12-23T16:34:43.538972652Z” level=info msg=”正在加载插件“io.containerd.snapshotter.v1.overlayfs”.” type=io.containerd.snapshotter.v1

time=”2023-12-23T16:34:43.539265161Z” level=info msg=”正在加载插件“io.containerd.snapshotter.v1.zfs”.” type=io.containerd.snapshotter.v1

time=”2023-12-23T16:34:43.539441863Z” level=info msg=”跳过加载插件“io.containerd.snapshotter.v1.zfs”…” error=”Path /var/lib/docker/containerd /daemon/io. “containerd.snapshotter.v1.zfs 必须是zfs snapshotter: 跳过插件使用的zfs 文件系统” type=io.containerd.snapshotter.v1

时间=”2023-12-23T16:34:43.539459872Z” level=info msg=”正在加载插件“io.containerd.metadata.v1.bolt”.” type=io.containerd.metadata.v1

time=”2023-12-23T16:34:43.539554275Z” level=warning msg=”无法将快照程序devmapper 与元数据插件一起使用” error=”devmapper 未配置”

time=”2023-12-23T16:34:43.539571921Z” level=info msg=”元数据内容存储策略集”policy=shared

time=”2023-12-23T16:34:43.541205021Z” level=info msg=”正在加载插件“io.containerd.differ.v1.walking”…” type=io.containerd.differ.v1

时间=”2023-12-23T16:34:43.541252637Z” level=info msg=”正在加载插件“io.containerd.event.v1.exchange”…” type=io.containerd.event.v1

时间=”2023-12-23T16:34:43.541272679Z” level=info msg=”正在加载插件“io.containerd.gc.v1.scheduler”…” type=io.containerd.gc.v1

time=”2023-12-23T16:34:43.541407221Z” level=info msg=”正在加载插件“io.containerd.service.v1.introspection-service”.” type=io.containerd.service.v1

time=”2023-12-23T16:34:43.541450967Z” level=info msg=”正在加载插件“io.containerd.service.v1.containers-service”.” type=io.containerd.service.v1

time=”2023-12-23T16:34:43.541468124Z” level=info msg=”正在加载插件“io.containerd.service.v1.content-service”.” type=io.containerd.service.v1

time=”2023-12-23T16:34:43.541488780Z” level=info msg=”正在加载插件“io.containerd.service.v1.diff-service”.” type=io.containerd.service.v1

时间=”2023-12-23T16:34:43.541510847Z” level=info msg=”正在加载插件“io.containerd.service.v1.images-service”.” type=io.containerd.service.v1

时间=”2023-12-23T16:34:43.543022895Z” level=info msg=”正在加载插件“io.containerd.service.v1.leases-service”.” type=io.containerd.service.v1

time=”2023-12-23T16:34:43.543105358Z” level=info msg=”正在加载插件“io.containerd.service.v1.namespaces-service”.” type=io.containerd.service.v1

time=\”2023-12-23T16:34:43.543146490Z\” level=info msg=\”正在加载插件\”io.containerd.service.v1.sn\”

apshots-service”…” type=io.containerd.service.v1
time=“2023-12-23T16:34:43.543314215Z” level=info msg=“loading plugin “io.containerd.runtime.v1.linux”…” type=io.containerd.runtime.v1
time=“2023-12-23T16:34:43.543713683Z” level=info msg=“loading plugin “io.containerd.runtime.v2.task”…” type=io.containerd.runtime.v2
time=“2023-12-23T16:34:43.543917845Z” level=info msg=“loading plugin “io.containerd.monitor.v1.cgroups”…” type=io.containerd.monitor.v1
time=“2023-12-23T16:34:43.544701904Z” level=info msg=“loading plugin “io.containerd.service.v1.tasks-service”…” type=io.containerd.service.v1
time=“2023-12-23T16:34:43.544758132Z” level=info msg=“loading plugin “io.containerd.grpc.v1.introspection”…” type=io.containerd.grpc.v1
time=“2023-12-23T16:34:43.544778482Z” level=info msg=“loading plugin “io.containerd.internal.v1.restart”…” type=io.containerd.internal.v1
time=“2023-12-23T16:34:43.544870050Z” level=info msg=“loading plugin “io.containerd.grpc.v1.containers”…” type=io.containerd.grpc.v1
time=“2023-12-23T16:34:43.544905675Z” level=info msg=“loading plugin “io.containerd.grpc.v1.content”…” type=io.containerd.grpc.v1
time=“2023-12-23T16:34:43.544964281Z” level=info msg=“loading plugin “io.containerd.grpc.v1.diff”…” type=io.containerd.grpc.v1
time=“2023-12-23T16:34:43.544992194Z” level=info msg=“loading plugin “io.containerd.grpc.v1.events”…” type=io.containerd.grpc.v1
time=“2023-12-23T16:34:43.545007550Z” level=info msg=“loading plugin “io.containerd.grpc.v1.healthcheck”…” type=io.containerd.grpc.v1
time=“2023-12-23T16:34:43.545027513Z” level=info msg=“loading plugin “io.containerd.grpc.v1.images”…” type=io.containerd.grpc.v1
time=“2023-12-23T16:34:43.545056889Z” level=info msg=“loading plugin “io.containerd.grpc.v1.leases”…” type=io.containerd.grpc.v1
time=“2023-12-23T16:34:43.545075653Z” level=info msg=“loading plugin “io.containerd.grpc.v1.namespaces”…” type=io.containerd.grpc.v1
time=“2023-12-23T16:34:43.545095993Z” level=info msg=“loading plugin “io.containerd.internal.v1.opt”…” type=io.containerd.internal.v1
time=“2023-12-23T16:34:43.545466830Z” level=info msg=“loading plugin “io.containerd.grpc.v1.snapshots”…” type=io.containerd.grpc.v1
time=“2023-12-23T16:34:43.545564033Z” level=info msg=“loading plugin “io.containerd.grpc.v1.tasks”…” type=io.containerd.grpc.v1
time=“2023-12-23T16:34:43.545604555Z” level=info msg=“loading plugin “io.containerd.grpc.v1.version”…” type=io.containerd.grpc.v1
time=“2023-12-23T16:34:43.545630506Z” level=info msg=“loading plugin “io.containerd.tracing.processor.v1.otlp”…” type=io.containerd.tracing.processor.v1
time=“2023-12-23T16:34:43.545670690Z” level=info msg=“skip loading plugin “io.containerd.tracing.processor.v1.otlp”…” error=“no OpenTelemetry endpoint: skip plugin” type=io.containerd.tracing.processor.v1
time=“2023-12-23T16:34:43.545688192Z” level=info msg=“loading plugin “io.containerd.internal.v1.tracing”…” type=io.containerd.internal.v1
time=“2023-12-23T16:34:43.545726357Z” level=error msg=“failed to initialize a tracing processor “otlp”” error=“no OpenTelemetry endpoint: skip plugin”

为了做好运维面试路上的助攻手,特整理了上百道 【运维技术栈面试题集锦】 ,让你面试不慌心不跳,高薪offer怀里抱!

这次整理的面试题,小到shell、MySQL,大到K8s等云原生技术栈,不仅适合运维新人入行面试需要,还适用于想提升进阶跳槽加薪的运维朋友。

本份面试集锦涵盖了

174 道运维工程师面试题128道k8s面试题108道shell脚本面试题200道Linux面试题51道docker面试题35道Jenkis面试题78道MongoDB面试题17道ansible面试题60道dubbo面试题53道kafka面试18道mysql面试题40道nginx面试题77道redis面试题28道zookeeper
总计 1000+ 道面试题, 内容 又全含金量又高

174道运维工程师面试题

1、什么是运维?

2、在工作中,运维人员经常需要跟运营人员打交道,请问运营人员是做什么工作的?

3、现在给你三百台服务器,你怎么对他们进行管理?

4、简述raid0 raid1raid5二种工作模式的工作原理及特点

5、LVS、Nginx、HAproxy有什么区别?工作中你怎么选择?

6、Squid、Varinsh和Nginx有什么区别,工作中你怎么选择?

7、Tomcat和Resin有什么区别,工作中你怎么选择?

8、什么是中间件?什么是jdk?

9、讲述一下Tomcat8005、8009、8080三个端口的含义?

10、什么叫CDN?

11、什么叫网站灰度发布?

12、简述DNS进行域名解析的过程?

13、RabbitMQ是什么东西?

14、讲一下Keepalived的工作原理?

15、讲述一下LVS三种模式的工作过程?

16、mysql的innodb如何定位锁问题,mysql如何减少主从复制延迟?

你怎么选择?

8、什么是中间件?什么是jdk?

9、讲述一下Tomcat8005、8009、8080三个端口的含义?

10、什么叫CDN?

11、什么叫网站灰度发布?

12、简述DNS进行域名解析的过程?

13、RabbitMQ是什么东西?

14、讲一下Keepalived的工作原理?

15、讲述一下LVS三种模式的工作过程?

16、mysql的innodb如何定位锁问题,mysql如何减少主从复制延迟?

17、如何重置mysql root密码?

#以上关于如何极狐GitLab Runner 使用特权身份运行的相关内容来源网络仅供参考,相关信息请以官方公告为准!

原创文章,作者:CSDN,如若转载,请注明出处:https://www.sudun.com/ask/91278.html

(0)
CSDN的头像CSDN
上一篇 2024年6月21日
下一篇 2024年6月21日

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注