機械学習スクリプトを実行していて、時間がかかる。私はより速いプロセッサ上でAWS上でそれらを実行し、終了時にインスタンスを停止したいと考えています。pythonを使用してインスタンススクリプトをシャットダウンする
実行スクリプト内でbotoを使用してインスタンスを停止することはできますか?もっと簡単な方法はありますか?
機械学習スクリプトを実行していて、時間がかかる。私はより速いプロセッサ上でAWS上でそれらを実行し、終了時にインスタンスを停止したいと考えています。pythonを使用してインスタンススクリプトをシャットダウンする
実行スクリプト内でbotoを使用してインスタンスを停止することはできますか?もっと簡単な方法はありますか?
接続の作成方法については、Creating a Connectionを参照してください。以前はこれを試したことがないので、慎重に使用してください。また、インスタンスがEBSをサポートしていることを確認してください。それ以外の場合は、インスタンスを停止すると終了します。
import boto.ec2
import boto.utils
conn = boto.ec2.connect_to_region("us-east-1") # or your region
# Get the current instance's id
my_id = boto.utils.get_instance_metadata()['instance-id']
conn.stop_instances(instance_ids=[my_id])
あなたのEC2インスタンスは、Linuxを実行している場合は、単にあなたのEC2インスタンスを停止するhalt
またはshutdown
コマンドを発行することができます。これにより、IAM権限を必要とせずにEC2インスタンスをシャットダウンすることができます。
これはPythonスクリプトから行われますか? – goose
Pythonからシェルコマンドを実行してみましょう:http://stackoverflow.com/questions/89228/calling-an-external-command-in-python –
また:http://stackoverflow.com/questions/14764126/which-to-make-a-python-script-log-off-shutdown-and-restart-aコンピュータ –
botoを使用できます.EC2管理のドキュメントは http://docs.pythonboto.org/en/latest/ec2_tut.htmlです。 – reticentroot
はい。 Botoを使うことができます。 Boto3が良いです。いつ閉じるの?停止または終了しますか? – helloV
停止。したがって、botoスクリプトを実行しているインスタンスを閉じることもできます。 – goose