Amazon web services 流浪汉没能把机器抬起来。抛出:不断收到错误提示';:未定义的方法'chomp';对于nil:NilClass(nomethoderor)

Amazon web services 流浪汉没能把机器抬起来。抛出:不断收到错误提示';:未定义的方法'chomp';对于nil:NilClass(nomethoderor),amazon-web-services,vagrant,centos7,Amazon Web Services,Vagrant,Centos7,这就是我得到的错误: `prompt': undefined method `chomp' for nil:NilClass (NoMethodError) 它偶尔发生——大约40%的时间 这是我的Vagrant文件(configs变量定义已删除,因为它包含敏感信息) 这是堆栈跟踪 11:55:30 ==> default: Launching an instance with the following settings... 11:55:30 ==> default: --

这就是我得到的错误:

 `prompt': undefined method `chomp' for nil:NilClass (NoMethodError)
它偶尔发生——大约40%的时间

这是我的Vagrant文件(configs变量定义已删除,因为它包含敏感信息)

这是堆栈跟踪

11:55:30 ==> default: Launching an instance with the following settings...
11:55:30 ==> default:  -- Type: m3.large
11:55:30 ==> default:  -- AMI: ami-e4ff5c93
11:55:30 ==> default:  -- Region: eu-west-1
11:55:30 ==> default:  -- Keypair: ui-build-centos
11:55:30 ==> default:  -- User Data: yes
11:55:30 ==> default:  -- User Data: #!/bin/bash
11:55:30 ==> default: sed -i -e 's/^Defaults.*requiretty/# Defaults requiretty/g' /etc/sudoers
11:55:30 ==> default:  -- Block Device Mapping: [{"DeviceName"=>"/dev/sda1", "Ebs.VolumeSize"=>50}]
11:55:30 ==> default:  -- Terminate On Shutdown: false
11:55:30 ==> default:  -- Monitoring: false
11:55:30 ==> default:  -- EBS optimized: false
11:55:30 ==> default:  -- Assigning a public IP address in a VPC: false
11:55:35 ==> default: Waiting for instance to become "ready"...
11:56:01 ==> default: Waiting for SSH to become available...
11:56:55 Text will be echoed in the clear. Please install the HighLine or Termios libraries to suppress echoed text.
11:56:55 centos@54.217.146.207's password:==> default: Terminating the instance...
11:56:57 ==> default: Running cleanup tasks for 'shell' provisioner...
11:56:57 ==> default: Running cleanup tasks for 'shell' provisioner...
11:56:57 /var/lib/jenkins/.vagrant.d/gems/gems/net-ssh-2.9.2/lib/net/ssh/prompt.rb:73:in `prompt': undefined method `chomp' for nil:NilClass (NoMethodError)
11:56:57    from /var/lib/jenkins/.vagrant.d/gems/gems/net-ssh-2.9.2/lib/net/ssh/authentication/methods/password.rb:57:in `ask_password'
11:56:57    from /var/lib/jenkins/.vagrant.d/gems/gems/net-ssh-2.9.2/lib/net/ssh/authentication/methods/password.rb:22:in `authenticate'
11:56:57    from /var/lib/jenkins/.vagrant.d/gems/gems/net-ssh-2.9.2/lib/net/ssh/authentication/session.rb:79:in `block in authenticate'
11:56:57    from /var/lib/jenkins/.vagrant.d/gems/gems/net-ssh-2.9.2/lib/net/ssh/authentication/session.rb:66:in `each'
11:56:57    from /var/lib/jenkins/.vagrant.d/gems/gems/net-ssh-2.9.2/lib/net/ssh/authentication/session.rb:66:in `authenticate'
11:56:57    from /var/lib/jenkins/.vagrant.d/gems/gems/net-ssh-2.9.2/lib/net/ssh.rb:211:in `start'
11:56:57    from /opt/vagrant/embedded/gems/gems/vagrant-1.6.5/plugins/communicators/ssh/communicator.rb:355:in `block (2 levels) in connect'
11:56:57    from /opt/vagrant/embedded/lib/ruby/2.0.0/timeout.rb:66:in `timeout'
11:56:57    from /opt/vagrant/embedded/gems/gems/vagrant-1.6.5/plugins/communicators/ssh/communicator.rb:334:in `block in connect'
11:56:57    from /opt/vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/util/retryable.rb:17:in `retryable'
11:56:57    from /opt/vagrant/embedded/gems/gems/vagrant-1.6.5/plugins/communicators/ssh/communicator.rb:333:in `connect'
11:56:57    from /opt/vagrant/embedded/gems/gems/vagrant-1.6.5/plugins/communicators/ssh/communicator.rb:119:in `ready?'
11:56:57    from /var/lib/jenkins/.vagrant.d/gems/gems/vagrant-aws-0.6.0/lib/vagrant-aws/action/run_instance.rb:161:in `block in call'
11:56:57    from /var/lib/jenkins/.vagrant.d/gems/gems/vagrant-aws-0.6.0/lib/vagrant-aws/util/timer.rb:9:in `time'
11:56:57    from /var/lib/jenkins/.vagrant.d/gems/gems/vagrant-aws-0.6.0/lib/vagrant-aws/action/run_instance.rb:155:in `call'
一些背景-流浪者作为自动化的一部分运行,在很长一段时间(几个月)内工作完美。然后发生了以下变化:

  • 我们是流浪汉
  • 我们搬到了centos
  • 我们将
    aws.user_data=“#!/bin/bash\nsed-i-e's/^Defaults.*requiretty/#Defaults requiretty/g'/etc/sudoers”添加到vagrant文件中,因为我们收到了关于sudo命令的提示
其他一切都没变。 我们不怀疑最后一项,因为它应该在ssh步骤之前很久发生

我们无法理解为什么stacktrace指定ask_密码,因为我们正在使用pem文件进行身份验证


任何关于如何解决这一问题的建议或暗示都将非常好

这是
centos@54.217.146.207的密码:==>默认值:终止实例…
一行还是必须键入密码?您从哪个版本开始移动,似乎您现在正在使用vagrant-1.6.5。当事情不确定时,很难说真的确定。您能否使用debug
vagrant up--debug
运行,以查看是否有其他有用的功能info@FrédéricHenri这生成了这么多日志,我不知道该怎么处理这些日志。我无法将调试打印粘贴到这里。它是60K字符,因此限制为30K字符。如果有任何需要,我可以通过电子邮件发送@FrédéricHenri如果我把它寄给你可以吗?你可以通过邮件发送,也可以按要点或粘贴方式发送-好主意。它将在一周内被删除。这是
centos@54.217.146.207的密码:==>默认值:终止实例…
一行还是必须键入密码?您从哪个版本开始移动,似乎您现在正在使用vagrant-1.6.5。当事情不确定时,很难说真的确定。您能否使用debug
vagrant up--debug
运行,以查看是否有其他有用的功能info@FrédéricHenri这生成了这么多日志,我不知道该怎么处理这些日志。我无法将调试打印粘贴到这里。它是60K字符,因此限制为30K字符。如果有任何需要,我可以通过电子邮件发送@FrédéricHenri如果我把它寄给你可以吗?你可以通过邮件发送,也可以按要点或粘贴方式发送-好主意。它将在一周内被移除。
11:55:30 ==> default: Launching an instance with the following settings...
11:55:30 ==> default:  -- Type: m3.large
11:55:30 ==> default:  -- AMI: ami-e4ff5c93
11:55:30 ==> default:  -- Region: eu-west-1
11:55:30 ==> default:  -- Keypair: ui-build-centos
11:55:30 ==> default:  -- User Data: yes
11:55:30 ==> default:  -- User Data: #!/bin/bash
11:55:30 ==> default: sed -i -e 's/^Defaults.*requiretty/# Defaults requiretty/g' /etc/sudoers
11:55:30 ==> default:  -- Block Device Mapping: [{"DeviceName"=>"/dev/sda1", "Ebs.VolumeSize"=>50}]
11:55:30 ==> default:  -- Terminate On Shutdown: false
11:55:30 ==> default:  -- Monitoring: false
11:55:30 ==> default:  -- EBS optimized: false
11:55:30 ==> default:  -- Assigning a public IP address in a VPC: false
11:55:35 ==> default: Waiting for instance to become "ready"...
11:56:01 ==> default: Waiting for SSH to become available...
11:56:55 Text will be echoed in the clear. Please install the HighLine or Termios libraries to suppress echoed text.
11:56:55 centos@54.217.146.207's password:==> default: Terminating the instance...
11:56:57 ==> default: Running cleanup tasks for 'shell' provisioner...
11:56:57 ==> default: Running cleanup tasks for 'shell' provisioner...
11:56:57 /var/lib/jenkins/.vagrant.d/gems/gems/net-ssh-2.9.2/lib/net/ssh/prompt.rb:73:in `prompt': undefined method `chomp' for nil:NilClass (NoMethodError)
11:56:57    from /var/lib/jenkins/.vagrant.d/gems/gems/net-ssh-2.9.2/lib/net/ssh/authentication/methods/password.rb:57:in `ask_password'
11:56:57    from /var/lib/jenkins/.vagrant.d/gems/gems/net-ssh-2.9.2/lib/net/ssh/authentication/methods/password.rb:22:in `authenticate'
11:56:57    from /var/lib/jenkins/.vagrant.d/gems/gems/net-ssh-2.9.2/lib/net/ssh/authentication/session.rb:79:in `block in authenticate'
11:56:57    from /var/lib/jenkins/.vagrant.d/gems/gems/net-ssh-2.9.2/lib/net/ssh/authentication/session.rb:66:in `each'
11:56:57    from /var/lib/jenkins/.vagrant.d/gems/gems/net-ssh-2.9.2/lib/net/ssh/authentication/session.rb:66:in `authenticate'
11:56:57    from /var/lib/jenkins/.vagrant.d/gems/gems/net-ssh-2.9.2/lib/net/ssh.rb:211:in `start'
11:56:57    from /opt/vagrant/embedded/gems/gems/vagrant-1.6.5/plugins/communicators/ssh/communicator.rb:355:in `block (2 levels) in connect'
11:56:57    from /opt/vagrant/embedded/lib/ruby/2.0.0/timeout.rb:66:in `timeout'
11:56:57    from /opt/vagrant/embedded/gems/gems/vagrant-1.6.5/plugins/communicators/ssh/communicator.rb:334:in `block in connect'
11:56:57    from /opt/vagrant/embedded/gems/gems/vagrant-1.6.5/lib/vagrant/util/retryable.rb:17:in `retryable'
11:56:57    from /opt/vagrant/embedded/gems/gems/vagrant-1.6.5/plugins/communicators/ssh/communicator.rb:333:in `connect'
11:56:57    from /opt/vagrant/embedded/gems/gems/vagrant-1.6.5/plugins/communicators/ssh/communicator.rb:119:in `ready?'
11:56:57    from /var/lib/jenkins/.vagrant.d/gems/gems/vagrant-aws-0.6.0/lib/vagrant-aws/action/run_instance.rb:161:in `block in call'
11:56:57    from /var/lib/jenkins/.vagrant.d/gems/gems/vagrant-aws-0.6.0/lib/vagrant-aws/util/timer.rb:9:in `time'
11:56:57    from /var/lib/jenkins/.vagrant.d/gems/gems/vagrant-aws-0.6.0/lib/vagrant-aws/action/run_instance.rb:155:in `call'