Dezember, 2011

AWS Amazon Web Service EC2 Scripten

Dienstag, Dezember 20th, 2011

Für einen Lasttest habe ich etliche AWS Micro Instanzen mit Ubuntu 10.4 benötigt, die alle vorkonfiguriert werden mussten. Da man aber nicht Tausend Instanzen von Hand Einrichten und Konfigurieren will musste mal wieder ein Script her.

Als erstes braucht man die ec2-api-tools
sudo apt-get install ec2-api-tools

Dann habe ich ein Start Script Namens run-file.sh geschrieben, das z.b. so aussieht:
#!/bin/bash

apt-get update
apt-get install -y apache2-utils
ab http://blog.chr.istoph.de/

Dann habe ich die Instanzen mittels eine for Schleife gestartet.
for i in {1..1000}; do
ec2-run-instances ami-e52ce68c --instance-type t1.micro --region us-east-1 --key ca -K pk-xxx.pem -C cert-xxx.pem -user-data-file run-file.sh
done

Das starten der Instanzen sollte nicht mittels & in den Hintergrund geschoben werden, da das Programm ec2-run-instances ein sehr Speicherfressendes Java Programm ist.

Nachdem man jetzt die 1000 Instanzen eine Weile laufen gelassen hat muss man diese auch wieder beenden. Dazu kann man sich folgendermaßen alle Instanzen anzeigen:
ec2-describe-instances -K pk-xxx.pem -C cert-xxx.pem

Dem endsprechen kann man auch ALLE existierende Instanzen gelöscht werden:
ec2-terminate-instances -K pk-xxx.pem -C cert-xxx.pem $(ec2-describe-instances -K pk-xxx.pem -C cert-xxx.pem | grep INSTANCE | awk '{print $2}')

Quelle: help.ubuntu.com
uec-images.ubuntu.com