Sunday 5 June 2016

AWS vs DevOps

DevOps is not limited to the IT organizations operating in the traditional Data Centres but it is very aggressively being adopted by organisations running on cloud. When we talk about cloud, it is hard to pass by AWS (Amazon Web Services).

Even world biggest cloud providers like AWS are aligning their suite of services and product line according to the industry accepted DevOps practices!

Following table provides a quick insight into how AWS services/products are aligned to the DevOps practices:

DevOps Pactise AWS Services Comments
Architecture & Development standards Architecture

Whitepapers

Solutions
A great mix of Architectures, Whitepapers and Solutions based upon various different Application and Use types.
Code Management Codecommit Works with AWS IAM by default. Though it's obvious integration with other DevOps related services like AWS CodePipeline, CodeDeploy etc. could be a game-changer!
Build automation Codepipeline Integrates nicely with GitHub, Jenkins, AWS CodeDeploy, Lambda, IAM etc. to provide a nice CI/CD experience.
Package Management Way to go... But AWS CodePipeline can be used with AWS S3 service to store archives. Refer to our DevOps Tools - One Stop page for more info.
Testing automation Way to go... But AWS CodePipeline can be used create Custom Actions for testing automation. Refer to our DevOps Tools - One Stop page for more info.
Code coverage AWS CodeGuru Refer to our DevOps Tools - One Stop page for more info.
Infrastructure as a Code Cloudformation

Servicecatalog
Build entire AWS infrastructure via code/template
Platform as a Service AWS EC2
AWS EC2 Container Service (ECS)
Use AWS AMI to pre-package and create AWS EC2 Compute Instances. Whereas ECS is a Docker based clustering solution. Can use Packer to generate AMIs or Docker images.
Deployment Automation
Elasticbeanstalk Provide a good range of pre-built platform (Java, Ruby, Python, Docker, NodeJS, GO etc) with choice of pre-configured Auto Scaling Group and Load Balancer etc. Most easy to use and hence less choice for customization. Just bring your code.
Opsworks OpsWorks is Chef based currently and can be used for Deployment Automation. Just bring your own recipes or select from built-in platform, without the need to maintain your own Chef server. Allows more customization and control as compared to Beanstalk.
Codedeploy Use your existing automated scripts to simply deploy the code. Nicely integrates with AWS S3, GitHub and AWS CodePipeline. You have full control on the underlying platform choice and deployment. Has good lifecycle and deployment management.
Cloudformation Allows complete control over the underlying infrastructure and code installation with the help of built-in Metadata. Hence most complex and powerful option.
Configuration Management Opsworks AWS OpsWorks is Chef based currently and can be used for Deployment Automation as well as Configuration Management
Monitoring Cloudwatch

Cloudtrail
CloudWatch is for basic monitoring, alerting and logs management, whereas CloudTrail is for auditing
Security and Reporting AWS IAM

AWS Config

Cloudtrail
IAM is core Ideantity and Access management that integerates with almost every AWS service.

No comments:

Post a Comment