我已经在 jenkins 中配置了使用 SSH 启动方法的 VCenter Cloud 插件。我已经安装了 OpenSSH,并且能够通过 SSH 和 SCP 连接到我创建模板的机器。当我在管道中使用它时,我看到虚拟机已部署在 vcenter 中,不确定自定义是否已应用。我看到日志为从属在线。然后我看到又创建了一个虚拟机,而前一个虚拟机已关闭并被删除。这种情况继续。
编辑:我配置了 JNLP 而不是 SSH,并且行为相同。
编辑:无需自定义,Windows VM 的配置即可正常工作。当应用自定义并重新启动 VM 时,它会收到来自插件的删除通知,然后删除该插件并再次创建新的 VM。此过程循环进行。非常感谢在这方面提供的任何帮助。
我能得到有关删除虚拟机的触发原因的帮助吗?这是相关的詹金斯日志。
2019 年 7 月 22 日上午 5:44:52 信息 org.jenkinsci.plugins.vSphereCloud InternalLog 启动 VSPHERE CLOUD 2019 年 7 月 22 日上午 5:45:40 信息 org.jenkinsci.plugins.vSphereCloud calculateMaxAdditionalSlavesPermitted 此云中有 1 台虚拟机。云的实例上限为 15,因此我们还有更多空间 2019 年 7 月 22 日上午 5:45:40 INFO org.jenkinsci.plugins.vSphereCloud provision provision(mssql,1): 0 个现有从属 (=0 个执行程序),可用模板为 [Template[prefix=mssql-, provisioned=[], planned=[], unwanted={}, max=2147483647, fullness=0.000%]] 2019 年 7 月 22 日上午 5:45:40 INFO org.jenkinsci.plugins.vSphereCloud provision provision(mssql,1): Provisioning 1 new =[mssql-c4mz6wao3rd17d1mkqg3ebcwk] 2019 年 7 月 22 日上午 5:45:40 INFO hudson.slaves.NodeProvisioner$StandardStrategyImpl apply Started使用 1 个执行器从 vSphereCloud 配置 mssql-c4mz6wao3rd17d1mkqg3ebcwk。剩余超额工作量:0 2019 年 7 月 22 日上午 5:49:50 INFO org.csanchez.jenkins.plugins.kubernetes.KubernetesClientProvider gracefulClose 未关闭 io.fabric8.kubernetes.client.DefaultKubernetesClient@4963a818:仍有正在运行(1)或排队(0)的调用 2019 年 7 月 22 日上午 5:51:47 INFO org.jenkinsci.plugins.vSphereCloud InternalLog [mssql-c4mz6wao3rd17d1mkqg3ebcwk] 正在启动虚拟机... 2019 年 7 月 22 日上午 5:51:47 INFO org.jenkinsci.plugins.vSphereCloud$VSpherePlannedNode$1 调用已配置新的从属 mssql-c4mz6wao3rd17d1mkqg3ebcwk 2019 年 7 月 22 日5:51:47 AM INFO org.jenkinsci.plugins.vSphereCloud InternalLog [mssql-c4mz6wao3rd17d1mkqg3ebcwk] VM 已启动 2019 年 7 月 22 日 5:51:47 AM INFO org.jenkinsci.plugins.vSphereCloud InternalLog [mssql-c4mz6wao3rd17d1mkqg3ebcwk] 正在等待 VMTools 2019 年 7 月 22 日 5:51:47 AM INFO org.jenkinsci.plugins.vSphereCloud InternalLog [mssql-c4mz6wao3rd17d1mkqg3ebcwk] VM Tools 正在运行 2019 年 7 月 22 日 5:51:47 AM INFO org.jenkinsci.plugins.vSphereCloud InternalLog [mssql-c4mz6wao3rd17d1mkqg3ebcwk] 等待 VMTools 完成 2019 年 7 月 22 日 上午 5:51:47 INFO org.jenkinsci.plugins.vSphereCloud InternalLog [mssql-c4mz6wao3rd17d1mkqg3ebcwk] 等待 60 秒后要求 hudson.plugins.sshslaves.SSHLauncher@b437c0e 启动从属。2019 年 7 月 22 日 上午 5:51:50 INFO hudson.slaves.NodeProvisioner$2 运行 mssql-c4mz6wao3rd17d1mkqg3ebcwk 配置已成功完成。我们现在有 83 台计算机 2019 年 7 月 22 日 上午 5:52:47 INFO org.jenkinsci.plugins.vSphereCloud InternalLog [mssql-c4mz6wao3rd17d1mkqg3ebcwk] 要求 SSHLauncher 启动从属服务器。 2019 年 7 月 22 日 上午 5:52:47 INFO org.jenkinsci.plugins.vSphereCloud InternalLog [mssql-c4mz6wao3rd17d1mkqg3ebcwk] 从属服务器在线 2019 年 7 月 22 日 上午 5:52:50 INFO org.jenkinsci.plugins.vSphereCloud calculateMaxAdditionalSlavesPermitted 此云中有 2 台虚拟机。云的实例上限为 15,因此我们还有更多空间 2019 年 7 月 22 日上午 5:52:50 INFO org.jenkinsci.plugins.vSphereCloud provision provision(mssql,1): 0 个现有从属 (=0 个执行程序),可用模板为 [Template[prefix=mssql-, provisioned=[mssql-c4mz6wao3rd17d1mkqg3ebcwk],计划 = [],不需要 = {},最大值 = 2147483647,完整度 = 0.000%]] 2019 年 7 月 22 日上午 5:52:50 信息 org.jenkinsci.plugins.vSphereCloud 配置配置(mssql,1):配置 1 个新的 = [mssql-3r9lhyucmhgwnvd5l2jiw88w4] 2019 年 7 月 22 日上午 5:52:50 信息 hudson.slaves.NodeProvisioner$StandardStrategyImpl 应用已开始从 vSphereCloud 配置 mssql-3r9lhyucmhgwnvd5l2jiw88w4,使用 1 个执行程序。剩余超额工作量:0 2019 年 7 月 22 日上午 5:53:57 INFO org.jenkinsci.plugins.vSphereCloud InternalLog [mssql-c4mz6wao3rd17d1mkqg3ebcwk] 正在运行断开连接程序... 2019 年 7 月 22 日上午 5:53:57 INFO org.jenkinsci.plugins.vSphereCloud InternalLog [mssql-c4mz6wao3rd17d1mkqg3ebcwk] 已断开连接的计算机 mssql-c4mz6wao3rd17d1mkqg3ebcwk 2019 年 7 月 22 日上午 5:53:57 INFO org.jenkinsci.plugins.vSphereCloud InternalLog [mssql-c4mz6wao3rd17d1mkqg3ebcwk] 断开连接已完成。执行空闲操作没有任何反应... 2019 年 7 月 22 日上午 5:53:57 INFO org.jenkinsci.plugins.vSphereCloud provisionedSlaveHasTerminated provisionedSlaveHasTerminated(mssql-c4mz6wao3rd17d1mkqg3ebcwk): 计划删除 mssql-c4mz6wao3rd17d1mkqg3ebcwk 2019 年 7 月 22 日上午 5:53:57 INFO org.jenkinsci.plugins.vSphereCloud InternalLog [mssql-c4mz6wao3rd17d1mkqg3ebcwk] 空闲操作没有任何反应完成。 2019 年 7 月 22 日上午 5:53:57 信息 org.jenkinsci.plugins.vSphereCloud InternalLog [mssql-c4mz6wao3rd17d1mkqg3ebcwk] 正在运行断开连接程序... 2019 年 7 月 22 日上午 5:53:57 信息 hudson.slaves.SlaveComputer tryReconnect 尝试重新连接 hcm-regression-vertica.hpeswlab.net 2019 年 7 月 22 日上午 5:53:57 信息 org.jenkinsci.plugins.vSphereCloud InternalLog [mssql-c4mz6wao3rd17d1mkqg3ebcwk] 断开连接已完成。正在执行空闲操作 NOTHING... 2019 年 7 月 22 日上午 5:53:57 INFO org.jenkinsci.plugins.vSphereCloud InternalLog [mssql-c4mz6wao3rd17d1mkqg3ebcwk] 空闲操作 NOTHING 完成。2019 年 7 月 22 日上午 5:53:57 INFO org.jenkinsci.plugins.vSphereCloud InternalLog [mssql-c4mz6wao3rd17d1mkqg3ebcwk] 从属为空。计划删除 mssql-c4mz6wao3rd17d1mkqg3ebcwk 2019 年 7 月 22 日上午 5:53:57 INFO org.jenkinsci.plugins.vSphereCloud InternalLog [mssql-c4mz6wao3rd17d1mkqg3ebcwk] 空闲操作未完成。 2019 年 7 月 22 日上午 5:53:57 信息 org.jenkinsci.plugins.vSphereCloud InternalLog [mssql-c4mz6wao3rd17d1mkqg3ebcwk] 正在运行断开连接程序... 2019 年 7 月 22 日上午 5:53:57 信息 hudson.slaves.SlaveComputer tryReconnect 尝试重新连接 hcm-regression-vertica.hpeswlab.net 2019 年 7 月 22 日上午 5:53:57 信息 org.jenkinsci.plugins.vSphereCloud InternalLog [mssql-c4mz6wao3rd17d1mkqg3ebcwk] 断开连接已完成。正在执行空闲操作 NOTHING... 2019 年 7 月 22 日上午 5:53:57 INFO org.jenkinsci.plugins.vSphereCloud InternalLog [mssql-c4mz6wao3rd17d1mkqg3ebcwk] 空闲操作 NOTHING 完成。2019 年 7 月 22 日上午 5:53:57 INFO org.jenkinsci.plugins.vSphereCloud InternalLog [mssql-c4mz6wao3rd17d1mkqg3ebcwk] 从属为空。计划删除 mssql-c4mz6wao3rd17d1mkqg3ebcwk 2019 年 7 月 22 日上午 5:53:57 INFO org.jenkinsci.plugins.vSphereCloud InternalLog [mssql-c4mz6wao3rd17d1mkqg3ebcwk] 空闲操作未完成。 2019 年 7 月 22 日上午 5:53:57 信息 org.jenkinsci.plugins.vSphereCloud InternalLog [mssql-c4mz6wao3rd17d1mkqg3ebcwk] 正在运行断开连接程序... 2019 年 7 月 22 日上午 5:53:57 信息 hudson.slaves.SlaveComputer tryReconnect 尝试重新连接 hcm-regression-vertica.hpeswlab.net 2019 年 7 月 22 日上午 5:53:57 信息 org.jenkinsci.plugins.vSphereCloud InternalLog [mssql-c4mz6wao3rd17d1mkqg3ebcwk] 断开连接已完成。正在执行空闲操作 NOTHING... 2019 年 7 月 22 日上午 5:53:57 INFO org.jenkinsci.plugins.vSphereCloud InternalLog [mssql-c4mz6wao3rd17d1mkqg3ebcwk] 空闲操作 NOTHING 完成。2019 年 7 月 22 日上午 5:53:57 INFO org.jenkinsci.plugins.vSphereCloud InternalLog [mssql-c4mz6wao3rd17d1mkqg3ebcwk] 从属为空。
答案1
无论如何,我们都会断开连接。最后我们找到了答案。在保留策略下的插件配置中,理想的超时时间为 2,我们将其增加到 5,这样就成功了。此超时在节点部署后立即开始,Windows 需要更长时间才能在 SSH/JNLP 两种方法中注册为 jenkins 从属,因此它会断开连接。