Thực hành tốt nhất để liên lạc giữa các phiên bản Amazon EC2 là gì?


41

Tôi đã thiết lập các phiên bản Amazon EC2 cho một dự án sắp tới. Chúng đều là các phiên bản vi mô, chạy Ubuntu Server 64 bit. Đây là những gì tôi đã thiết lập cho đến nay:

  • Máy chủ web - Apache
  • Máy chủ cơ sở dữ liệu - MySQL
  • Máy chủ phát triển - Apache & MySQL
  • Máy chủ tệp - SVN & Bacula (sao lưu được thực hiện cho các thùng S3)

Hiện tại, chỉ có một Máy chủ Web, nhưng cuối cùng sẽ có nhiều hơn nữa.

Câu hỏi đầu tiên của tôi là, cách tốt nhất, an toàn nhất để các phiên bản Amazon EC2 liên lạc với nhau là gì? Hiện tại tôi đang sử dụng SSH, đó có phải là phương pháp tốt nhất?

Theo Amazon, các trường hợp giao tiếp giữa họ sử dụng địa chỉ IP đàn hồi của họ sẽ bị tính phí chuyển dữ liệu. Tuy nhiên, các trường hợp giao tiếp sử dụng địa chỉ IP Riêng tư của họ có thể làm như vậy miễn phí. Thật không may, nó xuất hiện IP riêng thay đổi nếu trường hợp bị dừng và bắt đầu lại.

Vì vậy, đó là câu hỏi thứ hai của tôi, làm thế nào để bạn sử dụng IP riêng của Amazon nếu chúng không tĩnh?

Tôi biết rằng các trường hợp có thể sẽ không bị dừng và bắt đầu rất thường xuyên, tuy nhiên, nếu địa chỉ IP nằm trong các tệp cấu hình khác nhau, sẽ rất khó để phải trải qua tất cả và thay đổi nó.

Tôi chủ yếu quan tâm đến các máy chủ Web, sẽ cần quyền truy cập vào máy chủ Cơ sở dữ liệu và Máy chủ tệp, sẽ cần quyền truy cập vào tất cả các phiên bản khi thực hiện sao lưu.

Lưu ý: Tôi chưa bao giờ sử dụng Bacula trước đây và tôi chưa thiết lập nó, nhưng tôi cho rằng nó sẽ cần địa chỉ IP của khách hàng để sao lưu chúng.


2
+1 - Tôi rất thích IP riêng co giãn. Ngoài ra, hãy lưu ý rằng tôi nghĩ bạn không thể liên lạc giữa các khu vực qua IP riêng.
Joel K

Tôi nghĩ bạn sẽ thấy rằng một m1.small duy nhất sẽ mang lại cho bạn hiệu suất tốt hơn nhiều so với nhiều t1.micro. Sau đó, nâng cấp lên c1.medium. Sau đó, bắt đầu khởi chạy nhiều c1.medium hoặc sử dụng loại thể hiện thậm chí còn lớn hơn. Tuy nhiên, lưu ý rằng m1.small và c1.medium chỉ hỗ trợ 32 bit, không phải 64 bit.
Eric Hammond

Câu trả lời:


29

Kiểm tra bài viết của Eric Hammond giải thích cách sử dụng địa chỉ IP đàn hồi ngay cả trong EC2. Phương pháp này KHÔNG dẫn đến bất kỳ khoản phí băng thông nào vì việc giải quyết địa chỉ IP đàn hồi (theo tên) từ bên trong EC2 trả về địa chỉ IP riêng.

http://alatural.com/2009/06/ec2-elastic-ip-iternal

Để có thêm lựa chọn, tôi có một bài viết kiểm tra một vài lựa chọn thay thế:

http://shlomoswidler.com/2010/06/track-changes-to-your-dynamic-cloud-service-automatically.html


Cám ơn phản hồi của bạn. Tôi đang suy nghĩ ngày càng nhiều rằng DNS động là hướng đi, mặc dù tôi chưa bao giờ thiết lập DNS trước đây. Bạn có biết bất kỳ trang web nào cung cấp hướng dẫn chi tiết về cách thực hiện không?
ks78

6

Triển khai thể hiện EC2 của bạn vào Đám mây riêng ảo AWS (VPC). Khi bạn định cấu hình VPC của mình, bạn sẽ gán CIDR cho tất cả các phiên bản EC2 trong VPC và IP bên trong sẽ tĩnh.


Đây là cách tiếp cận tốt nhất.
ceejayoz

2
  • Phương thức liên lạc an toàn nhất

SSH là một phương pháp rất tốt để truyền dữ liệu giữa các máy chủ khác nhau nhưng nếu bạn đang tìm kiếm thứ gì đó như kết nối vĩnh viễn (ví dụ như cơ sở dữ liệu), bạn có thể sử dụng bất kỳ loại phần mềm đường hầm được mã hóa nào như stunnel

  • IP riêng không tĩnh

Vì không có cách nào để có IP riêng tĩnh, bạn có thể sử dụng một số loại triển khai máy chủ tự động cho việc này, nên có một số công cụ như mcollective, capistrano hoặc func sẽ cho phép bạn đăng ký phiên bản mới của mình với máy chủ được chỉ định trung tâm và tạo nhiều hành động trên nhiều máy chủ máy dựa trên đó


Ban đầu tôi đã đăng câu hỏi tương tự trên StackOverflow. Có ai đó đã đề xuất sử dụng máy chủ DNS, vì vậy nếu IP riêng thay đổi thì điều đó không thành vấn đề vì họ sẽ sử dụng tên do DNS cung cấp để liên lạc. Ý kiến ​​của bạn về giải pháp đó là gì?
ks78

1
Đó không phải là một giải pháp tồi nếu bạn có thể cập nhật vùng DNS động, mặc dù vì bạn sẽ cần sử dụng máy chủ DNS chính đó cho tất cả các phiên bản của mình, nó cũng sẽ cung cấp cho bạn một điểm thất bại duy nhất, đó là lý do tại sao tôi đề xuất mcollective hoặc capistrano thay vì điều đó cũng sẽ mang lại cho bạn lợi thế khi thực hiện các thao tác phức tạp trên các nút của bạn
lynxman

Cảm ơn. Tôi chỉ tự hỏi ý kiến ​​của bạn về giải pháp đó sẽ là gì. Tôi sẽ xem xét mcollective và capistrano.
ks78

Xin lỗi để hồi sinh một luồng cũ nhưng IP riêng vẫn không tĩnh trên ec2? Đó không phải là những gì tôi đã chứng kiến ​​trên một thiết lập ec2 hoàn toàn mới - giao diện mạng vẫn tồn tại sau khi tôi dừng máy chủ và địa chỉ IP riêng chưa thay đổi đối với tôi. Tôi dường như cũng có thể chọn địa chỉ IP riêng thứ cấp nếu cần.
icyitscold
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.