[英]How to set up new Jenkins slave
我最近继承了Jenkins驱动的Java项目,其中主要开发人员刚刚升级并退出。 他已将Jenkins WAR部署到虚拟服务器上的Tomcat实例,这就是被认为是“构建服务器”的东西。
此构建服务器配置了一个从属服务器,用于构建和部署到另一个虚拟服务器myserver.example.com
。 在周末,系统人员退出了myserver.example.com
虚拟所在的物理服务器,为配置为部署到该从属服务器的任何Jenkins作业产生以下异常:
当我点击“ 查看日志以获取更多详细信息 ”链接时,我看到以下控制台输出:
[03/18/13 08:13:31] [SSH] Opening SSH connection to myserver.example.com:22.
java.io.IOException: There was a problem while connecting to myserver.example.com:22
at com.trilead.ssh2.Connection.connect(Connection.java:755)
at com.trilead.ssh2.Connection.connect(Connection.java:546)
at hudson.plugins.sshslaves.SSHLauncher.openConnection(SSHLauncher.java:650)
at hudson.plugins.sshslaves.SSHLauncher.launch(SSHLauncher.java:283)
at hudson.slaves.SlaveComputer$1.call(SlaveComputer.java:200)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
at java.util.concurrent.FutureTask.run(FutureTask.java:138)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:662)
Caused by: java.net.NoRouteToHostException: No route to host
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:351)
at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:213)
at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:200)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366)
at java.net.Socket.connect(Socket.java:529)
at com.trilead.ssh2.transport.TransportManager.establishConnection(TransportManager.java:342)
at com.trilead.ssh2.transport.TransportManager.initialize(TransportManager.java:450)
at com.trilead.ssh2.Connection.connect(Connection.java:699)
... 9 more
[03/18/13 08:13:34] [SSH] Connection closed.
这是有道理的,因为slave( myserver.example.com
virtual)处于脱机状态。 但是,由于没有真正的Jenkins经验,我不确定配置Jenkins主站以构建/部署这些作业到新的从站的正确步骤,以及如何设置新的从站。 例如,我是否需要在新的slave上安装任何东西,或者进行任何类型的setup / config? 提前致谢!
在Jenkins中添加奴隶非常简单。 基本上,如果您使用的是unix slave,则需要SSH访问该计算机。 您还需要安装Jenkins SSH Slaves插件 。 一旦你的,去你的主 管理詹金斯选项,并选择管理节点 。
然后是以下步骤:
关于从站上安装的工具有一些假设。 如果您有专门的工具,您可能需要单独安装它们(或者查看在执行之前立即处理移动工具的插件)。 但是,如果你的节点是由一个模板构建的,模板上有你的所有构建工具(在你的情况下可能是java,ant等),那么这就是你需要做的所有事情。
我遇到了同样的问题,在我的情况下这是因为我没有在Ubuntu上安装ssh服务器。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.