So, you’ve decided that you are going to adopt DevOps, a culture, a practice that will help you deliver better products, faster to customer, among other things. A set of activities that continuously improve all functions and involve all employees. According to this article at Gartner, although people are at the very core of the DevOps philosophy, they are only a portion of the wider equation. The DevOps philosophy therefore centers on people, process, technology and information. And, now that you do want to embrace DevOps, there might be dilemma about what tools to choose, how to manage these tools, their security, deployment on multiple environments, monitoring etc.
Well, look no further than AWS! Your trusted partner for all things DevOps. Read below to find out how AWS is one stop solution for all your DevOps requirements and how AWS can help you to implement your DevOps strategy.
DevOps is becoming everything – development, operations, security, testing, and deployment. It is more of a culture rather than a single department. Hence, a platform that consists of multiple tools with effective integrations is required. And, these tools shouldn’t be costly as you don’t want to get bankrupt by license fees.
Infrastructure as Code : A fundamental principle of DevOps is to treat infrastructure the same way developers treat code. It should be versioned, scripted, repeatable, reliable and consistent. AWS provides a DevOps-focused way of creating and maintaining infrastructure, similar to the way software developers write application code. AWS provides services such as CloudFormation that enable the creation, deployment and maintenance of infrastructure in a programmatic way.
Focus on People & Processes, Not on Tools Management : Another fundamental DevOps practice is to perform very frequent but small updates to your software. As an organization, you should focus on creating your software and not on managing & maintaining underlying infrastructure. AWS takes care of these tasks and let your people focus on what they do best, making great products, and getting them to your customers, faster and more often. AWS enables you to focus on people and processes for adopting DevOps. AWS has a range of services for all phases of DevOps starting from Planning to Operations including Continuous Integration, Continuous Delivery etc.
Automation : Automation is a key enabler for faster and more frequent deployments, while ensuring quality and service continuity. You would want to automate as much as your process as possible, gradually, specifically hand-offs between different teams and different tools. AWS enables seamless integration of its services with best and most used tools in industry such as Git, Jenkins, Docker etc.
Cost : With AWS’ pay-as-you-go model, you need not worry about costly license fees. You can setup billing alarms for resources you consume to enable your DevOps strategy. AWS enables you in applying “Fail Fast” principle, you can terminate your resources anytime. You don’t have to commit huge resources for an idea or an experiment and you don’t pay anything upfront.
To conclude: according to Steve Yegge (a former Amazon engineer) Jeff Bezos issued a mandate during the early development of the AWS platform, that stated, in Yegge’s words:
- All teams will henceforth expose their data and functionality through service interfaces.
- Teams must communicate with each other through these interfaces.
- There will be no other form of interprocess communication allowed: no direct linking, no direct reads of another team’s data store, no shared-memory model, no back-doors whatsoever. The only communication allowed is via service interface calls over the network.
- It doesn’t matter what technology they use. HTTP, Corba, Pubsub, custom protocols — doesn’t matter. Bezos doesn’t care.
- All service interfaces, without exception, must be designed from the ground up to be externalizable. That is to say, the team must plan and design to be able to expose the interface to developers in the outside world. No exceptions.
- Anyone who doesn’t do this will be fired.
For more information on all tools available at AWS for DevOps, please visit DevOps centre at AWS here:
I have also created a youtube playlist containing AWS DevOps videos from re-Invent 2016 and techtalks:
Let me know your thoughts about this article, how you implement your DevOps strategy and what platform do you use. I’ll be happy to answer questions you might have about DevOps or implementing DevOps with AWS.