RightScale cung cấp một thư viện Ruby, right_aws, cái mà cung cấp truy cập tới dịch vụ EC2 của Amazon từ Ruby. Thư viện này được dùng bởi chính các sản phẩm của họ, và bao phủ mọi mặt của EC2, bao gồm EBS mới được giới thiệu gần đây. Thư viện này được đóng gói như là một rubygem, cùng với thư viện HTTP
RightScale:HttpConnection, cái mà có khả năng xử lý lỗi rất tốt. Bài viết này chỉ xem xét một số hàm được cung cấp bởi thư viện này. Bạn nên xem tài liệu được cung cấp cùng với thư viện để có được cảm nhận toàn diện về các hàm API. Xem xét các lựa chọn cấu hình khác nhau cho cả thư viện right_aws và thư viện hỗ trợ right_http_connection.
Bạn sẽ dùng lớp Rightscale::Ec2, cái mà cung cấp giao diện chính cho tương tác với EC2 của chúng ta. Thư viện này sẽ được dùng qua là của sổ lệnh. Bạn sẽ gửi một thông điệp tới đối tượng Rightscale::Ec2, và kiểm tra các phản hồi được trả lại bởi EC2. Điều này sẽ giúp bạn làm quen với hàm API trong khi khám phá các khái niệm EC2.
Khởi động một thể hiện từ AMI mới. Khi thể hiện đang ở trạng thái hoạt động, SSH tới thể hiện. Bạn sẽ bắt đầu sử dụng cửa sổ lệnh irb trong thể hiện.
Ví dụ 16. Cửa sổ shell của Ruby và đối tượng Rightscale::Ec2 mới
Bạn sử dụng biến mới được tạo này @ec2 từ đây để khám phá EC2. Ví dụ này sử dụng cấu hình mặc định cho thư viện này. Xem danh sách các lựa chọn cấu hình từ tài liệu của thư viện.
Lấy danh sách các thể hiện của bạn trả lại một mảng các mã băm (hash) với mỗi mã băm cung cấp thông tin chi tiết liên quan đến một thể hiện. Đây là một mẫu chung cho định dạng của phản hồi được tuân theo bởi hầu hết các lời gọi hàm API cho thư viện này. Ví dụ 17 đưa ra một ví dụ.
Ví dụ 17. Mô tả các thể hiện của bạn
Lấy một danh sách các AMI của bạn.
Ví dụ 18. Mô tả các AMI của bạn
Tạo một nhóm bảo mật dùng để đặt các thể hiện của bạn và giới hạn hoặc cấp quyền truy cập tới nó.
Tạo một cặp khóa bảo mật mới và liệt kê tất cả các cặp khóa trong tài khoản của bạn.
Ví dụ 20. Tạo một cặp khóa bảo mật mới và liệt kê các cặp khóa
Tạo một không gian lưu trữ EBS mới. Chỉ định miền sẵn sàng cho không gian lưu trữ này là us-east-1c. Không gian lưu trữ này, khi được tạo và sẵn sàng, chỉ có thể được gắn kết với một thể hiện mà đang hoạt động trong cùng miền sẵn sàng. Không gian lưu trữ ban đầu sẽ ở trạng thái "khởi tạo". Khi tạo xong, không gian lưu trữ sẽ ở trạng thái "sẵn sàng".
Gắn không gian lưu trữ này vào thể hiện hiện tại như là một thiết bị /dev/sdj và định dạng nó với hệ thống tệp ext3 để sử dụng.
Ví dụ 22. Gắn không gian lưu trữ EBS mới và tạo hệ thống tệp
Gắn (mount) thiết bị được định dạng mới vào thư mục hệ thống tệp.
Ví dụ 23. Gắn không gian lưu trữ vào một thư mục cục bộ và sử dụng nó
Bây giờ bạn có thể sử dụng không gian lưu trữ EBS như là các thiết bị khác trên hệ thống của bạn. Bạn có thể đọc và ghi. Khi bạn dùng xong, bạn có thể tách nó ra khỏi thể hiện đang hoạt động, sau đó tái gắn kết nó tới một thể hiện khác, hoặc chính thể
hiện hiện tại, bất cứ khi nào bạn muốn. Đây là bộ lưu trữ bền vững mà đưa EC2 lên một cấp độ mới. Có nhiều cách để tận dụng nó, từ dùng nó để lưu trữ cơ sở dữ liệu quan trọng tới nhật ký máy chủ web, cái mà cần tồn tại không phụ thuộc vào vòng đời của thể hiện.
Bạn có thể tạo một lưu trữ nhanh (snapshot) của một không gian lưu trữ EBS mà nó sẽ nắm giữ nội dung của không gian lưu trữ tại thời điểm đó. Các lưu trữ nhanh được lưu trữ tự động trên S3 và được tạo bởi EC2 theo cách cộng dồn. Bản lưu trữ nhanh đầu tiên sẽ là bản sao chép đầy đủ, nhưng những cái tiếp theo sẽ chỉ lưu trữ những tập bị thay đổi. Hiện tại mỗi tài khoản chỉ được phép lưu trữ 500 bản lưu trữ nhanh. Nếu bạn muốn giữ nhiều hơn 500 bản, bạn có thể yêu cầu tăng giới hạn cho tài khoản của bạn.
Ví dụ 24. Tạo một bản lưu trữ nhanh từ một không gian lưu trữ EBS
Bản lưu trữ nhanh được tạo bởi EC2 trong tiến trình nền. Bạn có thể liệt kê tất cả các bản lưu trữ nhanh một cách lặp đi lặp lại để đảm bảo rằng sự tạo lập hoàn tất một cách thành công.
Ví dụ 25. Liệt kê các lưu trữ nhanh của bạn
Cuối cùng, bạn có thể tách một không gian lưu trữ ra khỏi thể hiện của bạn. Bạn có thể tái gắn kết không gian đó vào chính thể hiện hiện tại hoặc một thể hiện khác tại thời điểm khác.