我最近一直在将我们的实例移动到 EBS 实例 (CentOS) 上,但当我“停止”和实例时,我仍然对发生的事情有些困惑。我有一些运行级别为 345 的服务,但是当我启动一个停止的实例时,服务没有启动。当我向实例发出停止命令时实际发生了什么,当我再次启动实例时如何让我的服务自动启动?
我最近一直在将我们的实例移动到 EBS 实例 (CentOS) 上,但当我“停止”和实例时,我仍然对发生的事情有些困惑。我有一些运行级别为 345 的服务,但是当我启动一个停止的实例时,服务没有启动。当我向实例发出停止命令时实际发生了什么,当我再次启动实例时如何让我的服务自动启动?
停止由 EBS 支持的 AMI 与将其关闭相同,并且不是某种冻结的休眠状态。
uptime
命令。您会看到服务器只启动了很短的时间。shutdown
命令,您会看到。还:
启动后,检查所有系统登录
/var/log
以查找尝试启动服务的任何错误,并执行dmesg
命令以查看启动时发生的情况。您的意思是您将 EC2 实例的系统文件放在持久性 EBS 卷上,而不是使用在您停止或重新启动实例时消失的实例文件系统?
如果是这样,当您关闭一个实例时,您的 EBS 卷上的文件将被保留,但该实例提供的其他文件系统上的文件(这些曾经是 / 和 /mnt,但我不确定会发生什么EBS 实例)将消失。
我猜您的服务不会在启动时启动,因为它们依赖于未存储在 EBS 卷上的文件。服务日志应该可以帮助您调试问题。
当您启动 EBS 支持的实例时,所有已安装的服务都应该启动。我每天启动/停止几个实例(LAMP 服务器),然后 apache、mysql 和一切都正常运行。
在某些情况下,我确实必须重新启动实例才能启动一些服务。我将此归因于连接到 EBS 的延迟,因此无法及时访问适当的文件。