Я запускаю приложение на AWS Elastic Beanstalk, и похоже, что мне нужно создать новую среду, если я хочу использовать последнюю версию AMI.
Если бы я знал, какой был последний идентификатор AMI, я мог бы обновить его в конфигурации среды.
Есть ли место, где я мог бы найти ID последних AMI Elastic Beanstalk или, что еще лучше, можно ли автоматически заменять экземпляры новой версией при каждом выпуске новой версии?
amazon-web-services
elastic-beanstalk
Вениамин
источник
источник
Ответы:
Рекомендуемый и поддерживаемый способ обновить среду AWS Beanstalk документирована здесь и управляемые обновления платформы обсуждаются здесь , честно говоря , я бы придерживаться , что если вы хотите, чтобы все было легко (и это то, что Beanstalk это все о), вы будете теоретически Получайте только непрерывные обновления, и AWS будет управлять процессом, чтобы не было простоев.
Поэтому я просто хочу повторить, что обновления управляемой платформы, вероятно, то, что вам или кому-либо еще, пришедшим сюда из Google, понадобится, но если вы хотите узнать последнюю версию AWI, предоставленную AMI для вашей среды Beanstalk, это можно сделать довольно просто с помощью AWS CLI (спасибо в здравом уме именования от Amazon на их AMI).
Начиная с экземпляра из вашей среды, опишите экземпляр, чтобы получить текущий AMI (пропустите, если вы уже знаете текущий AMI).
Возьмите полученный AMI ID и опишите его.
Мы можем использовать выходные данные выше в качестве входных данных для нового, отсортированного,
describe-images
но на этот раз мы заменим временные метки*
подстановочными символами, например так:Из-за мощи лексической сортировки и ISO 8601 мы получаем последнюю версию AMI, которая в моем примере такова
ami-1be5de78
.Опять же, я бы не советовал вам пытаться перейти на этот AMI вручную, у Beanstalk есть все условия, чтобы сделать все это для вас!
источник
Похоже, даже если вы измените AMI, на правильное использование AMI ElasticBeanstalk. Кажется, это не работает должным образом. Он пропускает все файлы. Это не работает правильно.
Я думаю, что вы должны запустить новую среду Elastic Beanstalk с обновленным AMI. Заставьте все работать тогда поменяйте местами URL среды.
источник
Вы можете использовать функции управляемых обновлений, которые поставляются с eb, но для этого вам придется заплатить за расширенные отчеты о работоспособности. Или используйте команду 'eb platform show'; В рабочем приложении есть cron, который запускает CURRENT =
eb platform show your_env_name | sed -n '5p' | cut -d: -f2- | tr -d '[[:space:]]'
LATEST =eb platform show your_env_name | sed -n '6p' | cut -d: -f2- | tr -d '[[:space:]]'
- Затем сравните их, и, если они разные, вы можете использовать eb clone (по умолчанию это новая версия), а затем cname swap.источник
Перейдя на панель инструментов вашего приложения, найдите «Конфигурация» и нажмите «Изменить».
Вы должны увидеть список, где вы можете выбрать платформу. Последняя версия указана в этом списке. Выбор платформы
AWS EB использует специальные настройки для разных языков программирования. Вы можете найти список настроек в документации http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/concepts.platforms.html
Есть таблицы, показывающие, какую версию AMI использует каждая платформа.
Я не нашел способ автоматически запускать эти обновления. Я на самом деле предпочитаю просматривать изменения платформы и тестировать их перед их развертыванием.
источник
Выберите свой сервис в Elastic Beanstalk. Вы увидите обзор на панели инструментов. В правой части панели инструментов вы можете увидеть конфигурацию вашего AMI, выберите Изменить обновление или ухудшите свой AMI. На данный момент вы собираетесь заменить свой экземпляр. Так что делайте резервную копию или клонируйте.
источник
Я смог обновить свое текущее приложение, размещенное на Beanstalk, до последней версии Amazon Linux AMI, выполнив следующие шаги.
1- Войдите в консоль AWS и перейдите на портал Beanstalk.
2- Перейдите на страницу конфигурации вашего приложения и нажмите «Экземпляры».
3- Найдите идентификатор AMI, он должен быть таким, как AMI-xxxxxx.
4- Возьмите идентификатор AMI и вернитесь в консоль EC2 и нажмите AMI.
5- Измените представление на Public Images и найдите идентификатор AMI, полученный ранее из конфигурации Beanstalk.
6 - Запустите этот AMI как новый экземпляр.
7. После запуска войдите в экземпляр и настройте его в соответствии с требованиями вашего приложения.
8. Как только вы удовлетворили все на месте, как вы хотели бы, чтобы создать образ AMI этого нового экземпляра.
9- Возьмите новый идентификатор AMI экземпляра, созданный на шаге 8, и примените его к конфигурации приложения Beanstalk.
10. Он не удалит старый экземпляр и не создаст новый экземпляр с помощью пользовательского AMI, а также развернет последнее приложение на новых экземплярах.
источник