One architect's view on what's next in cloud architecture
A 2021 retrospective on cloud architecture, with a look ahead for 2022
January 10, 2022
Can you believe that the AWS public cloud has been around for fifteen years? Fortunately for cloud enthusiasts, there’s no sign of slowing down in the momentum of technological innovation and possibilities with the cloud. I belong in the cloud enthusiast category, as I’ve been a practitioner and advocate of cloud architecture in my enterprise architecture role for the past several years. I’ve seen organizations evolve from migrating to the cloud to performing cloud native development, and the journey isn’t over yet! As organizations continue to mature their usage of cloud, AWS keeps providing new advancements. In this article, I recap major cloud architecture themes from 2021 and how they may evolve in 2022.
Serverless - continued expansion, complimentary to containers
Ever since serverless roared onto the cloud scene in 2014, serverless adoption has been on the rise. Serverless reduces the complexity of managing infrastructure and integrations, allowing teams to focus on business logic and add new features quickly. Previously, this benefit to some degree was achieved via containerization. Serverless doesn’t mean that containers are going away; containers are very relevant as a packaging mechanism for serverless compute options. For instance, AWS Lambda supports containers as a packaging mechanism and AWS Fargate relies on them for its integration with AWS ECS and AWS EKS. The continued usage of containers is great since many corporations have already invested in container supply chains.
At the 2021 Re:Invent, AWS announced serverless previews for services such as Amazon MSK, Amazon Redshift and Amazon EMR. I expect that this trend will continue and additional services will provide a serverless offering. That is good news for cloud-based architectures that go beyond the typical web application or microservice to leverage a wider array of AWS offerings. Now they can attain a fully serverless architecture, too.
In addition, services such as AWS Step Functions announced even more native integrations with other AWS Services. That reduces the need to maintain custom solutions for event driven integration. With such seamless integration, I expect going forward, serverless event driven architectures will take root in even more areas such as machine learning.
DevOps - shifting left with a focus on infrastructure as code
To me, designing robust architectures for the cloud is synonymous with automation. DevOps emphasizes automation through infrastructure as code, continuous integration (CI) and continuous delivery (CD) to enable faster high quality, secure releases.
The importance of being able to release confidently and quickly cannot be understated. This is key to enabling agility. I expect that in 2022 and beyond we will see more advances in this area as we shift compliance left (e.g. hooks), simplify pipelines by making a distinction between CI and CD, and scale to handle greater degrees of application complexity.
Resiliency - bolstering data durability, chaos engineering and cell based architecture
A key cloud tenet is around scalability and availability. Additionally, AWS has recognized that data durability is an important part of the stability equation since the recovery of data in a failure event is key to reliability. The ability to test failures as part of application build and deployment is also essential to ensure that the application can, in fact, recover from failure.
In 2021, AWS continued to publish SLAs for their services, and expanded data durability capabilities such as AWS Backup (e.g. file system backups, RDS). They also dipped into chaos engineering with fault injection simulator on select services. Chaos engineering is a mechanism of resiliency testing, which is a key ingredient in pairing cloud and DevOps to increase resiliency. I expect there will be continued advances to support data durability and chaos engineering in 2022 and beyond.
In addition, I believe that cell-based architectures, as shared by AWS in 2018 re:invent, will be an essential part of future cloud architectures. Cell-based architectures are a natural progression of applying fault domain concepts to an application; rather than a fault domain being a zone or a region, a cell based architecture can be agnostic of both. I expect that AWS will continue to provide advances that allow for cell based architectures to be easier to adopt (e.g. Amazon Route53 Application Recovery Controller).
Optimization - enabling optimum workload performance and cost
As more and more organizations succeed in getting into the cloud, the question arises of ‘now what?’ One word: optimization.
AWS has trended in the direction of providing ever more mature insights enabling workload optimization, from CloudWatch Insights to cost management resources. These capabilities are essential to enabling both performance and cloud cost optimization. Speaking of cost, AWS has also delivered more capabilities that allow for flexible cost control; for example, tiered storage for services such as Elastic Search and AWS S3.
I expect that we will continue to see cost levers by service becoming more transparent and configurable to enable delivery teams to optimize their workloads. That being said, good application design is still paramount -- domain-driven architectures, microservices, CAP theorem, etc all need to be well understood and incorporated into effective workload design and implementation.
2022 will continue the cloud momentum observed in 2021
Serverless and DevOps helped enable key architecture characteristics such as resiliency. Optimization is moving to the forefront because it’s not beneficial enough to just be in the cloud; it’s all about being in the cloud and doing it well. Fifteen years in, it’s still an exciting time to be a cloud architect. 2021 brought about some great advances in the field, and I look forward to seeing even more advances in 2022.