【问题标题】:Adding more disk space to Kubernetes Jenkins slave向 Kubernetes Jenkins slave 添加更多磁盘空间
【发布时间】:2018-07-27 20:05:13
【问题描述】:

我在外部主机上使用 Kubernetes Jenkins 插件。默认磁盘大小限制为 10GB。添加一个名为 jenkins-workspace 的 pvc 会挂载磁盘,但它是使用 root 用户 0755 创建的,并且不允许 jenkins 用户进行任何访问。

- 詹金斯 2.104 大师
- jenkinsci/jnlp 奴隶
- Kubernetes 1.7.4
- RHEL 7.4

我们有一个定制的 jnlp 从站,但我什至尝试使用插件引入的默认值。

任何人都可以向我指出如何为 pvc 挂载添加权限或在配置后动态添加空间的文档或相关文章。

我们的 Jenkins master 使用来自 Configure System 的 Kubernetes 云连接和一个指向默认 jnlp 的 Kubernetes pod 模板,或者使用容器模板指向我们在本地注册表中自定义的 jnlp slave。

干杯,提前感谢帮助

【问题讨论】:

  • 我使用了几次通过 groovy 脚本配置 Jenkins 代理,以增加内存和 CPU 资源。
  • 对于内存和 CPU,插件提供了请求或限制它的能力。磁盘空间是一个挑战。如果没有通过“添加卷”显式挂载,即使 PVC 被命名为 jenkins-workspace,它也不会添加磁盘空间。但是“添加卷”将其添加为 root:root。我什至尝试使用以下内容创建持久卷,但仍然没有运气:
    注释:
    pv.beta.kubernetes.io/gid: "10000"
    ,这是 jnlp 中 jenkins 用户的 gid奴隶

标签: jenkins kubernetes


【解决方案1】:

可以通过使用初始化容器更改权限,在定义从属pod时,您可以包含一个初始化容器,将卷挂载为root并将权限更改为jenkins用户。

【讨论】:

  • 请多解释
【解决方案2】:

您今天不能设置已安装卷 (fsGroup) 的权限,也不能设置 PVC 的大小。它没有在https://github.com/jenkinsci/kubernetes-plugin/blob/master/src/main/java/org/csanchez/jenkins/plugins/kubernetes/volumes/PersistentVolumeClaim.java 中实现,所以它只是使用集群默认值(

一旦实现https://github.com/jenkinsci/kubernetes-plugin/pull/275,就可以使用 YAML。

【讨论】:

  • 这是好消息 Carlos....我看到了一些讨论,但没有注意到是否以及何时解决。会注意这种变化..谢谢!
  • 现在可以使用 YAML 语法
猜你喜欢
  • 2020-10-17
  • 2022-09-28
  • 2022-06-22
  • 2021-07-10
  • 1970-01-01
  • 2014-10-06
  • 2023-03-11
  • 2019-06-06
  • 1970-01-01
相关资源
最近更新 更多