Me encontré con el mismo problema con las instancias EC2, pero me dirigí a él de una manera diferente: en lugar de monitorear las instancias, hice que se mataran automáticamente después de un período de tiempo determinado. Según su descripción, parece que esto puede no ser práctico en su entorno, pero pensé que lo compartiría por si acaso me ayuda. Mi IAM se basó en Fedora, así que creado la siguiente escritura del golpe, registrada como un servicio, y tenía que ejecutar en el inicio:
#!/bin/bash
# chkconfig: 2345 68 20
# description: 50 Minute Kill
# Source Functions
. /etc/rc.d/init.d/functions
start()
{
# Shut down 50 minutes after starting up
at now + 50 minutes < /root/atshutdown
}
stop()
{
# Remove all jobs from the at queue because I'm not using at for anything else
for job in $(atq | awk '{print $1}')
do
atrm $job
done
}
case "$1" in
start)
start && success || failure
echo
;;
stop)
stop && success || failure
echo
;;
restart)
stop && start && success || failure
echo
;;
status)
echo $"`atq`"
;;
*)
echo $"Usage: $0 {start | stop | restart}"
RETVAL=1
esac
exit $RETVAL
usted podría considerar hacer algo similar para que se adapte a sus necesidades. Si hace esto, tenga especial cuidado de detener el servicio antes de modificar su imagen para que la instancia no se cierre antes de tener la oportunidad de volver a agrupar.
Si quisiera, podría tener el cierre de los casos en un tiempo fijo (después de todo el mundo deja el trabajo?), O usted podría pasar en un tiempo de longitud/apagado de mantenimiento de conexión a través de los parámetros -d
o -f
a ec2-run-instances
y analizar en el guión.
Buena pregunta: me encanta EC2, pero siempre me ha resultado molesto calcular los costos de uso minuto a minuto. –
Puede que tenga más suerte al preguntar esto en el foro de soporte de EC2; por favor publique la respuesta aquí si obtiene uno. –
Gracias Gareth: He publicado la pregunta aquí http://developer.amazonwebservices.com/connect/thread.jspa?threadID=45165 – frabcus