White Paper: DevOps in the Cloud with AWS
Over the last decade, there has been a sea change in the way software is delivered going from being largely sold as a product to being increasingly provided as a service (SaaS). This shift in the software business model has also had a transformational effect on how software is produced changing silo-ed coding shops to integrated organizations where the development, testing, deployment and service management of software work as a unit. The proverbial glue that puts this together is DevOps and the way it does this is by automating the build-release-operate cycle and turning it into a repeatable and consistent process.
The major trend pushing infrastructure automation is the simultaneous rise of the Cloud. The world has moved from bespoke hardware to a pay-by-usage economic model where infrastructure is consumed like a utility (IaaS). Cloud services like AWS provide enormous flexibility through empowering automation, rapid provisioning, and scaling. DevOps with AWS makes it possible to automate your infrastructure at the same time as automating the deployment of the code.
One can think of how agile practices have transformed software development with rapid iterations and a continuous delivery model. In a similar way, DevOps has made software operations increasingly agile and removed friction from the deployment process. At the push of a button, code can be built, run through automated tests, deployed and ready to be used by customers.
However, creating automation is not an end in itself. It is a means through which organizations are able to maintain the kind of fluidity in their technology management that allows the continuous incorporation of feedback to improve the quality of their service. It makes it possible to provide rapid response to
♣ Bugs reported in the system
♣ Customer feature requests
♣ On-demand scaling
♣ Innovations in the application architecture
While the demand for newer features and capabilities of your software keeps increasing the customer expectation is always that there won’t be any letdown in service quality – in fact, it should improve as well. Meeting this demand requires an approach where all aspects of the production cycle are aligned, create rapid iterations and manage change together.
The incorporation of continuous feedback to automated build-release-operate cycles creates a virtuous circle of continuous value that is the greatest promise of DevOps.
For software development organisation in particular, this brings numerous benefits including
♣ Lower cost by removing manual work
♣ Reduced risk through consistent and repeatable processes
♣ Increased speed of delivery
♣ Increased productivity of team members
♣ Reduced outages and service disruptions
Whether you are just starting out on AWS or have an established environment, a robust DevOps regimen can significantly improve your business. Below, we provide a brief overview of the tools and practices used to perform DevOps tasks, particularly with AWS.