¿Cómo automatizar el inicio de una instancia de Amazon EC2, la ejecución de algunos comandos y el apagado?

8

Necesito descargar 100 GB de archivos (está en unos 150 archivos) dentro de un período de 7 días antes de que caduquen. El host limita la velocidad de descarga, por lo que tarda MUCHO más tiempo que la velocidad de transferencia teórica basada en las velocidades normales de Internet. Tengo un script de curl http://curl.haxx.se/docs/manpage.html comandos: una línea por archivo.

Tuve la idea de activar automáticamente n instancias EC2, ejecutar el comando y enviar los archivos por FTP a una ubicación central, y luego apagar las máquinas. ¿Cómo haría esto?

No me importa si es Linux o Windows.

Howiecamp
fuente

Respuestas:

7

Recomendaría usar una de las AMI de Canonical en conjunción con cloud-init

https://help.ubuntu.com/community/CloudInit

Busque la sección sobre "Scripts de datos de usuario" donde puede usar el archivo de datos de usuario para iniciar automáticamente un script en el inicio. Por lo tanto, puede poner todos los comandos que desea ejecutar en el script y poner "shutdown -h now" al final del script.

dialt0ne
fuente
Parece que la AMI oficial de Amazon Linux también es compatible con CloudInit: aws.typepad.com/aws/2010/09/introducing-amazon-linux-ami.html
dialt0ne
1

He usado boto para escribir este tipo de cosas antes. Es más fácil girar las imágenes de Linux y luego usarlas para que funcionen.

pjz
fuente
0

No estoy seguro de la mejor solución. Pero si está haciendo esto de forma regular y necesita algo para iniciar y detener automáticamente sus máquinas, entonces es posible que desee ver este producto: http://LabSlice.com (con el descargo de responsabilidad de que soy el CTO).

Simon en LabSlice-com
fuente
su producto se ve muy bien y su sitio también se ve excelente. Sin embargo, acepté la otra respuesta porque era más específica sobre los guiones.
Howiecamp
0

Vagabundo con el proveedor de AWS lo hace fácilmente y es multiplataforma.

Una vez Vagrantfilecreado, vagrant upinicia la instancia con , inicia sesión con él vagrant sshy destrúyelo con vagrant destroy. Muy facil.

Florin Andrei
fuente