mio script utente-datidati utente (cloud-init) script non in esecuzione su EC2
#!
set -e -x
echo `whoami`
su root
yum update -y
touch ~/PLEASE_WORK.txt
che è alimentato in dal comando:
ec2-run-instances ami-05355a6c -n 1 -g mongo-group -k mykey -f myscript.sh -t t1.micro -z us-east-1a
ma quando controllo il file /var/log/cloud-init.log
, il tail -n 5
è:
[CLOUDINIT] 2013-07-22 16:02:29,566 - cloud-init-cfg[INFO]: cloud-init-cfg ['runcmd']
[CLOUDINIT] 2013-07-22 16:02:29,583 - __init__.py[DEBUG]: restored from cache type DataSourceEc2
[CLOUDINIT] 2013-07-22 16:02:29,686 - cloud-init-cfg[DEBUG]: handling runcmd with freq=None and args=[]
[CLOUDINIT] 2013-07-22 16:02:33,691 - cloud-init-run-module[INFO]: cloud-init-run-module ['once-per-instance', 'user-scripts', 'execute', 'run-parts', '/var/lib/cloud/data/scripts']
[CLOUDINIT] 2013-07-22 16:02:33,699 - __init__.py[DEBUG]: restored from cache type DataSourceEc2
ho anche verificato che curl http://169.254.169.254/latest/user-data
restituisce il file come intendono ed.
e non si verificano altri errori o l'output del mio script. come faccio a eseguire correttamente lo scrip dei dati utente per l'avvio?
ah vedo - tutto deve essere codificato MIME. Sto usando l'AMI amazon linux generico, ma vedo il processo 'cloud-init' nei log di avvio, quindi ho pensato che fosse lo stesso di Ubuntu. – lollercoaster
Non è necessario script di codifica MIME per istanze di esecuzione ec2. Cloud-init potrebbe richiedere dati in un formato particolare, ma Amazon se ne prende cura per te - vedi http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/AmazonLinuxAMIBasics.html#CloudInit MIME/Base64/gzip le codifiche sono opzionali - il tuo script deve solo iniziare con #! –
Buon punto, io uso OpenStack ... – lzap