9

Trong tuần qua, tôi đã chơi với đá quý Cao su và dường như không làm cho nó hoạt động. Tôi đã quyết định sẽ dễ dàng hơn để tự thiết lập cá thể EC2 của tôi. Vấn đề là tôi không biết làm thế nào. Google cũng không giúp được gì nhiều cho một người mới. Bất kỳ đề xuất? Nó thực sự được đánh giá cao.Triển khai ứng dụng Rails trên EC2

+0

Điều gì không hiệu quả? –

Trả lời

27

Chắc chắn.

  1. Tạo tài khoản AWS.

  2. Quyết định khu vực bạn muốn tham gia. Rất nhiều điều đi vào quyết định này, nhưng hãy lo lắng về điều này sau và chỉ làm một thứ rẻ tiền như Oregon hoặc Đông.

  3. Đảm bảo bạn đang ở đúng khu vực ở trên cùng bên trái.

  4. Sau đó nhấp vào khởi chạy máy chủ.

  5. Tại thời điểm này, bạn phải chọn AMI. Một AMI về cơ bản là mẫu bạn muốn sử dụng khi bạn khởi động máy chủ của mình. Amazon cung cấp cho bạn một số, nhưng có một tấn trong phần cộng đồng. Tôi là một anh chàng CentOS vì vậy tôi thường tìm kiếm một AMOS CentOS. RightScale làm cho một số tốt để bạn có thể tìm kiếm một trong những người. Hãy chắc chắn rằng bạn chọn i386 hoặc x64 tùy thuộc vào kích thước của máy chủ bạn muốn. Có hai loại AMI riêng biệt, EBS được hỗ trợ và S3 được hỗ trợ. Thực sự bạn nên gắn bó với EBS bởi vì bạn có một số tự do hơn, nhưng có nhiều lý do để sử dụng cả hai đều nằm ngoài phạm vi của câu trả lời này. Hãy tìm EBS và bạn có thể sẽ tốt. EBS là kho lưu trữ khối. Về cơ bản nó là harddrives gắn cho các trường hợp của bạn. Vì mọi thứ trong đám mây là "ảo" và không có ý nghĩ gì về mặt vật lý, bạn cũng phải nghĩ theo cách đó. Vì vậy, nếu bạn muốn lưu trữ nhiều hơn, bạn có thể đính kèm một số tập EBS sau đó. Mặc dù vậy, một số trường hợp được S3 hỗ trợ sẽ tạm biệt khi bạn tắt chúng. Những người EBS cũng sẽ như vậy nếu bạn đã xóa bộ cờ chấm dứt, nhưng với EBS, bạn có thể "Dừng" chúng cũng như "Chấm dứt" chúng.

  6. Chọn kích thước và vùng khả dụng. Khu vực này rất quan trọng nếu bạn sắp thiết lập một số loại dự phòng. Giống như nếu tôi có một thiết lập nô lệ chính với MySQL, tôi sẽ đặt tổng thể trong một vùng và nô lệ trong một vùng khác trong trường hợp Amazon gặp sự cố đã được phân lập thành một vùng. Nhưng với mục đích chung này, đừng lo lắng về nó.

  7. Tùy chọn sơ thẩm nâng cao. Chỉ cần để lại tất cả điều này một mình rất có thể nó là tốt. Một số điều nhỏ ở đây bạn có thể đặt sau này như bảo vệ chấm dứt.

  8. Đặt tên. Bất cứ điều gì.

  9. Tạo khóa SSH. Striaght tiến lên. Cách duy nhất để đăng nhập vào một máy chủ Amazon sẽ là với khóa SSH bạn gán nó. Không có tên người dùng hoặc mật khẩu.

  10. Nhóm bảo mật. Đây là nơi bạn có thể bị vấp ngã, ở đây và # 5. Nhưng bạn nên bắt đầu với việc tạo một nhóm bảo mật chung gọi foo hoặc bất cứ điều gì sau đó thêm các cổng bạn muốn mở trên nó. Vì vậy, nếu bạn muốn ssh vào nó, mà tôi giả sử bạn làm, sau đó mở 22. Nếu bạn muốn sử dụng nó cho web sau đó mở 80 và 8080 hoặc bất cứ điều gì. Nhưng hãy cẩn thận. Tôi thường thay đổi cổng SSH của mình sau này thành một cái gì đó ngẫu nhiên. Và thay vì đặt 0.0.0.0/0 vào nó, tôi đặt ip cá nhân của tôi. Nhưng nếu bạn không quan tâm nhiều đến mức chỉ cần đặt 0.0.0.0/0 và mở cậu bé xấu đó ra thế giới.

Sau đó, nó sẽ khởi động. Miễn là nó tất cả đã đi như nó được cho là.

Bây giờ bạn có thể đăng nhập. Chỉ cần ssh -i thekey.pem thenwholehostname

Hy vọng điều đó sẽ hữu ích.

Có toàn bộ cấp độ miễn phí này mà bạn có thể sử dụng. http://aws.amazon.com/free/

Kiểm tra điều đó. Tôi sẽ sử dụng nó trong khi bạn chơi với nó.

Tôi đã làm tất cả những điều đó từ bộ nhớ vì vậy tôi có thể đã tắt. ;)

1

chantheman đã đưa ra hướng dẫn tuyệt vời nếu bạn muốn thực hiện việc này theo cách thủ công. Nếu bạn đang tìm kiếm các giải pháp thay thế, bạn sẽ xem xét sử dụng giải pháp của bên thứ ba như nền tảng quản lý đám mây, điều này làm cho việc thiết lập một phiên bản EC2 và việc triển khai các ứng dụng trở nên dễ dàng hơn. RightScale, được đề cập trước đó như một nhà cung cấp AMI trong hướng dẫn của chantheman, là một trong số chúng, nhưng bạn cũng có thể xem xét enStratus và Scalr (tuyên bố từ chối trách nhiệm: Tôi làm việc ở đó). Bạn sẽ cần cung cấp cho họ thông tin đăng nhập AWS của bạn để cho phép họ thực hiện cuộc gọi API nhân danh bạn.

Phần mềm quản lý đám mây sẽ cung cấp một số AMI được định cấu hình sẵn (tại Scalr, chúng tôi gọi chúng là vai trò) và cung cấp khung triển khai ứng dụng (chúng tôi đã viết một blogpost về http://scalr.net/blog/announcements/deployments/) này. Do đó bạn sẽ thực hiện bước 2-10 nhanh hơn.

Nếu bạn có ngân sách hạn hẹp, RightScale và enStratus có tài khoản miễn phí trong khi Scalr là nguồn mở và có sẵn theo giấy phép Apache 2.

0

Bạn cũng nên xem các tùy chọn triển khai Ubuntu Juju.

Cấu hình cho Amazon Web Services

https://juju.ubuntu.com/docs/getting-started.html

Sử dụng Juju để triển khai Rails của bạn Ứng dụng

https://juju.ubuntu.com/docs/howto-rails.html

Cách sử dụng cơ bản của Ruby on Rails Charm

Tạo một file YAML cấu hình với tên của ứng dụng của bạn và vị trí git nó

sample-app.yaml 

sample-app: 
    repo: https://github.com/pavelpachkovskij/sample-rails 

Triển khai các ứng dụng và một proxy:

juju deploy --config sample-app.yaml rails myapp 
juju deploy haproxy 
juju add-relation haproxy myapp 

Triển khai và liên hệ cơ sở dữ liệu:

juju deploy postgresql 
juju add-relation postgresql:db myapp 

Bây giờ bạn có thể chạy di chuyển:

juju ssh myapp/0 run rake db:migrate 
Seed database 

juju ssh myapp/0 run rake db:seed 

Và cuối cùng tiếp xúc với các proxy:

juju expose haproxy 
Find the instance's public URL from 

juju status haproxy 

Scale theo chiều ngang bằng cách thêm và loại bỏ các đơn vị:

juju add-unit myapp 
juju remove-unit myapp 

Hoặc đi thậm chí lớn hơn với juju add-đơn vị -n10 myapp cho 10 nút.

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