我们有Jenkin节点。它们偶尔会失去连接。当我们需要让它们重新联机时。我们将手动重置节点。有没有一种方法可以在不使用插件的情况下自动重置?
kdfy810k1#
这些节点有什么操作系统?“失去连接”是什么意思?如果您的节点是Windows,如果失去连接是指您的虚拟机关闭,那么您可以将Jenkins节点连接作为服务安装,这样当您的虚拟机重新启动时,它们会自动启动。如果您的节点是Linux,那么你可以让节点自动启动脚本。2如果你的节点由于其他原因而随机失去连接,那么最好找出节点失去连接的原因并修复它,而不是在连接关闭后才重新启动连接。
zbdgwd5y2#
理想情况下,节点应在可用时重新连接。如果它们要进入脱机状态,则应能够使用如下脚本将其启动。在以下脚本中,临时禁用的节点将联机。
import hudson.slaves.OfflineCause.UserCause def jenkinsNodes = Jenkins.instance.getNodes() for(def node: jenkinsNodes) { if (node.getComputer().isTemporarilyOffline()){ println(node.getComputer().class) UserCause cause = new UserCause(User.current(), "This is a automated process!!") node.getComputer().setTemporarilyOffline(false, cause) } }
2条答案
按热度按时间kdfy810k1#
这些节点有什么操作系统?“失去连接”是什么意思?如果您的节点是Windows,如果失去连接是指您的虚拟机关闭,那么您可以将Jenkins节点连接作为服务安装,这样当您的虚拟机重新启动时,它们会自动启动。如果您的节点是Linux,那么你可以让节点自动启动脚本。2如果你的节点由于其他原因而随机失去连接,那么最好找出节点失去连接的原因并修复它,而不是在连接关闭后才重新启动连接。
zbdgwd5y2#
理想情况下,节点应在可用时重新连接。如果它们要进入脱机状态,则应能够使用如下脚本将其启动。在以下脚本中,临时禁用的节点将联机。