Tôi đang sử dụng boto để sinh ra một cá thể EC2 mới dựa trên AMI.Với boto, làm thế nào tôi có thể đặt tên cho một cá thể EC2 mới sinh ra?
Phương pháp ami.run có một số tham số, nhưng không có thông số nào cho "tên" - có thể nó được gọi là khác?
Tôi đang sử dụng boto để sinh ra một cá thể EC2 mới dựa trên AMI.Với boto, làm thế nào tôi có thể đặt tên cho một cá thể EC2 mới sinh ra?
Phương pháp ami.run có một số tham số, nhưng không có thông số nào cho "tên" - có thể nó được gọi là khác?
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})
Trong EC2, không có api nào để thay đổi tên thực của máy. Về cơ bản bạn có hai lựa chọn.
ec2-create-tags <instance-id> --tag:Name=<computer name>
. Nhược điểm của giải pháp này là máy chủ sẽ không thực sự cập nhật tên này. Thẻ này là đúng cho bạn hoặc khi bạn đang truy vấn danh sách máy chủ trong aws.Nói chung nếu bạn đang ở điểm mà bạn muốn máy chủ tự cấu hình khi khởi động, tôi thấy rằng đổi tên máy tính của bạn trong EC2 gây ra nhiều rắc rối hơn giá trị của nó. Tôi đề nghị không sử dụng chúng nếu bạn không cần. Sử dụng các thẻ hoặc trường hợp elb là cách tốt hơn để đi.
EC2 tạo-thẻ 'i-0d44bd39' --tag Tên = moo buộc tùy chọn '-K, --private-key KEY' mất tích (-h để sử dụng) Tương tự như vậy: ec2addtag --tag Tên = moo nói tôi đang thiếu một khóa riêng? Cú pháp --tag: Name = moo không hoạt động. – Jeff
Lệnh đó dành cho các công cụ dòng lệnh. Đối với boto sử dụng 'create_tags ('i-0d44bd39', dict (Tên = moo))' – bwight
Lưu ý bạn cũng có thể làm instance.add_tag ('Name', instance_name) – garnaat