我已经配置了一个OpsWorks堆栈并设置了我的图层,以便将50 GB的卷附加到我启动的每个实例上。
新的EBS卷可以正确创建,附加并安装到新启动的实例。这是我在第一次启动后立即看到的内容:
[root@biscotti ec2-user]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/xvda1 7.9G 1.9G 5.9G 25% /
tmpfs 298M 0 298M 0% /dev/shm
/dev/xvdi 50G 33M 50G 1% /srv/www <---------
[root@biscotti ec2-user]# mount
/dev/xvda1 on / type ext4 (rw,noatime)
proc on /proc type proc (rw)
sysfs on /sys type sysfs (rw)
devpts on /dev/pts type devpts (rw,gid=5,mode=620)
tmpfs on /dev/shm type tmpfs (rw)
none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw)
/dev/xvdi on /srv/www type xfs (rw,noatime) <---------
但是,如果我重新启动实例,则不会自动重新安装卷:
[root@biscotti ec2-user]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/xvda1 7.9G 1.9G 5.9G 25% /
tmpfs 298M 0 298M 0% /dev/shm
[root@biscotti ec2-user]# mount
/dev/xvda1 on / type ext4 (rw,noatime)
proc on /proc type proc (rw)
sysfs on /sys type sysfs (rw)
devpts on /dev/pts type devpts (rw,gid=5,mode=620)
tmpfs on /dev/shm type tmpfs (rw)
none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw)
如果我输入
sudo mount -a
一切都会恢复正常:
[root@biscotti ec2-user]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/xvda1 7.9G 1.9G 5.9G 25% /
tmpfs 298M 0 298M 0% /dev/shm
/dev/xvdi 50G 33M 50G 1% /srv/www
[root@biscotti ec2-user]# mount
/dev/xvda1 on / type ext4 (rw,noatime)
proc on /proc type proc (rw)
sysfs on /sys type sysfs (rw)
devpts on /dev/pts type devpts (rw,gid=5,mode=620)
tmpfs on /dev/shm type tmpfs (rw)
none on /proc/sys/fs/binfmt_misc type binfmt_misc (rw)
/dev/xvdi on /srv/www type xfs (rw,noatime)
如何让OpsWorks自动为我重新安装EBS卷?
提前致谢。
答案 0 :(得分:5)
我提出了AWS支持的问题,结果证明是OpsWorks的一个问题。该错误可重现性的一个关键因素是我通过在命令行上键入sudo reboot
来重新启动实例。如果我通过API或AWS控制台停止并重新启动实例,则会正确装入卷。从字面上引用AWS支持:
OpsWorks是一个非常程序化的服务。如果可能的话,它喜欢在没有人工干预的情况下管理自己的资源。也许手动操作系统重启可以覆盖OpsWorks流程的某些部分。
我被告知OpsWorksdev团队正在解决这个问题。通过使用自定义Chef配方将auto
选项添加到/etc/fstab
文件中的EBS设备,也可以解决此问题。
我希望这会帮助那些遇到同样问题的人。
答案 1 :(得分:0)