From AWS Lego Blocks to Well-Managed Applications
Well-managed applications start with well-architected deployments. In this edition of OpsTalk™ Blog – Jinesh Varia, a recognized AWS expert and MontyCloud advisor, discusses how DAY2™ Blueprints infuse visibility, tagging, controls and, routine management tasks to deployment templates. With DAY2™ customers can drive successful digital transformations by deploying well-managed applications from the start.
- Sabrinath Rao
Image Source: Shutterstock
DAY2™ Blueprints: From AWS Lego Blocks To Well-Managed Applications
When I joined AWS back in 2006, there were only a few services - Amazon S3, Amazon EC2, Amazon RDS, and a handful more. Building an infrastructure stack using these services was easy and simple then. In fact, S3 only had few features and EC2 only had 3 instances (S, M, L). Fast forward to 2020, AWS has 160+ different services. These are fantastic Lego blocks, which you can use to build any application of any size, for any industry and for any use case. You can put together these Lego blocks in any number of combinations creatively to build powerful, scalable applications that suit your business.
With great choice, comes great confusion
AWS offers the power of choice to any developer and any business to pick and choose the services, programming language, database, and application framework to build any application they want. However, with this breadth of services, comes great confusion. There are more than a dozen recommended ways to architect the same exact application in a secure compliant manner. For example, you can build and deploy a simple 3-tier e-commerce web application stack in plain old Amazon EC2. Based on the skills within your organization and your requirements you can also build and deploy the same application using AWS Elastic Beanstalk, Amazon Lightsail, Serverless on AWS Lambda, LAMP stack on Amazon EC2, Kubernetes-based Amazon EKS cluster, Docker-based Amazon ECS cluster, ECS managed by AWS Fargate, EKS managed by Fargate, <add 10+ more>. You get the point!
The problem multiplies when technical requirements change with business needs. For example, you may want to scale up/down due to unexpected events such as COVID-19. You now have to maintain this application over time, keep it elastic, secure, compliant, and frustration-free. When you start factoring in business constraints such as departmental boundaries and developer skills or regulatory constraints such as PCI/HIPAA, it becomes truly unmanageable.
To add to frustrations, when you seek a recommendation, you often get the typical annoying seasoned consultants answer - “Well, It depends.” Without clear instructions, the citizen developer feels like an unattended kid in a toy store with these amazing Lego Blocks.
There is a difference between a deployment template and a well-managed application blueprint
AWS provides fantastic pre-built Lego blocks and Infrastructure as Code services such as AWS CloudFormation (CFN). Once you have figured out what AWS services you want to build your application on, CFN (and Terraform or other Infrastructure-as-Code) templates help you tie together the service stack such as Amazon EC2, Amazon S3, and Amazon RDS and makes deployment easy. However, well-architected design principles and guidance call for infusing these deployment templates with autoscaling, high-availability, and access control best practices, in addition to cost and compliance guardrails. Furthermore, these applications need to be monitored and maintained so they stay “well-architected” and not drift away from the median.
A well-managed application starts at the time of deployment, where you pick the right set of metrics, configure alerts along with appropriate remediation workflows, and finally generate reports automatically.
Creating deployment templates is relatively easy. Infusing them with experience and well-architected best practices is hard, and deploying and maintaining a well-managed application is brutal. This is what it takes to get from a basic Infrastructure as Code template that you pick from a public GIT repo to a Well-Management application blueprint.
Enter DAY2™ Blueprints
DAY2™ Blueprints puts it all together for you. Each DAY2™ Blueprint, once provisioned comes with tagging for instant visibility of your application’s resources, guardrail policies so you can avoid any accidental outages due to human error and self-healing principles that you can automate using DAY2™. Today with MontyCloud DAY2™ you can:
1. Deploy Well Managed Applications: Today, MontyCloud features a catalog of 20+ Well-Architected CloudFormation templates. You can confidently self-service the deployment of secure, compliant applications, reduce errors, time, and cost. DAY2 CloudOps is integrated at the time of provisioning and delivered as-a-Service from the DAY2™ Platform. You can deploy well-managed applications in just a few clicks.
2. Contextualize Inventory: DAY2™ integrates with cloud-native management APIs to discover and inventory assets across accounts and regions, organize them by applications, departments, and users. DAY2™ now automates compliance, security, and cost through policies, guardrails, and reports in the business context.
3. Automate Cloud Operations: DAY2™ cloud-native management provides real-time event monitoring, remote access, patch and policy management. DAY2™ automates routine management tasks such as tagging, grouping, role-based access, and more with no-code CloudOps.
In the first release of DAY2™ Blueprints, you can see Well-Architected AWS CloudFormation Templates for over 20 deployment scenarios. These avoid the need to manually deploy each of the required application constituents, plumbing across different networking components, and navigating complex configuration.
DAY2™ Blueprints are the right set of Lego Blocks that you can manage operational tasks using the DAY2™ Platform across departments, teams, regions, and accounts.
Lego Blocks that come with an instructional manual as well as a friend to play with are more fun.
We can’t wait for you to check them out and provide us feedback. Give it a spin. Tell us what you would like to see next.
About The Author
Jinesh joined AWS right when Amazon announced its first service Amazon S3 (in early 2006) as a Lead Technology Evangelist. Since then, for 10 years, Jinesh has helped hundreds of enterprises and businesses (large and small) take advantage of Cloud Computing services and helped build a technology platform at AWS and brands that people love. Jinesh has presented at more than 500+ conferences (including AWS re:Invent), has been a keynote speaker at over 20+ industry events including tradeshows and educational events, has led hundreds of executive briefings, and has published numerous cloud architecture whitepapers, blogs (on AWS Official Blog) and articles in journals, and magazines (including the first-ever AWS Cloud Architecture whitepaper). Jinesh's passion lies in anything that revolves around IoT, Serverless Cloud Architectures, Web Services, and anything that revolves around it. Jinesh is a technology advisor to MontyCloud and works closely with MontyCloud product and engineering teams to shape the next generation of AI-driven CloudOps.