2015-09-30 15 views
10

Có thể tạo một cá thể ec2 bằng boto3 trong python không? Tài liệu Boto3 không trợ giúp ở đây và tôi không thể tìm thấy bất kỳ tài liệu trợ giúp trực tuyến nào. vui lòng cung cấp một số mã/liên kết mẫu.Cách tạo một cá thể ec2 bằng boto3

Trả lời

20

API đã thay đổi nhưng nó phải có trong tài liệu

# Boto 3 
ec2.create_instances(ImageId='<ami-image-id>', MinCount=1, MaxCount=5) 

Liên kết với các tài liệu: http://boto3.readthedocs.org/en/latest/guide/migrationec2.html#launching-new-instances

+0

Bạn có biết nếu có đối số từ khóa để chỉ định nhóm bảo mật không? Bằng cách đó tôi có thể tạo ra cá thể, và thiết lập nhóm bảo mật phù hợp sẽ cho phép tôi ssh vào máy chủ. – applecider

+2

Nó phải chấp nhận một đối số từ khóa 'SecurityGroups = ['secgroup', ..]'. [Vấn đề] (https://github.com/boto/boto3/issues/136) dường như gợi ý rằng 'create_instances' đang chạy boto2 'run_instances' cổ điển đằng sau hậu trường để các tham số ban đầu cho' run_instances' phải hợp lệ . Xem [tài liệu] (http://botocore.readthedocs.org/en/latest/reference/services/ec2.html#EC2.Client.run_instances) – gbs

+0

Cảm ơn bạn đời, sẽ cho nó một shot – applecider

0

Liên kết bạn đang thực sự tìm kiếm trong tài liệu là create_instances() method of the ServiceResource object. Đây là loại đối tượng bạn đang gọi nếu bạn tạo một tài nguyên EC2 như thế này:

s = boto3.Session(region_name="us-west-1") 
ec2 = s.resource('ec2') 
... 
instance = ec2.create_instances(**y_kwargs) 

Điều này chứa ví dụ chi tiết hơn và danh sách dài hơn các tham số có sẵn.

Bạn cũng có thể nhận được các giá trị tham số cho AWS trường hiện đang vận hành sử dụng giao diện dòng lệnh AWS:

$ aws ec2 describe-instances 

này in ra một tệp JSON từ đó các thông số liên quan có thể được trích xuất và truyền cho phương thức create_instances() . (Hoặc, bạn có thể sử dụng một khách hàng boto và gọi số describe_instances() method.)

(Lưu ý: Nếu bạn phân biệt sự khác biệt giữa khách hàng và tài nguyên, họ phục vụ các mục đích khác nhau cho cùng một kết nối - khách hàng là một giao diện cấp thấp hơn trong khi Tài nguyên là giao diện cấp cao hơn.)

Các vấn đề liên quan