AWS Sự khác biệt giữa ảnh chụp nhanh và AMI


107

Vì vậy, tôi đang gặp khó khăn khi tìm ra sự khác biệt cụ thể giữa hai điều này.

Theo tôi hiểu, snapshot chỉ đơn giản là một bản sao lưu của ổ đĩa, trong khi AMI là một bản sao lưu của toàn bộ hệ thống (hoặc ví dụ mà tôi nên nói), nhưng về mặt kỹ thuật không phải toàn bộ hệ thống nằm hoàn toàn trên ổ đĩa sao? và nếu đó là trường hợp thì không có sự khác biệt rõ ràng và tôi đang thiếu một cái gì đó?

Câu trả lời:


70

Có hai loại AMI (và các trường hợp tương ứng):

  1. instance-store (đôi khi được gọi là dựa trên S3). Những cách này ít phổ biến hơn và tôi không khuyên dùng chúng cho người mới bắt đầu. AMI cửa hàng cá thể là bản sao của khối lượng cửa hàng cá thể gốc cộng với một số siêu dữ liệu, tất cả được lưu trong nhóm S3 ở định dạng đặc biệt

  2. Khởi động EBS. Đây có lẽ là những gì bạn đang sử dụng. AMI khởi động EBS ảnh chụp nhanh EBS của ổ đĩa gốc EBS cộng với một số siêu dữ liệu như kiến ​​trúc, hạt nhân, tên AMI, mô tả, ánh xạ thiết bị khối, v.v.

Bạn có thể chụp nhanh một khối lượng khởi động EBS và biến nó thành một AMI khởi động EBS bằng cách đăng ký nó với siêu dữ liệu thích hợp. Phần khó nhất của việc này là chỉ định id AKI chính xác (nhân) để nó khởi động chính xác.


Cảm ơn eric, tôi đã sao lưu một hình ảnh AMI và tôi có tùy chọn để khởi chạy và đăng ký nó? Tôi bối rối như những gì khác biệt là ở đây ...
Melbourne2991

Tôi không biết ý bạn là "đã sao lưu hình ảnh AMI".
Eric Hammond

8
Khi bạn nhấp vào "tạo AMI" EC2 sẽ tạo một ảnh chụp nhanh EBS về khối lượng EBS của phiên bản đó và đăng ký nó dưới dạng AMI. Bạn có thể khởi chạy các phiên bản mới chỉ định AMI đó là điểm bắt đầu. Bạn cũng có thể tạo các tập mới của ảnh chụp nhanh EBS nếu bạn chỉ muốn xem các tệp trên đó mà không cần chạy phiên bản mới.
Eric Hammond

6
Ngoài ra, bạn có thể tự mình tạo một ảnh chụp nhanh EBS về khối lượng EBS, sau đó đăng ký ảnh chụp nhanh đó dưới dạng AMI. Đây là một cách khó hơn một chút để tạo AMI vì nó yêu cầu bạn biết các thuộc tính đăng ký AMI thích hợp để đặt. "Tạo AMI" thực hiện tất cả điều này cho bạn.
Eric Hammond

1
@ cosbor11 Bạn không thể xóa ảnh chụp nhanh cho AMI.
Eric Hammond

24

Sự khác biệt chính là giữa loại dịch vụ được đề cập. Ảnh chụp nhanh là một tập EBS nơi bạn có thể lưu trạng thái và khởi động lại với cùng một dữ liệu tại một thời điểm nhất định.

AMI cũng tương tự, nhưng đối với chính các trường hợp EC2. Bạn không thể chụp nhanh một đối tượng không được ebs hỗ trợ, nhưng bạn có thể tạo AMI (ảnh hệ thống) của một đối tượng.

Nói chung, tôi sử dụng ảnh chụp nhanh EBS làm giải pháp sao lưu cho khối lượng cơ sở dữ liệu và tôi sử dụng AMI để lưu cấu hình phiên bản


1
Điều gì sẽ xảy ra nếu tập của tôi chứa cơ sở dữ liệu cũng như cấu hình phiên bản của tôi? AMI lưu cái gì mà ảnh chụp nhanh EBS không lưu (và ngược lại)? Cảm ơn
Melbourne2991

1
AMI ngay lập tức có thể chuyển sang một phiên bản mới. một ảnh chụp nhanh EBS có thể được sao chép sang một ổ đĩa mới (đĩa ảo). Đĩa ảo đó có thể được sử dụng làm cơ sở cho một phiên bản mới, nhưng bản thân nó không phải là một phiên bản.
Dan Pritts

16

AMI có thể được tạo bằng cách sử dụng ảnh chụp nhanh. Ví dụ: sử dụng một "ảnh chụp nhanh", bạn có thể tạo nhiều AMI, chẳng hạn như một PV và một HVM AMI bằng cách sử dụng cùng một ảnh chụp nhanh.

Vì vậy, snapshot có dữ liệu hệ thống / hệ điều hành. AMI là (ảnh chụp nhanh + siêu dữ liệu máy / phần cứng).


1
nếu tôi có AMI, thì một phiên bản đã được tạo từ nó. AMI có bao gồm dữ liệu về trường hợp đó không? Ý tôi là, nếu phiên bản chứa tệp WAR tomcat, AMI mà phiên bản đó được tạo ra, cũng bao gồm?
Dejell

1
Nếu bạn tạo một AMI ngoài trường hợp có chứa tomcat (hoặc bất kỳ tệp nào), thì AMI mới được tạo sẽ chứa các tệp / dữ liệu đó. Bất kỳ phiên bản nào được tạo thêm từ AMI này sẽ có các tệp này. Tuy nhiên, AMI nguồn mà bạn đã tạo phiên bản sẽ không có chúng (giả sử bạn đã thêm các tệp vào phiên bản sau khi tạo phiên bản).
Anshu Prateek

15

Tôi cũng bối rối vì điều đó. Đây là cách hiểu đơn giản nhất:

  • EBS Snapshot rất thường đại diện cho một bản sao lưu của khối lượng EBS cụ thể, nó có thể là bất kỳ khối lượng nào (Khối lượng gốc, khối lượng dữ liệu, v.v.)

  • AMI(Amazon Machine Image) là một bản sao lưu của Toàn bộ phiên bản EC2. Ví dụ: với cấu hình thích hợp, có thể tạo AMI bao gồm nhiều khối lượng EBS.

Bây giờ, nghe có vẻ khó hiểu, nhưng cả hai đều được lưu trữ dưới dạng "Ảnh chụp nhanh EBS".

Chỉ cần nghĩ về cách đó:

  • EBS Snapshot chỉ là một bản sao lưu dữ liệu.
  • AMIlà một đại diện của trạng thái hệ thống tại thời điểm cụ thể. Bạn cũng có thể khởi động từ nó.

Vì vậy, nếu tôi đã tạo một ảnh chụp nhanh của ổ đĩa gốc, thì ảnh chụp nhanh đó có thể được sử dụng để khởi chạy một phiên bản không?
gaurav parashar

1
Câu trả lời ngắn gọn: Không. Không thể thực hiện trực tiếp chỉ bằng âm lượng vì "tùy chọn khởi động" khả dụng duy nhất cho EC2 là AMI. Tuy nhiên, bạn có thể tạo AMI từ ổ đĩa và khởi chạy một phiên bản từ AMI được tạo gần đây (giống như một tùy chọn gián tiếp).
skryvets

7

EBS Volume là đĩa cơ bản đằng sau EC2. Snapshotlà một bản sao lưu tại thời điểm cụ thể volumetrong khi AMI là bản sao lưu của toàn bộ phiên bản EC2 có thể có nhiều khối lượng đính kèm, giống hệt như máy ảo.

Với Packer , bạn có thể tạo ảnh máy tự động bao gồm AMI cho EC2, tệp VMDK / VMX cho VMware, xuất OVF cho VirtualBox, v.v.

EC2  <-- EBS Volume (Boot) + EBS Volume 
                        ^
                        |
                     Snapshot (only of specific volume)       
                        ^
                        |
                       AMI (Combined snapshots of all volumes, snapshot must have boot volume) 
                        ^
                        | 
                  Launch a new Instance (same installed softwares and configs, different specs) 

Ảnh chụp nhanh có thể được sử dụng để sao lưu ổ đĩa / ổ đĩa. Đây là hoạt động sao lưu gia tăng, có nghĩa là mỗi khi bạn chụp ảnh nhanh một tập, nó sẽ chỉ thêm các thay đổi mới được thêm / giới thiệu vào tập kể từ lần sao lưu cuối cùng của bạn (không phải toàn bộ sao lưu), giúp tiết kiệm thời gian, không gian sao lưu và cuối cùng là chi phí .

Ảnh chụp nhanh có thể được sử dụng trong:

  • Sao lưu ổ đĩa thường xuyên

  • Thay đổi loại khối lượng, ví dụ bạn có lưu lượng hoặc đọc và viết và cần phải tăng hoạt động IO để bạn thay đổi từ gp2đến io1với caoIOPs

AMI tùy chỉnh có thể được sử dụng trong:

  • Để khôi phục thảm họa trong trường hợp phiên bản EC2 đang chạy hiện tại bị hỏng và không thể chạy mà không có lý do.

  • Các AMI của công ty tiêu chuẩn đã cài đặt tất cả các phần mềm điều kiện tiên quyết giúp đơn giản hóa quá trình triển khai (ví dụ: được định cấu hình để kết nối với `Splunk, đã cài đặt một số phần mềm giám sát và quan sát, đã cài đặt docker hoặc được định cấu hình để kết nối Puppet hoặc Chef khi khởi động)

  • AMI có thể được sử dụng để triển khai các ứng dụng của bạn ở các khu vực khác nhau một cách dễ dàng.

  • Nâng cấp máy chủ của bạn lên các thông số kỹ thuật cao hơn hoặc khác với tất cả các phần mềm đã cài đặt và cấu hình của chúng

  • AMI có thể được chia sẻ công khai trên các tài khoản AWS.


Đoạn đầu tiên của bạn là định nghĩa rõ ràng nhất mà tôi đã đọc cho đến nay. Cảm ơn bạn!
Specialk1

5

Dưới đây là một số khác biệt giữa AMI và EBS Ảnh chụp nhanh:

1) Một AMI có thể truy cập được và chứa các liên kết đến thiết bị gốc và có thể chứa các liên kết đến ảnh chụp nhanh của các khối dữ liệu khác.

2) Hình ảnh dữ liệu chứa trong AMI không đại diện cho thời điểm xác định rõ, trừ khi phiên bản được khởi động lại, điều này thường không được chấp nhận đối với môi trường sản xuất. Ảnh chụp nhanh có thể được chụp theo cách nhất quán vì có thể kiểm soát thời điểm chính xác của chúng, vì vậy trước khi bắt đầu chụp nhanh, bạn có thể đảm bảo rằng mọi thứ đã "sẵn sàng để sao lưu".

3) Một AMI có thể được tạo từ các ảnh chụp nhanh hiện có của thiết bị gốc cho Linux nhưng không cho Windows.


2

Theo định nghĩa do AWS cung cấp,

AMI là một mẫu mà từ đó bạn có thể bắt đầu một phiên bản EC2. Ảnh chụp nhanh EBS là bản sao cấp khối của một ổ đĩa EBS. Ổ đĩa EBS có thể là ổ đĩa khởi động (tức là chứa hệ điều hành) hoặc ổ đĩa chỉ chứa dữ liệu (ví dụ: chứa các tệp cơ sở dữ liệu). Bạn sử dụng RegisterImage để tạo AMI (từ ảnh chụp nhanh).

Đây là hai khái niệm khác nhau, được áp dụng ở các cấp độ khác nhau (tập EBS so với mẫu EC2) Tuy nhiên, có một số phụ thuộc giữa hai khái niệm.

Đối với các phiên bản EC2 được EBS hỗ trợ (tức là các phiên bản EC2 khởi động từ một ổ đĩa EBS), AMI được triển khai dưới dạng Ảnh chụp nhanh EBS của một ổ đĩa khởi động + một vài dữ liệu meta (kiến trúc của máy - 32 so với 64 bit -, loại ảo hóa - HVM vs PV - vv ...)

Vì vậy, đối với các phiên bản EC2 được EBS hỗ trợ, AMI là một ảnh chụp nhanh EBS + một tệp XML. Bạn thậm chí có thể tạo AMI của riêng mình dựa trên bất kỳ ảnh chụp nhanh nào về khối lượng khởi động mà bạn sở hữu.


1

Ảnh chụp nhanh ít tốn kém hơn để sử dụng làm chiến lược sao lưu, bởi vì khi bạn có nhiều ảnh chụp nhanh, bạn chỉ trả tiền cho một bản sao lưu đầy đủ và phần còn lại về bản chất, chỉ khác và thường nhỏ hơn nhiều.


6
Điều này không đúng với AMI khởi động EBS vì chúng chính xác ảnh chụp nhanh EBS cộng với một ít siêu dữ liệu. Chi phí sẽ giống hệt nhau.
Eric Hammond,

1

Bạn có thể coi AMI như một mẫu chung cho một máy có hệ điều hành và các thành phần đã cài đặt đang được bảo toàn.

Ảnh chụp nhanh có thể bao gồm mọi thứ mà AMI thực hiện, nhưng cũng lưu dữ liệu đĩa của một ổ đĩa EBS.

Cái nào bạn quyết định sử dụng thường sẽ được quyết định bởi liệu các phiên bản của bạn có được EBS hỗ trợ hay không và nếu bạn muốn tạo lại chính xác một máy với tất cả dữ liệu còn nguyên vẹn hay chỉ muốn một mẫu máy chung.


Vì vậy, AMI không lưu khối lượng EBS?
Melbourne2991

1
Một AMI có thể được đặt để bao gồm một hoặc nhiều ổ đĩa EBS, nhưng các ổ đĩa đó sẽ trống khi khởi động, chúng sẽ không chứa dữ liệu mà máy nguồn ban đầu chứa.
CIGuy

Vì vậy, AMI thực sự chỉ là dữ liệu meta (không chắc liệu đó có phải là thuật ngữ phù hợp hay không)? Như hệ điều hành bạn đang sử dụng, kích thước của phiên bản, v.v.? Về mặt kỹ thuật, nó sẽ chỉ có kích thước vài kb tôi lấy nó?
Melbourne2991

1
AMI cũng lưu trữ bất kỳ chương trình nào bạn đã cài đặt trên máy, các tùy chọn cấu hình mức hệ điều hành, v.v ... vì vậy nó không thực sự chỉ là siêu dữ liệu, mà có, chúng thường nhỏ hơn nhiều so với ảnh chụp nhanh.
CIGuy

1
Câu trả lời này là sai. AMI bao gồm một hoặc nhiều ảnh chụp nhanh. Đó là, nó tham chiếu đến một hoặc nhiều ảnh chụp nhanh (không có sao chép dữ liệu) và cũng chứa một số siêu dữ liệu bổ sung. Đây là lý do tại sao bạn không thể xóa một ảnh chụp nhanh nếu nó hiện đang được AMI sử dụng. docs.aws.amazon.com/AWSEC2/latest/UserGuide/AMIs.html Xem thêm đóng góp của Eric Hammond trong chủ đề này.
Max Barraclough

0

Từ định nghĩa do AWS cung cấp, nó làm rõ sự khác biệt - Hình ảnh máy Amazon (AMI) là một mẫu chứa cấu hình phần mềm (ví dụ: hệ điều hành, máy chủ ứng dụng và các ứng dụng). Từ một AMI, bạn khởi chạy một phiên bản, là một bản sao của AMI đang chạy như một máy chủ ảo trên đám mây. Trong khi đó đối với Ảnh chụp nhanh Bạn có thể sao lưu dữ liệu trên các ổ đĩa EBS của mình vào Amazon S3 bằng cách chụp ảnh nhanh theo thời gian. Ảnh chụp nhanh là bản sao lưu gia tăng, có nghĩa là chỉ các khối trên thiết bị đã thay đổi sau khi ảnh chụp nhanh gần đây nhất của bạn được lưu. Khi bạn xóa một ảnh chụp nhanh, chỉ dữ liệu dành riêng cho ảnh chụp nhanh đó mới bị xóa.

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.