在previous question中,我问过如果两个执行器中有两个可用,那么如何只运行繁重的工作。这确保了快速构建总是有一个执行者不会被一个沉重的阻止。
快速工作低于10分钟,重物可能需要数小时。
下一层我看看Jenkins构建集群。想象一下,一个master和n在巨大的构建环境中与每个m执行者构建从属。简短:随机大量执行者。
如何确保快速作业执行者的至少x% 可用?如果x%少于1个遗嘱执行人(例如4名遗嘱执行人中的10%),则应有1名遗嘱执行人。
答案 0 :(得分:3)
在我的类似需求中,我发现最好的选择是使用詹金斯的奴隶 建立一个强大的奴隶,用一个执行者来完成所有繁重的工作 让你所有的短文都在主人身上运行。
您也可以在奴隶上切换并放置小作业。
恕我直言,为Jenkins master使用小型服务器并将所有构建版本放在专用的强大从站上的想法更具可扩展性和可管理性。
我希望这会有所帮助。
答案 1 :(得分:3)
假设您有4个从属节点,每个执行器有2个执行器,总共8个执行器。有多种方法可以限制jenkins作业在从属节点上运行。
我个人更喜欢将从节点专用于快速作业,这样可以根据可用硬件灵活地增加或减少执行程序。您还可以灵活地将从属节点更改为不同的硬件,而Jenkins的变化很小。假设你在Jenkins有1000多个工作,每个工作分类为快速和繁重的工作,并且如果快速工作的数量增加,你可以分配到特定节点,你总是可以轻松地增加奴隶的执行者,因此任何单个工作都没有变化组态。希望这可以帮助。
答案 2 :(得分:0)
Heavy Job Plugin似乎就是这样做的。我刚刚在几分钟前发现它,所以还没有任何关于它工作的反馈。