查找Jenkins节点的IP

时间:2013-02-18 05:58:38

标签: jenkins

通过“Java web start”连接到Jenkins服务器的Windows从节点。节点的系统信息没有IP地址。

我必须遍历我们拥有的所有从属节点,并找到哪个机器(IP地址)对应于Jenkins中的从属节点。

有没有办法从Jenkins本身找到从节点的IP地址?

8 个答案:

答案 0 :(得分:54)

通过脚本控制台(管理Jenkins - &gt; 节点 - &gt; 选择节点 - &gt; 脚本控制台< / em>)我们可以执行groovy脚本的节点。运行以下命令以获取IP地址。

println InetAddress.localHost.canonicalHostName

答案 1 :(得分:14)

找出IP的高效平台无关方式可能是“全局”脚本控制台的以下 groovy代码 在主人身上

import hudson.model.Computer.ListPossibleNames

def node = jenkins.model.Jenkins.instance.getNode( "myslave" )
println node.computer.getChannel().call(new ListPossibleNames())

在控制台中,这会产生(例如)

Result
[192.168.0.17]

结果是一个字符串列表,因为一台机器上可能有多个IP地址。

由于这不需要节点特定的控制台,可以很容易地围绕所有节点的代码添加循环。< / p>

答案 2 :(得分:9)

在非Windows Jenkins奴隶上回答同样的问题:

获取IP地址:

println "ifconfig".execute().text

获取主机名:

println "hostname".execute().text

答案 3 :(得分:4)

从Web界面

转到节点的Log链接:

http://jenkins.mycompany.com:8080/computer/my_node_name/log

第一行应显示以下内容:

JNLP agent connected from /10.11.12.123

屏幕截图

screenshot

答案 4 :(得分:1)

这与Deepak的解释非常相似,但是我在很短的步骤中添加了图像。

在Jenkins用户界面中,单击:

管理Jenkins->节点->选择一个节点->脚本控制台

然后运行println InetAddress.localHost.canonicalHostName

enter image description here

答案 5 :(得分:0)

在你的Jenkins工作中,如果它在groovy或者回应ifonfig sh“/ sbin / ifconfig -a | grep inet”

答案 6 :(得分:0)

要在Windows奴隶上获取IP:

导航到脚本控制台(管理Jenkins - &gt; 节点 - &gt; 选择节点 - &gt; 脚本控制台

println "ipconfig".execute().text

答案 7 :(得分:-2)

也可以通过Jenkins UI找到: 管理Jenkins - &gt;管理节点 - &gt;单击节点名称 - &gt;配置

这应显示该节点的公共和私有IP地址