2012-03-05 3 views

答えて

31
import boto 
c = boto.connect_ec2(ec2_key, ec2_secret) 
image = c.get_image(ec2_ami) 

reservation = image.run(key_name=ec2_keypair, 
         security_groups=ec2_secgroups, 
         instance_type=ec2_instancetype) 

instance = reservation.instances[0] 
c.create_tags([instance.id], {"Name": instance_name}) 
+18

を使用してください。instance.add_tag( 'Name'、instance_name) – garnaat

1

EC2には実際のマシン名を変更するAPIはありません。基本的には2つの選択肢があります。

  1. あなたは、ユーザーデータとするとき、サーバは、コンピュータの名前を変更するスクリプトを実行開始し、コンピュータの目的の名前を渡すことができます。
  2. EC2タグを使用してサーバの名前をec2-create-tags <instance-id> --tag:Name=<computer name>にすることができます。このソリューションの欠点は、サーバーが実際にこの名前に更新されないことです。このタグは、awsのサーバーのリストを照会しているときに、あなたのためのものです。

一般的に言えば、起動時にサーバーを構成する必要がある場合は、EC2でコンピュータの名前を変更するだけで問題が発生します。あなたがする必要がない場合は、私はそれらを使用しないことをお勧めします。タグまたはelbインスタンスを使用する方が良い方法です。

+0

EC2-作成タグ '私は-0d44bd39' --tag名= MOO 必要なオプション '-K、--privateキーKEY' 行方不明同様に(使用のための-h):ec2addtag --tag名前=私は秘密鍵がないと言っていますか? --tag:Name = moo構文は機能しません。 – Jeff

+0

このコマンドはコマンドラインツール用です。 botoの場合は、 'create_tags( 'i-0d44bd39'、dict(Name = moo))' – bwight

関連する問題