0

在此处输入代码我第一次尝试使用橡胶将 Rails 3 应用程序部署到 ec2。在命令 cap Rubber:create_staging 运行期间,要求实例重新启动,然后它不会接受连接。这是它的外观:

 ** [out :: production.foo.com] Setting up grub2-common (1.99-21ubuntu3.1) ...
 ** [out :: production.foo.com] Setting up grub-pc-bin (1.99-21ubuntu3.1) ...
 ** [out :: production.foo.com] Setting up grub-pc (1.99-21ubuntu3.1) ...
 ** [out :: production.foo.com] Generating grub.cfg ...
 ** [out :: production.foo.com] /usr/sbin/grub-probe: warn:
 ** [out :: production.foo.com] 
 ** [out :: production.foo.com] disk does not exist, so falling back to partition device /dev/xvda1
 ** [out :: production.foo.com] .
 ** [out :: production.foo.com] Found linux image: /boot/vmlinuz-3.2.0-26-virtual
 ** [out :: production.foo.com] Found initrd image: /boot/initrd.img-3.2.0-26-virtual
 ** [out :: production.foo.com] /usr/sbin/grub-probe: warn:
 ** [out :: production.foo.com] 
 ** [out :: production.foo.com] disk does not exist, so falling back to partition device /dev/xvda1
 ** [out :: production.foo.com] .
 ** [out :: production.foo.com] /usr/sbin/grub-probe: warn:
 ** [out :: production.foo.com] 
 ** [out :: production.foo.com] disk does not exist, so falling back to partition device /dev/xvda1.
 ** [out :: production.foo.com] /usr/sbin/grub-probe: warn:
 ** [out :: production.foo.com] 
 ** [out :: production.foo.com] disk does not exist, so falling back to partition device /dev/xvda1
 ** [out :: production.foo.com] .
 ** [out :: production.foo.com] /usr/sbin/grub-probe: warn:
 ** [out :: production.foo.com] 
 ** [out :: production.foo.com] disk does not exist, so falling back to partition device /dev/xvda1
 ** [out :: production.foo.com] .
 ** [out :: production.foo.com] Found linux image: /boot/vmlinuz-3.2.0-23-virtual
 ** [out :: production.foo.com] Found initrd image: /boot/initrd.img-3.2.0-23-virtual
 ** [out :: production.foo.com] /usr/sbin/grub-probe: warn:
 ** [out :: production.foo.com] 
 ** [out :: production.foo.com] disk does not exist, so falling back to partition device /dev/xvda1
 ** [out :: production.foo.com] .
 ** [out :: production.foo.com] /usr/sbin/grub-probe: warn:
 ** [out :: production.foo.com] 
 ** [out :: production.foo.com] disk does not exist, so falling back to partition device /dev/xvda1
 ** [out :: production.foo.com] .
 ** [out :: production.foo.com] /usr/sbin/grub-probe: warn:
 ** [out :: production.foo.com] 
 ** [out :: production.foo.com] disk does not exist, so falling back to partition device /dev/xvda1
 ** [out :: production.foo.com] .
 ** [out :: production.foo.com] /usr/sbin/grub-probe: warn:
 ** [out :: production.foo.com] 
 ** [out :: production.foo.com] disk does not exist, so falling back to partition device /dev/xvda1
 ** [out :: production.foo.com] .
 ** [out :: production.foo.com] /usr/sbin/grub-probe: warn:
 ** [out :: production.foo.com] 
 ** [out :: production.foo.com] disk does not exist, so falling back to partition device /dev/xvda1
 ** [out :: production.foo.com] .
 ** [out :: production.foo.com] Found memtest86+ image: /boot/memtest86+.bin
 ** [out :: production.foo.com] done
 ** [out :: production.foo.com] Processing triggers for libc-bin ...
 ** [out :: production.foo.com] ldconfig deferred processing now taking place
 ** [out :: production.foo.com] Processing triggers for resolvconf ...
 ** [out :: production.foo.com] resolvconf: Error: /etc/resolv.conf isn't a symlink, not doing anything.
 ** [out :: production.foo.com] Processing triggers for initramfs-tools ...
 ** [out :: production.foo.com] update-initramfs: Generating /boot/initrd.img-3.2.0-26-virtual
    command finished in 131854ms
  * executing "echo $(ls /var/run/reboot-required 2> /dev/null)"
    servers: ["production.foo.com"]
    [production.foo.com] executing command
    command finished in 460ms
  * executing "echo $(ls /mnt/your_app_name-production 2> /dev/null)"
    servers: ["production.foo.com"]
    [production.foo.com] executing command
    command finished in 473ms
 ** Updates require a reboot on hosts ["production.foo.com"]
 ** Rebooting ...
  * executing "sudo -p 'sudo password: ' reboot"
    servers: ["production.foo.com"]
    [production.foo.com] executing command
    command finished in 479ms
  * executing `rubber:_direct_connection_production.foo.com_887'
  * executing "echo"
    servers: ["production.foo.com"]
 ** Failed to connect to production.foo.com, retrying

问题是,通过运行 Rubber:create 或任何其他橡胶命令,在创建和初始化实例后,在写入 /etc/hosts 文件后,我收到“连接失败”错误,一切都停在那里。

如果我对写在 hosts 文件中的地址执行 ssh,那么我就可以完美连接到实例,所以我不明白问题出在哪里……</p>

4

1 回答 1

0

确保 EBS 卷 /dev/xvda1 已附加到 ex2 实例。

转到 EC2 -> 卷并查看您拥有的 EBS 卷。如果您看到该卷处于可用状态,请尝试将其附加到 ec2 实例并重新启动该实例。

于 2012-07-19T07:14:05.803 回答