Hộp Vagrant tương tự như các phiên bản Amazon EC2


37

Có bất kỳ 'hộp' nào có sẵn để tải xuống cho Vagrant phản ánh chặt chẽ phiên bản Linux và các gói có sẵn cho các phiên bản Amazon EC2 không?

Tôi đang thử nghiệm cục bộ bằng Vagrant, hiện đang sử dụng hộp Precise32. Tôi đang triển khai mã của mình tới các phiên bản Amazon EC2 với 'Amazon Linux AMI 2013.03' AMI.

Vấn đề tôi gặp phải là các gói có sẵn để cài đặt trên hộp Precise32 có các tên khác nhau, vd

  • php5-fpm - trong hộp mơ hồ
  • php54-fpm - trong ví dụ Amazon EC2.

Mặc dù tôi có thể khắc phục điều này bằng cách sử dụng các biến trong tệp cấu hình Puppet để xử lý các tên gói khác nhau, nghe có vẻ giống như một bản hack.

Vì vậy, có bất kỳ hộp mơ hồ nào có sẵn sẽ phản ánh chặt chẽ môi trường Amazon EC2.

Hoặc tôi có thể bảo một hộp mơ hồ sử dụng cùng nguồn gói như một ví dụ Amazon EC2 không?

Để làm rõ một điều - lý do tôi muốn làm điều này là để tôi có thể kiểm tra tại địa phương mà không phải cam kết mọi thứ trước. Mặc dù Vagrant có hỗ trợ cho AWS với tư cách là nhà cung cấp, nhưng điều đó thực sự sẽ không thể đạt được khả năng kiểm tra tại địa phương.


Hy vọng điều này nhận được câu trả lời hữu ích, tôi rất thích cài đặt cục bộ Amazon Linux cho loại trường hợp sử dụng này.
ceejayoz

1
Đừng sử dụng Amazon Linux?
Michael Hampton

1
@MichaelHampton Thật tuyệt khi có một biến thể Linux được xây dựng và hỗ trợ của Amazon. Có những thứ như các công cụ AWS có chức năng vượt trội có thể là vô giá.
ceejayoz

@ceejayoz Vâng, điều đó hữu ích, nhưng không quá nhiều khi phần còn lại của hệ thống không hoạt động. Tôi chưa ấn tượng với chất lượng xây dựng của Amazon Linux; dường như luôn có một cái gì đó quan trọng bị phá vỡ.
Michael Hampton

YMMV, tôi đoán vậy. Tôi chưa gặp phải sự cố như vậy trên cụm nginx / php-fpm / percona của chúng tôi.
ceejayoz

Câu trả lời:


11

Không, không có cách nào để sử dụng Amazon Linux ngoài EC2. Nếu bạn muốn sử dụng công cụ phái sinh Red Hat Enterprise Linux (mà Amazon Linux là), tôi khuyên bạn nên sử dụng CentOS 6 cả trong Vagrant và trên EC2. Bạn sẽ tìm thấy nhiều hộp cơ sở CentOS ở đây và các AMI chính thức được liệt kê ở đây .


1
Điều đó dường như giống với hầu hết, nhưng vẫn hơi khác một chút, ví dụ Amazon linux có các gói PHP 5.3 và PHP 5.4 có sẵn trong các gói của nó. Tôi nghĩ rằng ý tưởng của tôi về việc có một môi trường Vagrant đủ gần để phù hợp với môi trường của Amazon để giống hệt với các tập lệnh cài đặt là không khả thi nếu không có nhiều công việc trong việc tạo hộp tùy chỉnh.
Danack

Đúng vậy, Amazon Linux bổ sung phần mềm bổ sung và mới hơn ngoài những gì RHEL và CentOS bao gồm. Đó là lý do tại sao tôi không khuyên bạn nên sử dụng Amazon Linux.
tọa

1
Đối với những người (như tôi), người tìm thấy điều này hơn 5 năm sau, bây giờ, vào năm 2018, câu trả lời này không còn đúng nữa:> "không có cách nào để sử dụng Amazon Linux ngoài EC2" Amazon hiện cung cấp hình ảnh máy ảo (cho VirtualBox, ansible, VMWare, Windowz-hyper-z-anything và Docker) của Amazon Linux, về cơ bản chỉ là một bản phân phối CentOS gần đây được tối ưu hóa và cấu hình sẵn cho EC2 với các công cụ API của Amazon và các gói cloudinit được cài đặt sẵn và chúng hoàn toàn hỗ trợ và khuyến khích bạn để chạy nó tại chỗ cũng như trong AWS: Amazon Linux 2 aws.amazon.com/amazon-linux-2/#Resource
gigawatt

19

LƯU Ý: Câu trả lời này không phải là về việc tìm một hộp mơ hồ cho "Amazon Linux". Câu trả lời này là về việc giúp người đăng ban đầu giải quyết mục tiêu sử dụng cùng một hệ thống trong sản xuất như trong dev, điều xảy ra là Ubuntu. Như bạn có thể thấy trong các ý kiến ​​dưới đây, OP đã đồng ý điều này sẽ giải quyết vấn đề của anh ấy.


Canonical cung cấp Ubuntu AMI chính thức trên EC2 và các hộp Vagrant chính thức tương ứng để tải xuống.

Đối với Chính xác Ubuntu 12.04, các AMI được liệt kê tại

http://cloud-images.ubfox.com/precise/c Hiện /

và các hộp Vagrant được liệt kê tại

http://cloud-images.ubfox.com/vagrant/precise/c Hiện /

Bạn có thể sử dụng điều này để bắt đầu với cùng một cấu hình cơ sở trên EC2 như bạn đang sử dụng cục bộ trong dev.


1
Những người này sẽ không hành động như Amazon Linux AMI dựa trên RHEL.
ceejayoz

2
Cảm ơn điều đó sẽ giải quyết vấn đề cho chính tôi, vì tôi không quan tâm đặc biệt đến việc tôi sử dụng hương vị nào của Linux. Tuy nhiên, vẫn còn tốt để xem có ai đã giải quyết nó bằng cách làm một hộp Vagrant có hương vị Amazon.
Danack

1
@ceejayoz: Tôi đang đề xuất giải quyết vấn đề cốt lõi của OP là có cùng hình ảnh trên dev + prod bằng cách chuyển prod thay vì chuyển dev. Không phải tất cả các câu trả lời cần giới hạn bản thân với các giả định mà chúng ta đọc vào câu hỏi. Những gì chúng tôi đang cố gắng làm là giúp người hỏi giải quyết các vấn đề trong thế giới thực của họ bằng các giải pháp thực tế. "Không, bạn không thể làm được" là một câu trả lời hợp lệ, nhưng tôi đánh giá cao "Bạn có thể hoàn thành mục tiêu cơ bản của mình bằng cách ..."
Eric Hammond

6

Vào ngày 13 tháng 12 năm 2017, Amazon đã phát hành Amazon Linux 2 . Với điều này, Amazon hiện cung cấp các hình ảnh có thể tải xuống sẽ chạy trong VirtualBox, VMWare, MS Hyper-V.

Trước đó, bạn đã có tùy chọn sử dụng hình ảnh Docker Amazon ECS . Điều đó tiếp tục có sẵn cho cả v1 và v2.

Hãy xem Running Amazon Linux 2 như một máy ảo tại chỗ .

Tôi nghi ngờ ai đó sẽ xuất bản một hộp mơ hồ sớm. Trong interrim, khá dễ dàng để tự xây dựng một hộp cơ sở .


4

Cũng đáng để xem tại http://www.packer.io, nó có thể được sử dụng để cung cấp cho bạn chính xác hình ảnh ami tương tự cho người ngoài của bạn


1
Chào mừng bạn đến với Lỗi Máy chủ! Trong khi về mặt lý thuyết có thể trả lời câu hỏi, tốt hơn là nên bao gồm các phần thiết yếu của câu trả lời ở đây và cung cấp liên kết để tham khảo.
slm

1
lưu ý, không muốn xả rác câu trả lời với nội dung trang cài đặt và sử dụng đầy đủ? nhưng nếu đó là ưu tiên, tôi sẽ làm điều đó vào lần tới
digitaladept

Không thể diễn giải, nó không phải là chi tiết đầy đủ, mà chỉ là ý chính.
slm

1
Packer sẽ không cung cấp cho bạn "chính xác hình ảnh ami tương tự cho âm đạo bên ngoài của bạn". Theo tôi hiểu, Packer có thể lấy hình ảnh cơ sở của ami và chạy tập lệnh cung cấp tùy chỉnh của bạn qua đó để tạo ra một ami đầu ra. Nó cũng có thể sử dụng một hộp vagrant (ovf) hoặc .iso làm cơ sở để chạy cùng một kịch bản cung cấp để tạo ra một hộp vagrant đầu ra. Mặc dù tập lệnh cung cấp sẽ giống nhau, các hộp cơ sở sẽ khác nhau ở một mức độ nào đó. Bạn không thể tạo một hộp mơ hồ trực tiếp từ AMI.
chắc chắn nhất

@poshest Vì vậy, chúng ta vẫn cần cùng một môi trường phát triển và sản xuất (như Ubuntu) để làm cho hộp Vagrant hoạt động (gần như) giống như một AMI?
Franklin Yu

2

Amazon Linux dựa trên Redhat / CentOS, vì vậy các tên sẽ khớp với nhau hơn nếu bạn chạy một trong những địa phương đó.

Các hệ điều hành Linux dựa trên Debian / Ubuntu thay đổi tên gói, ví dụ "dev" thay vì "devel" làm hậu tố cho các gói phát triển.

Btw, bạn có thể muốn kiểm tra đầu ra của "rpm -qa" trên phiên bản Amazon Linux, kết hợp nó để khớp với tên gói CentOS / Redhat, sau đó nghĩ rằng tạo phiên bản HĐH của riêng bạn phù hợp với Amazon.


1

Như năm 2017, vâng.

Tên của hộp Vagrant là mvbcoding / awslinux được lưu trữ trong đám mây Vagrant (như tất cả các hộp Vagrant công khai khác).

Bạn có thể khởi chạy một hộp với lệnh sau.

vagrant init mvbcoding/awslinux; vagrant up --provider virtualbox

Chào mừng, bạn có thể vui lòng cho một câu trả lời chi tiết hơn?
bgtvfr

@bgtvfr có nghĩa là bây giờ chúng ta có một hộp Vagrant tương tự như các phiên bản Amazon EC2, tức là, mvbcoding / awslinux . Đó là hộp duy nhất được đặt tên awslinuxcho đến nay.
Franklin Yu

Có an toàn khi sử dụng các hộp công khai được lưu trữ trên đám mây Vagrant không? Đám mây Vagrant có thực hiện kiểm toán trước khi chấp nhận các hộp công khai không?
Varun

Ai biết? Bạn cần hỏi Mitch Hashimoto.
eneset
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.