Von Python bootstraped ist, ich bin mit Messer einen Server zu starten.Im Koch-Server, wie Sie feststellen können, wenn ein Knoten vollständig
z.B.
knife ec2 server create -r "role[nginx_server]" --region ap-southeast-1 -Z ap-southeast-1a -I ami-ae1a5dfc --flavor t1.micro -G nginx -x ubuntu -S sg_development -i /home/ubuntu/.ec2/sg_development.pem -N webserver1
Ich werde verwendet, dann den Koch-Server api zu überprüfen, wenn der Bootstrap abgeschlossen ist, so kann ich dann Boto und andere Tools verwenden, um den neu erstellte Server zu konfigurieren. Pseudo-Code wird wie folgt aussehen:
cmd = """knife ec2 server create -r "role[nginx_server]...."""
os.system(cmd)
boot = False
while boot==False:
chefTrigger = getStatusFromChefApi()
if chefTrigger==True:
boot=True
continue with code for further proccessing
Meine Frage ist ... was ist der Auslöser in dem Koch-Server, der anzeigt, wenn der Knoten vollständig von Küchenchef verarbeitet wird? Beachten Sie, dass ich den Server mit dem Namen -N benannt habe und seine Eigenschaften abfrage, aber wonach suche ich? Gibt es einen Bool? Ein Status?
Dank
Die folgende Antwort von jtimberman geht auf Ihre Frage ein. Ich würde die größere Frage stellen, warum Sie Boto und andere Tools außerhalb von Chef verwenden, um diese Instanz zu konfigurieren. Vielleicht vermisse ich etwas, aber Sie scheinen hier die Macht des Chefs nicht voll auszunutzen. –
Sobald ich gebootet habe, ändere ich Tagnamen, führe Tests aus, bevor Knoten in den Load Balancer verschoben werden. Ich bin mir sicher, dass ich das im Koch machen kann, aber ich bevorzuge es, Skripte zu überwachen, um das zu tun. Dies ist eine Failover-Lösung. Der größte Grund ist, dass ich, wenn ich einen fehlerhaften ec2-Naode mit dem Koch starte, wissen muss, dass er richtig gebootet wird. Es dauert ungefähr 15 Minuten, um einen Knoten zu laden. Ich habe eine Auszeit um 20. Wenn länger, abbrechen und es erneut versuchen. Ich habe bemerkt, dass aus zufälligen Gründen mit Chef, manchmal Bootstraps nicht funktionieren das erste Mal. Ich nenne es die Chefbombe! – Tampa