Expanding and contracting
An alternative to the in-place upgrade strategy is the expand and contract strategy. This strategy has become popular of late thanks to the self-service nature of on-demand infrastructure, such as cloud computing or virtualization pools. The ability to create new servers on demand from a large pool of available resources means that every deployment of an application can happen on brand new systems. This strategy avoids a host of issues. These include a build up of cruft on long running systems, such as:
- The configuration files no longer managed by Ansible are left behind
- The run-away processes consume resources in the background
- Things manually changed by humans with shell access to the server
Starting afresh each time also ...