关于运维:轻松配置基于Agent的OneDev-CICD集群

58次阅读

共计 970 个字符,预计需要花费 3 分钟才能阅读完成。

介绍

OneDev 是一个开源的自建 Git 服务,自带工单看板和 CI/CD,我的项目地址:
https://github.com/theonedev/…

在 CI/CD 工作须要耗费大量资源时,OneDev 能够将其作为 pod 运行在 Kuberntes 集群中。然而 Kubernetes 集群自建较为麻烦,而应用云服务商的集群又较贵。基于此,OneDev 从 4.10 版本开始提供基于 Agent 的 CI/CD 集群。Agent 设计为零保护,OneDev server 在降级时会主动降级所有连贯的 Agent。

如何配置

咱们通过一个简略的实例来演示如果配置基于 Agent 的集群:

  1. 在 Linux 或者 Mac 里运行上面的命令启动 OneDev:
    docker run –rm -v /var/run/docker.sock:/var/run/docker.sock -v $(pwd)/onedev:/opt/onedev -p 6610:6610 -p 6611:6611 1dev/server
  2. 关上浏览器拜访 http://localhost:6610 来实现设置
  3. 如下所示拜访 Agent 治理页面并下载 Agent 安装包(运行在 Mac 下的 Docker 有点慢,请急躁期待):
  4. 简略起见,咱们间接在本机装置 Agent。首先如上图确保装置了 JDK,Docker 和 Git。下载 Agent 安装包并解压到选定的目录。而后从该目录运行 bin/agent.sh console 来启动 Agent。如果下载时 server url 没有正确设置,能够通过在 conf/agent.properties 里批改并重新启动 Agent 让其失效。
  5. Agent 连贯上时就会在治理页面显示为在线:
  6. 当初咱们创立一个 Job Executor 来应用该 Agent。切换到 Job Executors 页面,删除默认的 auto-discover executor,并增加一个 Remote Docker Executor,输出名称,其余属性应用默认值。测试并保留:
  7. 当初您能够创立一个测试项目,定义 Build Spec,增加一个简略的 CI 工作并运行它,该工作将在 Agent 上运行。OneDev 在为 CI 任务分配 Agent 时,会依据 Agent 的 cpu/memory 容量以及工作所需的 cpu/memory 来进行抉择。当没有 Agent 的 cpu/memory 满足时,工作将会进入期待状态。

谢谢关注!

正文完
 0