
APOLLOONE SOFTWARE UPDATE
An automated deployment system needs to carefully sequence a software update across a fleet while it is actively receiving traffic. The applications cannot afford any downtime, planned or otherwise. Amazon web applications and web services run across large fleets of hosts spanning multiple data centers. The Amazon production environment, however, is more complex than that. You can SSH into a machine, run a script, get the result, and you’re done. Many teams started to fully automate their deployments to fix this, but that was not as simple as it first appeared.ĭeploying software to a single host is easy. Manual deployment steps slowed down releases and introduced bugs caused by human error. With this clear focus and control, the teams were able to quickly produce new features, but their deployment process soon became a bottleneck. Each team took on full ownership of the development and operation of a single service, and they worked directly with their customers to improve it.

When making the move to a service-oriented architecture, Amazon refactored its software into small independent services and restructured its organization into small autonomous teams.

Amazon first faced this challenge many years ago.

Without efficient, reliable, and repeatable software updates, engineers need to redirect their focus from developing new features to managing and debugging their deployments. All Things Distributed Now Go Build! Articles Story of Apollo - Amazon’s Deployment EngineĪutomated deployments are the backbone of a strong DevOps environment.
