2013-12-18 74 views
2

我有一个自动缩放的cloudformation,我想我已经设置了基于StatusCheckFailed_Instance替换失败的实例。我想测试这个。我可以通过终止其中一个EC2实例来测试它吗?谢谢!AWS自动缩放测试失败实例

回答

2

实例状态检查可能会失败的原因如下:

内存错误

  • 超出内存:杀进程
  • ERROR:mmu_update失败(内存管理更新失败)

设备错误

  • I/O错误(方框设备故障)
  • IO ERROR:既不本地也不远程磁盘(分拆分布式块设备)

内核错误

  • request_module:失控循环modprobe(在旧版Linux上循环传统内核modprobe)
  • “FATAL:kernel too old” (内核和AMI不匹配)
  • “FATAL:无法加载/ lib/modules”或“BusyBox”(缺少内核模块)
  • 错误无效内核(EC2不兼容内核)

文件系统错误

  • request_module:失控的循环modprobe的
  • F(在旧版本的Linux循环遗留的内核modprobe的) SCK:没有这样的文件或试图打开目录...(未找到文件系统)
  • 一般错误安装的文件系统(安装失败)
  • VFS:无法装入未知块(根文件系统不匹配)的根文件系统
  • 错误:无法确定根设备的主要/次要号码......(根文件系统/设备不匹配)
  • XENBUS:设备没有驱动程序...
  • ...没有被检查日,检查强制(需要文件系统检查)
  • fsck死于退出状态...(缺少设备)

操作系统错误

  • GRUB提示符(grubdom>)
  • 瞻接口eth0:设备的eth0已比预期不同的MAC地址,忽略。(硬编码MAC地址)
  • 无法加载SELinux策略。机器处于执行模式。现在停止。 (SELinux的配置错误)
  • XENBUS:超时连接设备(Xenbus超时)

在我看来,那#1是最容易实现的失败上的需求。您可以添加Web钩子或启动一个延迟的shell脚本来启动一些会导致OutOfMemory失败的进程,以确认您的自动调节配置按配置工作。

终止实例无助于测试您的配置,因为当您优雅地终止实例时,它将从可用实例池中删除,并且不会执行该检查。

关于状态检查的更多细节可以在这里找到:Troubleshooting Instances with Failed Status Checks