it-roy-ru.com

AWS Разница между снимком и AMI

Так что мне трудно понять, в чем конкретно заключается разница между этими двумя.

Насколько я понимаю, моментальный снимок - это просто резервная копия диска, а AMI - это резервная копия всей системы (или, я бы сказал, экземпляр), но разве вся система технически не полностью расположена на диске? и если это так, то нет четкой разницы, и я что-то упустил?

78
Melbourne2991

Существует два типа AMI (и соответствующие экземпляры):

  1. хранилище экземпляров (иногда называемое S3-based). Они менее распространены, и я не рекомендую их для начинающих. AMI хранилища экземпляров - это копия корневого тома хранилища экземпляров плюс некоторые метаданные, все они сохранены в корзине S3 в специальном формате.

  2. EBS boot. Это, вероятно, то, что вы используете. AMI загрузки EBS это снимок EBS корневого тома EBS, а также некоторые метаданные, такие как архитектура, ядро, имя AMI, описание, сопоставления блочных устройств и многое другое.

Вы можете сделать снимок загрузочного тома EBS и превратить его в загрузочный AMI EBS, зарегистрировав его с соответствующими метаданными. Самая хитрая часть этого - указать правильный идентификатор AKI (ядро), чтобы он загружался правильно.

52
Eric Hammond

Основное различие заключается в типе упомянутой услуги. Снимок - это том EBS, на котором вы можете сохранить состояние и перезагрузиться с теми же данными в определенный момент времени.

AMI похож, но для самих экземпляров EC2. Вы не можете сделать снимок экземпляра без поддержки ebs, но вы можете создать AMI (образ системы) одного экземпляра.

Обычно я использую снимки EBS в качестве решений для резервного копирования тома базы данных и использую AMI для сохранения конфигурации экземпляра.

17
BrianJakovich

AMI может быть создан с использованием снимка. Например, используя один «снимок», вы можете создать несколько AMI, скажем, один PV и один HVM AMI, используя один и тот же снимок.

Итак, снимок содержит данные системы/ОС. AMI есть (снимок + метаданные машины/оборудования).

13
Anshu Prateek

Я был смущен этим также. Вот самый простой способ понять это:

  • EBS Snapshot очень часто представляет собой резервную копию определенного тома EBS, это может быть любой том (корневой том, том данных и т. д.)

  • AMI (образ машины Amazon) является резервной копией всего экземпляра EC2. Например, при правильной конфигурации можно создать AMI, который включает в себя несколько томов EBS.

Это может показаться странным, но они оба хранятся в виде «снимков EBS». 

Просто подумай об этом: 

  • EBS Snapshot - это просто резервная копия данных.
  • AMI представляет состояние системы в определенное время. Вы также можете загрузить с него.
6
skryvets

Вот еще несколько различий между снимками AMI и EBS:

1) AMI запускается и содержит ссылки на корневое устройство и может содержать ссылки на снимки других томов данных.

2) Изображение данных, содержащееся в AMI, не представляет четко определенный момент времени, если только экземпляр не перезагружен, что обычно неприемлемо для производственной среды. Снимки можно делать согласованным образом, так как их точный момент времени можно контролировать, поэтому перед запуском снимка можно убедиться, что все «готово к резервному копированию».

3) AMI может быть создан из существующих снимков корневого устройства для Linux, но не для Windows.

5
OK1

Моментальные снимки дешевле использовать в качестве стратегии резервного копирования, поскольку при наличии нескольких моментальных снимков вы платите только за одну полную резервную копию, а остальные, по сути, просто различаются и обычно намного меньше.

1
Cary Gordon

Вы можете думать о AMI как об общем шаблоне для машины с операционной системой и сохранением установленных компонентов. 

Снимок может включать в себя все, что делает AMI, но также сохраняет данные диска тома EBS.

Какую из них вы решите использовать, обычно будет зависеть от того, поддерживаются ли ваши экземпляры EBS, и если вы хотите точно воссоздать машину со всеми нетронутыми данными или просто хотите использовать общий шаблон машины.

1
CIGuy

Из определения, предоставленного AWS, это проясняет разницу - образ машины Amazon (AMI) - это шаблон, который содержит конфигурацию программного обеспечения (например, операционную систему, сервер приложений и приложения). Из AMI вы запускаете экземпляр, который является копией AMI, работающей как виртуальный сервер в облаке. Принимая во внимание моментальные снимки Вы можете сделать резервную копию данных на томах EBS в Amazon S3, сделав моментальные снимки на определенный момент времени. Снимки представляют собой инкрементные резервные копии, что означает, что сохраняются только те блоки на устройстве, которые изменились после последнего снимка. При удалении снимка удаляются только данные, исключающие этот снимок. 

0
Sidharth

EBS Volume является основным диском за EC2. Snapshot - это моментальное резервное копирование определенной volume, а AMI - это резервная копия всего экземпляра EC2, который может иметь несколько подключенных томов, точно так же, как виртуальные машины.

С помощью Packer вы можете создавать автоматизированные образы машин, включая AMI для EC2, файлы VMDK/VMX для VMware, экспорт OVF для VirtualBox и т.д.

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) 

Снимки можно использовать для резервного копирования дисков/томов. Это инкрементная операция резервного копирования, которая означает, что каждый раз, когда вы делаете снимок тома, он добавляет только новые изменения, добавленные/введенные в том со времени последней резервной копии (не всю резервную копию), что экономит время, пространство и, в конечном итоге, стоимость резервного копирования. ,.

Снимки можно использовать в:

  • Регулярно делайте резервные копии дисков

  • Измените тип тома, например, у вас есть трафик или операции чтения и записи, и вам нужно увеличить количество операций IO, чтобы перейти с gp2 на io1 с более высокой IOPs

Пользовательские AMI можно использовать в:

  • Для аварийного восстановления в случае, если текущий работающий экземпляр EC2 поврежден и не может работать без причины.

  • Стандартные AMI компании, в которых установлены все необходимые программные продукты, упрощающие процесс развертывания (например, настроенные для подключения к Splunk, с установленными программами для мониторинга и наблюдения, с установленным докером или для подключения Puppet или Chef при запуске)

  • AMI можно легко использовать для развертывания приложений в разных регионах.

  • Обновите свой сервер до более высоких или других спецификаций со всеми установленными программами и их конфигурациями.

  • AMI могут быть доступны всем пользователям AWS.

0
msoliman

Согласно определению, предоставленному AWS,

AMI - это шаблон, из которого вы можете запустить экземпляр EC2. Снимок EBS - это копия тома EBS на уровне блоков. Том EBS может быть загрузочным томом (т.е. содержащим операционную систему) или томом только для данных (например, содержащим файлы базы данных). Вы используете RegisterImage для создания AMI (из снимка).

Это две разные концепции, применяемые на разных уровнях (тома EBS по сравнению с шаблонами EC2). Однако между этими двумя концепциями есть некоторые зависимости.

Для поддерживаемых EBS экземпляров EC2 (т. Е. Экземпляров EC2, которые загружаются с тома EBS), AMI реализован как снимок EBS загрузочного тома + пара метаданных (архитектура машины - 32 против 64 бит - тип виртуализации - HVM против PV - и т.д ...)

Таким образом, для поддерживаемых EBS экземпляров EC2 AMI - это снимок EBS + файл XML. Вы даже можете создать свой собственный AMI на основе любого снимка загрузочного тома, который у вас есть.

0
Ashish Khandelwal