EC2 Оновіть існуючий AMI


18

Я використовую Elastic Load балансування для завантаження балансу моєї групи автоматичного масштабування , для цього у мене є приватний AMI, який тримає мій сервер додатків (Tomcat) і мій веб-додаток, розгорнутий до нього як війна ... Тепер все працює добре ... що якщо мені потрібно змінити конфігурацію Tomcat на моєму AMI . Чи не зажадає запуск мого AMI -> Вхід + Змінення конфігурації Tomcat -> Створення нового AMI -> Видалення старого AMI. Я не думаю, що створення нового AMI не є рішенням, оскільки вимагатиме оновлення моєї автоматичної шкали Групуйте, щоб додати мій новий AMI

Чи є спосіб, коли я можу оновити дані в існуючому AMI без створення нового? Я просто хочу мати той самий ідентифікатор AMI

Відповіді:


5

Ви можете оновити конфігурацію за допомогою сценарію даних про користувача, який запускається під час запуску вашого примірника.

Те, що ви вводите в сценарій, залежить від того, яким чином ви керуєте своєю конфігурацією на рівні файлової системи. Я особисто розміщую свої конфігураційні файли в сховище Mercurial і просто роблю це, pullщоб оновити його.


Я думаю, що ваша відповідь справедлива, але, на мій погляд, це хитра ... Чи не існує способу просто оновити мій образ AMI, підтримуючи той самий ідентифікатор AMI?
Хаді Салем

3
На жаль, я не думаю, що це можливо. Від документа Amazon: "Ідентифікатор AMI пов'язаний з фізичними бітами зображення. Щоб захистити користувачів від модифікованих зображень, нам потрібно перереєструвати AMI-екземпляри інстанцій Amazon EC2 після перекомпонування."
Девід Левеск

Змінити існуючий образ AMI неможливо. Ви повинні створити нову.
Метт Хоузер

Розгортання конфігурації IMO за допомогою даних користувача є більш елегантним. Люди схиляються в напрямку встановлення служб і при створенні екземплярів. Ви також можете вивчити використання шаблону CloudFormation.
Едвін

Я думаю, що я буду використовувати BeanStalk зі спеціальним AMI, це полегшить моє життя, не потрібно налаштовувати балансир навантаження з автоматичним масштабуванням, і у випадку, якщо мені потрібно змінити конфігурацію сервера, я створять власний сценарій .. Дякую всім
Хаді Салем

3

Неможливо оновити існуючий AMI та зберегти той самий ідентифікатор AMI. Вам потрібно буде створити новий спеціальний AMI і оновити конфігурацію запуску для групи автоматичного масштабування або змінити налаштування, щоб застосувати зміни до екземпляра після запуску екземпляра базового AMI, як пропонує @DavidLevesque.

Це загальна архітектура для завантаження програми, конфігурації та даних із, скажімо, S3 при запуску.


+1 за замітку про архітектуру
твіт

0

Це схоже на старий пост. Але якщо ви все ще перебуваєте в тому ж самому складному становищі, ви можете розглянути можливість використання інстанції Windows AMI з підтримкою магазину, створеного в комплекті. Він також схожий на AMI, але у вас є більший контроль над самим зображенням, оскільки ви практично створюєте саме зображення і зберігаєте його у відрі S3. Це дозволить вам оновлювати базовий образ вашого AMI раз у раз, коли вам потрібно, не створюючи нового AMI (принаймні, так я розумію).

https://docs.aws.amazon.com/AWSEC2/latest/WindowsGuide/Creating_InstanceStoreBacked_WinAMI.html?icmpid=docs_ec2_console


FYI ... "Єдині Windows AMI, які можуть бути підкріплені сховищем примірників, є файли для Windows Server 2003. Екземпляри, що підтримуються магазином, не мають доступного дискового простору, необхідного для пізніших версій Windows Server."
Rich C
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.