PuppetConf 2012

Continuous Integration and Deployment are powerful approaches for improving software development and release engineering, but they are easier to apply in some domains than others. It is pretty straightforward to release changes to HTML, CSS, JavaScript, and web business logic 37 times per day. Releases containing database schema updates are a little trickier, but less frequent. You have to manage your application's infrastructure, too, but it doesn't change that often, and that is what Puppet is for! The story is different when your product is the infrastructure running other people's applications. Releases involve reconfiguring of the servers or the daemons, possibly restarting them. You have to update them in a carefully choreographed way to maintain high availability, and you cannot schedule downtime for thousands of customers who really don't even want to know that a release is happening. You can't even upgrade all your servers "at once" because when there are 3000+ of them, there is no such thing as "at once", so running multiple versions simultaneously is standard procedure. In this talk, I'll describe some of the techniques Acquia Cloud uses to handle these issues and still release multiple times per day.

Rated: Everyone
Viewed 599 times
Tags: There are no tags for this video.