To call DevOps a revolution in 2018 would probably be a disservice. The revolution has already taken place and DevOps is firmly ensconced in the way that Information Technology runs today. However, we can talk a bit about the evolution of DevOps, and the drivers of that evolution are the major cloud vendors. Each one has a variety of tools and services that allow you to apply the concepts of DevOps in the cloud.Today we are going to take a look at some of what Amazon Web Services has to offer in that arena.
In addition to redefining the way that IT work gets done, and eliminating the traditional division of labor between operations (infrastructure and administration) and development, DevOps helps an organization automate manual tasks and manage complex environments at large scales.Although there are dozens of tools that can assist with this automation (Jenkins, Puppet, Chef, Salt, and Ansible, just to name a few), implementation in cloud environments used to be more ‘traditional’. You typically installed the software (community or enterprise versions) on an image and used it the same way you would if all of your physical or virtual infrastructures were on premises. Now, each of the major cloud vendors offers these tools (or their spin on them) within their feature set.
Continuous Integration and Delivery with AWS
Whether you need to build, test, and deploy your application source or just to securely store it, Amazon Web Services has a number of features that you can take advantage of. Some of the most common are:
This allows you to quickly build, test, and deploy application code using whatever process triggers you desire. Automation of code deployments and testing means that your environments remain consistent every time they are built.
This fully managed service will compile, run and test your application code and leave you with deployable packages. Once you set up the features you need, it will handle any provisioning, scaling, and management needed.
Simply, this will automatically deploy code to any instance (cloud or on-premises) that you desire. This increases the velocity that your organization can deliver additional functionality to your business and avoid the typical downtime associated with deployments.
If you want to focus on just AWS, CodeStar facilitates the development, build and deployment of applications on AWS services and instances. It will allow your organization to manage the full lifecycle in one place.
If your organization is a bit further down the DevOps and Continuous Integration path, AWS also offers Microservices to help you along, including:
Lambda allows you to run your code without deploying typical infrastructure at all. You simply upload your application code and everything else is handled based on the usage and scaling rules you indicate.
Amazon EC2 Container Service (ECS)
If you are at the point where you want to use or are already using containers, Amazon ECS will allow you to leverage your Docker investment in a highly scalable environment while reducing the complexity of managing large clusters of containerized applications (and will shortly be Kubernetes ready as well).
Platform as a Service
If you have a need for a hybrid implementation, where you have significant investment in tools and processes that are on premises, you can use AWS in the more traditional Platform as a Service (PaaS) model. Deploying and managing your web based applications to production has been simplified:
AWS Elastic Beanstalk
You can easily deploy and scale your applications (based on the rules you decide upon) on Elastic Beanstalk. This service supports applications written in Java, .NET, Node.js, Ruby, Go, Python, PHP and, of course, Docker, using standard web servers like Apache, IIS or Nginx.
DevOps is how IT gets done in 2018, period. The revolution is over, but that doesn’t mean that everything is settled. This post is intended to be the first of three discussions on how each of the major cloud vendors has embraced and helps to facilitate DevOps in their environment. Next week, we will talk about how Microsoft has implemented DevOps within Azure (and not just for Windows users).Leave us a comment below and share your experiences with DevOps on-premises or in the cloud!