Как развернуть Eclipse Java Web Dynamic Project на Amazon EC2?

Я пытаюсь создать веб-проект, способный общаться с Amazon RDS. Я знаю, как сделать проект localhost подключаться к RDS с помощью JDBC.

Однако проблема в том, что я никогда не пытался развернуть мой проект (так, например, кто-то может набрать somePage.com и перейти на мою веб-страницу).

У меня есть экземпляр Amazon EC2, и я уже написал простую страницу jsp hello world. Я могу скомпилировать его и запустить Eclipse Web Dynamic Project с помощью установленного Apache Tomcat Server, а затем набрав localhost:8080/somePage, тогда я увижу, что мой мир приветствует.

Однако, как мне развернуть мой проект на этом экземпляре EC2? Я использую версию Windows Server 2012.

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

Может ли кто-нибудь указать мне правильное направление?

Ответ 1

Выполните следующие шаги:

  • Настройка Apache Tomcat на вашем экземпляре Amazon EC2.
    • Обычно все, что вам нужно сделать, это загрузить текущую версию, разархивировать его и запустить, запустив apache-tomcat-folder\bin\startup.bat. (Вы также можете загрузить установщик и настроить его как службу Windows. Для более подробной информации смотрите эту ссылку).
    • Перед продолжением убедитесь, что вы проверили его (откройте его адрес в браузере, что-то вроде http://yourinstaceaddress.com:8080/).
  • Экспорт веб-приложения .war file
    • В Eclipse щелкните правой кнопкой мыши веб-проект и выберите "Экспорт". Затем выберите файл WAR в окне "Экспорт" и затем нажмите "Далее". Выберите проект, имя файла и папку .war для экспорта. Более подробное объяснение можно найти здесь и здесь (с фотографиями).
  • Разверните файл .war на сервере Tomcat
    • Самый простой способ сделать это - разместить файл .war (скажем myapp.war) в папке apache-tomcat-folder\webapps\.
    • Существуют и другие способы, например, через Tomcat Manager. Но они могут быть сложными, и, как новый пользователь, вы должны избегать их. (Не волнуйтесь: простой способ подходит для производственного развертывания).
  • Проверьте свое веб-приложение.
    • Посетите URL: скажите, что ваше имя .war было myapp.war. Вы должны посетить http://yourinstaceaddress.com:8080/myapp

Что это. Если вы когда-либо редактируете приложение, повторите шаги 2-4 (но удалите папку webapps\myapp\, созданную до выполнения шага 3).

Ответ 2

Boxfuse делает именно то, что вы хотите.

Для веб-приложения Java вам буквально нужно выполнить только:

boxfuse create my-tomcat-app -apptype=load-balanced
boxfuse scale my-tomcat-app -capacity=1-16:t2-micro:cpu25-75
boxfuse run my-tomcat-app-1.0.war -env=prod

Это будет

  • Настройте приложение для использования ELB
  • Установите для автомасштаба между 1 и 16 экземплярами t2.micro на основе использования ЦП (масштаб в 25% и ниже, масштаб 75% и выше).
  • Создайте AMI, поддерживающий Tomcat, и ваше приложение готово к загрузке.
  • Создать ELB
  • Создать группу безопасности с правильными портами
  • Создать группу автомасштабирования
  • Запустите свой экземпляр

Любое последующее обновление будет выполняться как развертывание с синим/зеленым нулевым временем простоя.

Для вашего домена вы можете просто сопоставить свою запись DNS той же самой страницы .com с CNAME ELB.

Дополнительная информация: https://boxfuse.com/blog/auto-scaling