Jenkins 节点 Node 概念
Jenkins有一个很强大的功能:分布式构建
Jenkins 中 节点(Node) 是 Jenkins 用于执行构建任务的机器
节点的主要作用是提供构建和测试任务的运行环境
通过使用多个节点,Jenkins 可以分布式地执行构建任务,从而提高效率和并行处理能力
分布式构建
节点允许 Jenkins 将构建任务分布到多个机器上运行,从而实现并行处理。这有助于减少构建时间,特别是对于大型项目或需要运行大量测试的项目
负载均衡
通过在多个节点之间分配任务,Jenkins 可以实现负载均衡,避免单个节点过载
这有助于提高系统的稳定性和性能
提供不同的运行环境
多平台支持
节点可以运行在不同的操作系统和硬件平台上
通过在不同平台上配置节点,Jenkins 可以针对不同平台进行构建和测试,例如 Windows、Linux 和 macOS
特殊环境需求
有些项目可能需要特定的软件或硬件环境
通过在特定配置的节点上运行构建任务,Jenkins 可以满足这些特殊环境的需求
提高资源利用率
动态资源管理
通过动态添加或移除节点,Jenkins 可以根据需求调整可用的计算资源
这有助于在高峰期提供更多的计算能力,而在低负载时期减少资源浪费
提供隔离和安全性
任务隔离
通过在不同的节点上运行构建任务,可以实现任务之间的隔离,避免相互干扰
权限控制
可以对不同的节点设置不同的访问权限
高可用性
通过在多个节点上运行构建任务,Jenkins 可以提高系统的高可用性。如果某个节点发生故障,其他节点可以继续处理任务,从而减少停机时间
Jenkins 主服务器(Master)
Jenkins 主服务器不仅承担了用户界面和调度任务的职责,还可以运行构建任务
Jenkins 从服务器(Agent)
Jenkins 从服务器是由主服务器管理的机器,用于实际运行构建任务
通过分布式的方式,Jenkins 可以将构建任务分发到多个从服务器上
-
Dashboard -> Manage Jenkins -> Nodes
可以看到一个默认的内置节点 Built-In Node
点击 Built-In Node -
Configure
Number of executors:Jenkins可以在此节点上执行的最大并发构建数
Labels:节点标签,可以填写多个,以空格分隔
保存:点 Apply -> 点 Save
Jenkins 给任务分配 节点(Node)、设置工作空间目录
- Status
点击 Labels 下面的 Mac
可以看到 划分到 Mac 这个 Label 下的任务
Freestyle_1 和 Freestyle_2 执行构建的时候,是在 Built-In这个 节点(Node)
Built-In 是在 Mac 电脑上,所以真正执行构建的时候是在 Mac 电脑上执行的