Как безопасно обновить экземпляр Amazon EC2 с t1.micro до большого? [закрыто]

348

У меня есть микро-экземпляр Amazon EC2 (t1.micro). Я хочу обновить этот экземпляр до большого. Это наша производственная среда, так каков наилучший и безрисковый способ сделать это?

Есть ли пошаговое руководство для этого?

Gandil
источник
С корневым устройством EBS или с хранилищем экземпляров?
stivlo
Я думаю, что ebs root устройство. Я вижу EBS в пункте меню Root Device на консоли aws.
гандил
2
Кто-нибудь из вас задумывался над тем, что t1.micro, m1.small и т. Д. Могут быть 32-битной архитектурой, а большой экземпляр - 64-битной дугой? Не вызовет ли это никаких проблем? На данный момент, я думаю, нам придется делать все снова (создать новый большой экземпляр и снова установить все приложение)? Разве это не тот случай, когда происходит изменение в архитектуре?
MD
1
Это просто укусило меня в а **. В прошлый раз я выберу 32 бит для чего угодно. Теперь у нас есть сервер, которому нужно больше памяти, чем 4 ГБ, и 32-битная архитектура не может справиться с этим. Если на панели управления Amazon в EC2 нет возможности запустить крупный шрифт, он становится средним.
Том Грюнер
3
Почему вопрос помечен как не по теме ? Это действительно полезный вопрос с приемлемыми ответами.
Усама Амжад

Ответы:

302

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

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

Потерянная душа
источник
1
затем удалить маленький экземпляр раньше?
гандил
1
IP-адрес нового экземпляра будет другим. Я прав? Таким образом, мы должны изменить запись DNS?
гандил
12
Если вы используете эластичный IP-адрес как следует, назначьте эластичный IP-адрес новому серверу. Новый сервер будет иметь тот же IP-адрес. Эта процедура будет полезна также в случае сбоя вашего сервера и запуска нового.
stivlo
1
Не очень надежный метод, состояние сервера может измениться, если он находится под нагрузкой (что весьма вероятно, учитывая необходимость его масштабирования), и новый, более крупный сервер будет на несколько минут / часов старше, чем фактический работающий сервер.
AbiusX
2
Если моментальный снимок относится к корневому тому, Amazon рекомендует остановить экземпляр перед созданием
Taterhead
517

Использование Консоли управления AWS:

  • Щелкните правой кнопкой мыши на экземпляре
    • Жизненный цикл экземпляра> Стоп
    • Подождите...
    • Управление экземплярами> Изменить тип экземпляра
Марсель де Кастильо
источник
4
это более простой способ ..
box86rowh
22
Я согласен, что это проще, но преимущество принятого метода заключается в том, что вы могли бы настроить новый сервер и запустить его параллельно с существующим сервером, прежде чем переключать эластичный IP-адрес и практически не было простоев.
Райан Монтгомери
17
Знайте, что когда Марсель скажет: «Подождите ...», вы будете ждать долгое время. Этот метод ужасен, если время простоя является проблемой. Если время простоя не имеет значения, это легко, но это не предполагает небольшого количества простоев. Планируйте около получаса.
Джейк
8
менее 5 минут для меня ... mw.small to m1.medium, работающий с SQL 2012 Web
azcoastal
4
А размер диска вопрос?
Адриан Салазар
49

Использование Консоли управления AWS

  • Перейдите в раздел «Тома» и создайте снимок тома вашего экземпляра.
  • Перейдите в «Снимки» и выберите «Создать изображение из снимка».
  • Перейдите в «AMIs», выберите «Launch Instance», выберите «Instance Type» и т. Д.
Styelz
источник
Это позволяет изменить архитектуру и тип экземпляра.
Styelz
Спасибо за то, что вы на самом деле изложили здесь шаги и разъяснили, что это лучший метод, если только вы не находитесь на ранних стадиях, когда простои не имеют значения.
Джейк
2
Я попробовал это, но в моем случае новый экземпляр не запускался с AMI из более старого экземпляра, имел некоторые проблемы с паникой ядра.
Зеешан
18

Используйте консоль AWS EC2, а не ElasticFox.

Первый путь:

  • Создать новый AMI экземпляра
  • Запустите это

Альтернативный путь:

  • Сделайте снимок диска
  • Запустите большой экземпляр EBS с тем же типом AMI (обратите внимание, что на этом этапе диск будет содержать данные, которые присутствовали при создании этого AMI, а не ваши последние изменения)
  • После полной загрузки остановите новый экземпляр
  • Отключите корневой том от остановленного экземпляра
  • Создайте виртуальный диск из созданного ранее снимка в той же зоне доступности нового экземпляра.
  • Подключите корневой том к / dev / sda1
  • Запустите новый экземпляр снова
stivlo
источник
9

Создайте AMI -> Загрузите AMI на большом экземпляре.

Дополнительная информация http://docs.amazonwebservices.com/AmazonEC2/gsg/2006-06-26/creating-an-image.html

Вы можете сделать это все из консоли администратора тоже на aws.amazon.com

Киран
источник
Я хочу сделать это на консоли AWS. Есть ли документ с изображением?
гандил
Щелкните правой кнопкой мыши на вашем экземпляре и нажмите «создать AMI» - затем перейдите в AMI на дисплее консоли (слева) и нажмите «запустить AMI» на том, который вы хотите запустить
kieran