微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

linux – “rebo​​ot”和“ec2-reboot-instances”之间的区别

在EC2实例的命令行上调用reboot并从另一台机器上的AWS Command Line Tools发出ec2-reboot-instances命令之间有什么区别(如果有)?

ec2-reboot-instances是否会执行通过SSH会话发送重新启动的任何操作,例如处理特定于AWS的环境事务?

这两个命令之间有偏好吗?

在我的具体情况下,我使用Java库来访问AWS API而不是命令行工具,但它仍然在AWS上调用相同的命令. Java库比命令行工具更冗长,因此通过SSH发送reboot命令会更容易,但我想了解是否有任何其他考虑因素值得使用AWS API方法.

解决方法

使用差异:

>无需SSH访问(可以从任何计算机,甚至AWS控制台运行)
> ec2-reboot-instances需要AWS凭据
>可以轻松编写多个实例的脚本(更容易与其他AWS服务集成)

功能差异:

>如果实例没有干净地关闭,ec2-reboot-instances将在4分钟后强制重启. (见Documentation)
>该命令未确认成功 – 重新启动请求已排队但您不会被告知它是否有效或是否需要硬启动等(您被告知完全失败的命令 – 例如权限问题等)
>执行命令有一点延迟 – 通常不会显着

如果实例响应并且可以通过SSH重新启动(通过SSH)将执行与ec2-reboot-instances相同的任务.

另外值得一提的是,从SSH重新启动就足以进行计划维护(即您不需要使用ec2-reboot-instances).根据documentation

Instance reboots are reboots of your virtual instance,and are
equivalent to an operating system reboot.

Managing your own instance reboots is very straightforward. …you can also reboot your instance from the operating system of your instance.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐