Когда я хочу запустить экземпляр Ubuntu на EC2, как мне найти подходящий? Существуют тысячи общедоступных изображений с именем Ubuntu. Я заинтересован только в запуске официальных образов Ubuntu. Как мне узнать, какой AMI является правильным?
cloud
amazon-ec2
smoser
источник
источник
Ответы:
Успех Ubuntu в качестве платформы и приверженность Ubuntu обновлению AMI означает, что в Amazon EC2 буквально тысячи изображений с именем «ubuntu». Это в сочетании с отсутствием Ubuntu в меню «Быстрый старт» делает выбор правильного AMI нетривиальной задачей.
Некоторая общая информация об Ubuntu
Возможно, вы уже знаете об этих вещах, но я хочу указать на них тем, кто только начинает работать с Ubuntu или EC2.
Самый простой: найти AMI из вашего веб-браузера
Вы можете выбрать свой интерфейс для выбора изображений. Перейти к либо:
http://cloud.ubuntu.com/ami
Внизу этой страницы вы можете выбрать регион, релиз, архив или root-store. Здесь показаны только самые последние выпуски. Сделав свой выбор, вы можете скопировать и вставить номер ami или просто щелкнуть по нему, чтобы перейти прямо на страницу запуска консоли EC2 для этого AMI.
или
Поиск через консоль Amazon EC2
Консоль EC2 - это графический способ сортировки AMI и выбора одного из них для запуска. Чтобы запустить официальный образ Ubuntu здесь, выполните следующие действия.
Ограничьте результаты Ubuntu Stable Release изображениями, набрав ubuntu-images /
Вы должны расширить поле «Имя AMI» как можно шире (возможно, уменьшите остальные).
Ограничьте результаты определенным выпуском, добавив «. *».
Например: ubuntu-images /.* 10.04
Ограничьте результаты данной аркой, добавив '. * I386' или '. * Amd64'
Примечание : если вы хотите запустить m1.small или c1.medium, вам нужен 'i386'. Если вы хотите запустить t1.micro, вам нужно выбрать образ 'ebs'.
Сортировать результаты по имени AMI и сделать выбор
Сортируя по имени AMI, вы можете легче увидеть новейший AMI для данного набора. Каждый AMI заканчивается номером в формате ГГГГММДД (год, месяц, день). Вы хотите самый последний.
Убедитесь, что владельцем является 099720109477!
Любой пользователь может зарегистрировать AMI под любым именем. Ничто не мешает злоумышленнику зарегистрировать AMI, который соответствует поисковому запросу выше. Итак, чтобы быть в безопасности, вам нужно убедиться, что владельцем ami является « 099720109477 ».
Заметки
HTTPS-доступ : из перечисленных выше вариантов прямо сейчас https://cloud-images.ubuntu.com/server/releases/ является единственным, который предоставляет данные через https. Это может быть важно для вас, если вы обеспокоены потенциальными атаками «Человек посередине» при поиске идентификатора AMI. Я попросил Ахмеда [kim0 in irc] поддержать https доступ к https://cloud.ubuntu.com/ami .
Диалоговое окно «Запуск экземпляра» веб-консоли : в диалоговом окне «Запуск экземпляра» я не видел способа увидеть идентификатор владельца. Потому что, если это так, я предлагаю не использовать этот диалог, чтобы найти «AMI сообщества». Просто нет способа узнать, кто является владельцем изображения из консоли. Для продвинутых пользователей я скоро напишу в блоге о программном поиске AMI [Подсказка].
Источник
источник
hvm-instance
иhvm-ssd
? Боюсь, «экземпляр» означает «паравиртуальный», но я не уверен и не могу найти информацию об этом. Также может быть полезно отметить, чтоhttps://cloud-images.ubuntu.com/locator/
предлагают фильтры ... внизу страницыНовая и улучшенная версия.
По сути, получает необработанные данные, используемые для страницы поиска ami в Ubuntu, и использует jq для анализа строки, которую я хочу, а затем grep для извлечения значения. Гораздо быстрее, чем старая версия.
-- оригинальная версия
Вот еще один пример. Я только что написал это, чтобы получить последний верный идентификатор AMI. Он использует инструмент aws cli для запроса API, используя тот факт, что имена сортируются по дате, чтобы получить самую последнюю.
Работает в 2-х частях. Первая часть получает все AMI для Ubuntu Trusty, которые соответствуют различным критериям (ebs, x86_64 и шаблон имени). Он вытаскивает Имя и сортирует по нему. Имена отформатированы так, чтобы сортировать их по дате, чтобы последнее было самым новым. Это имя затем присваивается переменной name.
Вторая часть использует это имя для запроса идентификатора AMI для AMI с этим именем. Он анализирует только идентификатор и присваивает его 'ami_id'.
источник
aws --region us-west-2 ec2 describe-images --owners 099720109477 --filters Name=root-device-type,Values=ebs Name=architecture,Values=x86_64 Name=name,Values='*hvm-ssd/ubuntu-trusty-14.04*' --query 'sort_by(Images, &Name)[-1].ImageId'
используя ruby aws-sdk, вы можете программно обнаружить последнюю версию Ubuntu AMI, подобную этой
источник
Вы можете использовать https://cloud-images.ubuntu.com/locator/ec2/, которые обеспечивают всестороннее сравнение на основе версии, даты выпуска и т. Д.
Ищите версию, регион, который вы хотите, и сортируйте по дате выпуска, чтобы получить последнюю версию.
источник
На облачном портале Ubuntu представлен полный список доступных официальных AMI . Дополнительные сведения об официальных выпусках Canonical AMI EC2 от Canonical вы найдете в справке Ubuntu: Руководство по EC2 и необработанный каталог всех AMI, выпущенных Canonical в Ubuntu EC2 Images
источник
Я подумал, что было бы полезно продемонстрировать, как это сделать, используя Ansible, с помощью модуля ec2_ami_find .
На момент написания (2017-06-07) в регионе ap-southeast-2 AWS предложит следующие образы Ubuntu LTS, если вы вручную запустите экземпляр EC2 из консоли:
Это соответствует их рекомендациям по использованию виртуализации HVM и томов SSD с поддержкой EBS.
Чтобы получить те же AMI, которые рекомендует AWS, вы можете использовать следующие задачи:
Что дает следующий вывод:
Если вы сравните идентификаторы AMI, возвращенные в playbook, вы увидите, что AWS рекомендует не последний доступный образ, а второй или третий последний. Я не знаю, какие критерии / эвристики они используют здесь.
источник