【问题标题】:How to set Vagrant ssh timeout如何设置 Vagrant ssh 超时
【发布时间】:2016-12-20 05:24:22
【问题描述】:

我有一本厨师食谱,可以将补丁应用到 Redhat OS。注册到RH卫星服务器后,运行yum -y update。我用来测试说明书的 rhel 6.4 映像有 255 个包要更新。

但总是在第210包左右失败,没有消息错误,它只是说

"return 1" instead of 0.

我还将我的 vagrant box 增加到 1GB 内存,但仍然失败。 我怀疑 vagrant ssh 超时。但除了这个旧文件,我什么也找不到: http://friendsofvagrant.github.io/v1/docs/config/ssh/timeout.html

任何人都知道 Vagrant 设置为 ssh 到已配置 VM 的默认 ssh 超时是多少?以及如何配置?

这是我的 Vagrantfile(由 kitchen-vagrant 插件自动生成)

Vagrant.configure("2") do |c|
  c.vm.box = "redhat-6.4"
  c.vm.box_url = "https://myrepo.domain.com/vagrant/rhel-6.4-x86_64.box"
  c.vm.hostname = "default-redhat-64.vagrantup.com"
  c.vm.synced_folder ".", "/vagrant", disabled: true
  c.vm.provider :virtualbox do |p|
    p.customize ["modifyvm", :id, "--memory", "1024"]
  end
end

这是输出:

Updating   : systemtap-2.5-5.el6.x86_64                               201/517 
Updating   : gcc-c++-4.4.7-11.el6.x86_64                              202/517 
Updating   : gcc-gfortran-4.4.7-11.el6.x86_64                         203/517 
Updating   : system-config-firewall-tui-1.2.27-7.1.el6.noarch         204/517 
Updating   : sysstat-9.0.4-27.el6.x86_64                              205/517 
Updating   : ntp-4.2.6p5-1.el6.x86_64                                 206/517 
Updating   : 2:irqbalance-1.0.4-10.el6.x86_64                         207/517 
Updating   : selinux-policy-targeted-3.7.19-260.el6.noarch            208/517 
Updating   : lvm2-2.02.111-2.el6.x86_64                               209/517 
Updating   : openss57.641417 #4720]  INFO -- default-redhat-64: 
I, [2015-01-07T13:31:57.642725 #4720]  INFO -- default-redhat-64: h-server-5.3p1-104.el6.x86_64                      210/517
I, [2015-01-07T13:31:57.642775 #4720]  INFO -- default-redhat-64: STDERR: 
I, [2015-01-07T13:31:57.642830 #4720]  INFO -- default-redhat-64: ---- End output of yum -y update ----
I, [2015-01-07T13:31:57.642884 #4720]  INFO -- default-redhat-64: Ran yum -y update returned 1
I, [2015-01-07T13:31:59.151150 #4720]  INFO -- default-redhat-64: [2015-01-07T20:31:58+00:00] FATAL: Chef::Exceptions::ChildConvergeError: Chef run process exited unsuccessfully (exit code 1)
E, [2015-01-07T13:32:00.253495 #4720] ERROR -- default-redhat-64: Converge failed on instance <default-redhat-64>.
E, [2015-01-07T13:32:00.253739 #4720] ERROR -- default-redhat-64: ------Exception-------
E, [2015-01-07T13:32:00.253782 #4720] ERROR -- default-redhat-64: Class: Kitchen::ActionFailed
E, [2015-01-07T13:32:00.253813 #4720] ERROR -- default-redhat-64: Message: SSH exited (1) for command: [sudo -E chef-client -z --config /tmp/kitchen/client.rb --log_level info --json-attributes /tmp/kitchen/dna.json]
E, [2015-01-07T13:32:00.253846 #4720] ERROR -- default-redhat-64: ---Nested Exception---
E, [2015-01-07T13:32:00.253874 #4720] ERROR -- default-redhat-64: Class: Kitchen::SSHFailed
E, [2015-01-07T13:32:00.253906 #4720] ERROR -- default-redhat-64: Message: SSH exited (1) for command: [sudo -E chef-client -z --config /tmp/kitchen/client.rb --log_level info --json-attributes /tmp/kitchen/dna.json]

同样,它并不总是在一个特定的包上失败。

【问题讨论】:

  • 你能把真正的错误日志贴到210th package周围吗?我认为这与内存使用无关。
  • 请包括错误的完整输出。

标签: vagrant chef-infra vagrantfile


【解决方案1】:

所以我发现 Vagrant ssh 没有超时(可能在以后的 Vagrant 版本中)。问题出在 Mixlib ShellOut 中,它的超时时间为 600 秒,并且命令“yum update”花费的时间比这更长。

【讨论】:

    猜你喜欢
    • 2011-06-23
    • 1970-01-01
    • 2012-10-07
    • 1970-01-01
    • 2012-05-01
    • 2015-02-13
    • 2014-09-11
    • 1970-01-01
    • 2017-08-29
    相关资源
    最近更新 更多