Skip to content
This repository has been archived by the owner on Dec 31, 2024. It is now read-only.

Latest commit

 

History

History
43 lines (31 loc) · 1.11 KB

README.md

File metadata and controls

43 lines (31 loc) · 1.11 KB

Ansible ELB deployment

Ansible playbook to roll a deploy of a java application running on tomcat, on hosts behind AWS ELBs.

Introduction

This ansible playbook rolls updates to a set of application servers behind an Amazon load balancer (ELB).

The steps are:

  • Disable alerts on the monitoring system
  • Remove the node from the Elastic Load Balancer
  • Disable service supervisor (monit)
  • Roll the update
  • Reverse previous steps to re-enable services

Application deployment

The application deployment is done through a tomcat role, which takes the following steps:

  • Undeploy through Tomcat's scripted manager
  • Stop tomcat
  • Ensure the application cache is removed
  • Download the war file from an HTTP repository
  • Startup tomcat

TODO List

  • Before downloading the file double check md5 to verify if a deployment is necessary
  • Implement some sort of wait / app check, as when tomcat startups it ussually takes some time before the application is up and running
  • User and password to get the application war should be optional