我正在尝试建立一个 Jenkins 系统,其中某个程序必须在网络上的板上运行,使用 telnet 访问。我们在这里讨论了数百个这样的工作,因此我们将设置多个委员会。因此,每个作业都必须分配一个板,但问题是只有一个作业可以同时拥有某个板,否则程序会失败。
我现在拥有的解决方案是使用主从设置,我使用 SSH 连接到同一台机器(因此同一台机器上有一个主控和多个从属)。然后,每个从节点都有一个程序必须远程登录到的 IP 地址的标签。这可行,调度明智,但它可能会导致问题,因为所有节点都使用 SSH 连接到同一台机器。使用 SSH 连接到电路板不是一种选择。
有没有办法获得与上述相同的功能,但不使用 SSH 连接到同一台机器?所以基本上我想说:我们有 n 台可用的机器,当有工作进入时,给它其中一台机器并传递一个属于该机器的标签(在这种情况下是它的 IP 地址);现在还剩下 n-1 台机器。互斥接近,但不允许上述功能,等待资源的作业占用节点的执行者之一。
非常感谢!