Diferencias entre "reiniciar" y "ec2-reiniciar-instancias"

16

¿Cuáles son las diferencias, si las hay, entre invocar rebooten la línea de comandos de una instancia EC2 y emitir el ec2-reboot-instancescomando desde las Herramientas de línea de comandos de AWS en otra máquina?

¿Hace ec2-reboot-instancesalgo que el envío a reboottravés de una sesión SSH no hará, como manejar cosas ambientales específicas de AWS?

¿Hay alguna preferencia entre los dos comandos?

En mi caso específico, estoy usando la biblioteca Java para acceder a la API de AWS en lugar de la herramienta de línea de comandos, pero aún invoca el mismo comando en AWS. La biblioteca de Java es más detallada que la herramienta de línea de comandos, por lo que sería más fácil enviar el rebootcomando a través de SSH, pero me gustaría entender si hay otras consideraciones que hagan que valga la pena usar el enfoque API de AWS.

chrisbunney
fuente

Respuestas:

12

Diferencias de uso:

  • No se requiere acceso SSH (se puede ejecutar desde cualquier computadora o incluso desde la consola de AWS)
  • ec2-reboot-instances requiere credenciales de AWS
  • Puede realizar scripts fácilmente para varias instancias (más fácil de integrar con otros servicios de AWS)

Diferencia en funcionalidad:

  • ec2-reboot-instancesforzará un reinicio completo después de 4 minutos si la instancia no se ha cerrado limpiamente. (Ver documentación )
  • El comando no confirma el éxito: la solicitud de reinicio se pone en cola pero no se le informa si funcionó o si se requiere un inicio difícil, etc. (se le informa de los comandos fallidos, por ejemplo, problemas de permisos, etc.)
  • Hay una ligera demora en la ejecución del comando, por lo general no es notable

En los casos en que la instancia responde y se puede acceder a través de SSH reboot(a través de SSH) se realizará la misma tarea que ec2-reboot-instances.


Como un punto adicional de mención, los reinicios desde SSH serán suficientes para el mantenimiento programado (es decir, no es necesario usarlo ec2-reboot-instances). Según la documentación :

Los reinicios de instancia son reinicios de su instancia virtual y son equivalentes a un reinicio del sistema operativo.

Administrar sus propios reinicios de instancia es muy sencillo. ... también puede reiniciar su instancia desde el sistema operativo de su instancia.

cyberx86
fuente
¿Un comando de reinicio que no sea EC2 desencadenará eventos de mantenimiento programados?
ceejayoz
@ceejayoz: Sí, se actualizó la respuesta para mencionarlo.
cyberx86
Tengo una situación en la que la emisión sudo rebootrestablece el volumen EBS adjunto al estado del sistema de archivos como cuando se creó la AMI ... y el reinicio desde la consola no. Desearía poder proporcionar más detalles ... pero sí, es extraño.
Carl G