From Monolith to Serverless – The Evolving Cloudscape of Compute

Containers can help fragment monoliths into logical, easier to use workloads. The AWS Summit New York was held on July 17 and Cloud Academy sponsored my trip to the event. As someone who covers enterprise cloud technologies and services, the recent Amazon Web Services event was an insightful deep dive into the services and solution areas under the AWS umbrella. Among the many announcements, sessions, and trends discussed at the Summit, one topic reigned supreme: Serverless.

Monolith to Serverless, the Evolving Cloudscape of Compute

From Monolith to Serverless: Slaying the Monolith

Monolithic architectures are notoriously difficult to scale. Every time you want to add new features or technologies, the application’s entire code base will grow and require adjustments as a result. This makes it difficult to update or innovate because developers are working with the entire monolith in mind instead of developing.

Despite their flaws, monoliths aren’t completely obsolete. Smaller companies and startups can benefit from this approach because they have smaller technology teams. A monolithic server usually requires less work but lacks the flexibility larger companies require. For large companies, monoliths become a mass of layers, like onions, according to Linda Nichols, Cloud Enablement Leader at Cloudreach. Similarly, monoliths are long-lasting but perishable and contain many layers, which are difficult to modularize and have complicated deployments.

Where do Virtual Machines Fit?

When people talk about containers, they talk about how much better they are than virtual machines (VMs). It’s a weird way to approach it though, as there is certainly still a place for VMs in the cloud. Despite the popularity of containers and serverless, Amazon CTO Dr. Werner Vogels believes that virtual machines are the “bread and butter of compute.” VMs have longevity on their side, as they have the capability to run for months or years. According to Vogels, one customer just marked the 10th anniversary for one of its virtual machines.

Amazon CTO Dr. Werner Vogels believes that virtual machines are the “bread and butter of compute.” Click To Tweet

VMs last because patching and updating take priority over replacing. For users interested in VMs over containers or serverless, AWS offers several solutions, some of which are on their fifth generation of updates!

In his keynote, Vogels announced the new R5 instance type, a next-generation memory-optimized instance for Amazon EC2. This high-performance database is significantly more powerful than the R4 release announced in 2016. AWS also increased the available RAM for compute instances.

The Container Revolution

Containers and microservices run independently, meaning there is less time spent on daily management than with virtual machines. Developers can work without worrying about scaling or other problems typically associated with VMs or even monoliths.

Containers, which are faster than VMs, run directly on top of an OS kernel, which means that they are lightweight and easier to move. Additionally, containers can be divided into unique sections with varying access controls.

Dr. Werner Vogels recognizes the importance of containers in the face of monolithic applications. This sentiment was repeated by Cloudreach’s Nichols, who led a developer talk about the problems with monolithic applications. Containers can help fragment monoliths into logical, easier to use workloads.

Containers can help fragment monoliths into logical, easier to use workloads.

Developers love containers for a variety of reasons, the most obvious of which is laziness! It’s the developer’s philosophy that day-to-day operations shouldn’t get in the way of development, and this is just one reason that DevOps is becoming more prevalent in enterprise computing.

Containers and DevOps

Containers enhance DevOps, but are they a temporary solution?

Although everyone in the cloud computing space loves marketing lingo and buzzwords, cloud solutions are not one size fits all. Containers certainly enhance DevOps practices, but are they truly a DevOps tool?

The DevOps philosophy appeals to users who want to accelerate development and containers fall under that scope. VMs also use more computing power than containers and are also worse at scaling. As continuous delivery and continuous deployment grow in relevance, having containers to complement faster infrastructure to build code on is crucial.

I’m not trying to imply containers are on the way out. On the contrary, containers are becoming more popular every day, with the Kubernetes container orchestration system supported by an enormous number of contributors, including development teams.

As amazing as containers and Kubernetes are, they share a downside in that they’re difficult to manage. AWS has made this significantly easier with tools like Amazon Elastic Container Service (ECS). Vogels says that ECS has over 100,000 active clusters with hundreds of millions of containers starting each week. The solution has grown 400% each year since 2016.

AWS launched its managed Kubernetes service, Amazon EKS, in response to the more than 60% of users who run Kubernetes on AWS. Despite its growing popularity, Vogels says that customers want AWS to run Kubernetes for them and emphasized the difficulty in securing and managing them manually. He says, “Running an entire container management system yourself sort of brings you back to the pre-cloud era.”

What makes containers a potentially precarious solution is that users must still manage their environments. The screen behind Vogels summed it up: “Builders want to build, not manage clusters” This led AWS to release Fargate, which eliminates the infrastructure of containers, as everything is managed at the container level. Vogels announced that Fargate will soon be available for EKS.

Since Fargate eliminates the internal management of container or Kubernetes infrastructure through ECS and EKS, development teams are able to focus more time on development. Cluster management can take up tremendous time that should be spent elsewhere. This tool optimizes DevOps by allowing developers more time to perfect their code without the headaches surrounding containers.

Will Serverless Usurp Other Compute Methods?

It’s clear that AWS isn’t leaving other compute infrastructures behind. Users asked for Kubernetes management and they got it. They asked for help with VMs and got it. However, is serverless the best option for compute?

The benefits of serverless aren’t lost on anyone in the development space. Solutions like AWS Lambda allow developers to spend their time creating applications without spending time on infrastructure. This makes serverless far more approachable than containers, as they tend to need more training and expertise. As Vogels stated, “We no longer want to write and manage all these different compute infrastructure pieces, we just want to write business logic.”

AWS offers a variety of services for serverless. They offered serverless for data, monitoring, development, and more, but compute wasn’t an option until AWS Lambda. Serverless compute allows developers to spend their time writing code without worrying about compute infrastructure. For Lambda, AWS automatically scales and replicates over availability zones.

Vogels pointed out that, most of the time, newer technologies will be adopted by small companies first. However, AWS enterprise customers were quick to adapt serverless. It reduces infrastructure management tasks and the cost is dependent on compute time.

What Does Serverless Mean for DevOps?

Infrastructure management interferes with the speed demands of today’s digital world. Containers and VMs have their place, and many companies are even using a combination of these compute types, but what does this mean for DevOps?

When looking back at the monolith, we can see its slow descent into obscurity. Monolithic architecture has its place, but new tools are consistently aiming to replace or eliminate it. With the increased focus on maintaining a safe enterprise cloud space, the concept of DevSecOps is gaining traction.

As I mentioned before, containers were a significant boost to DevOps popularity. It embodied the goals of DevOps, including faster development speed and releases, breaking down IT silos through collaboration. But with serverless, infrastructure management is essentially gone. Where is the “Ops” in DevOps or DevSecOps going? It’s sticking around, but only to emphasize that it’s no longer always necessary. Serverless architecture has created the term “NoOps.”

NoOps emphasizes the importance of serverless and automation. It works to automate deployment, infrastructure, and application management. Thus, most operations work will become redundant, eliminating the need for “DevOps.”

To be clear, DevOps means something different to everyone, so declaring its demise is trivial. DevOps has become an umbrella term for vendors to talk about automation and other simplification methods. It’s unlikely this will change anytime soon, but from a workplace cultural level, DevOps will become outdated.

Considering the emphasis on serverless from Dr. Vogels and many others at AWS Summit New York, it has the potential to take over the development world. Customers asked for EKS and they got it, but serverless is new and more efficient. AWS will continue to improve its serverless functionality and it’s certainly something to look out for at this year’s re:Invent.

Avatar

Written by

Tyler Stearns

I'm the lead editor at Solutions Review's Cloud and Network Monitoring sites. In my writing, I bridge the gap between consumer and technical expert to help readers understand what they're looking for. My passions outside of enterprise technology include film, games, swimming in rivers (only rivers), mechanical keyboards, fun socks, ramen, and goats.


Related Posts

Joe Nemer
Joe Nemer
— April 3, 2020

Breaking News: All AWS Certification Exams Now Available Online

Remote proctoring for all AWS certifications Cloud Academy is an Advanced AWS Technology Partner, and we are happy to announce all AWS certification exams are available online!  What does this mean for you? You can stay focused on your certification goal. Or you can start a certifica...

Read more
  • AWS
  • AWS certification
  • AWS Certifications
Connie Benton
Connie Benton
— April 1, 2020

How To Build a Career with AWS Certifications

From Iaas and PaaS solutions to digital marketing, cloud computing reshapes the world of technology. As the influence of this technology grows, so does investment. Tens of billions of dollars are being spent on cloud computing-related services each year. This influx is continuing to inc...

Read more
  • AWS
  • Certifications
Vijayakumar Athithan
Vijayakumar Athithan
— March 27, 2020

What is Cognito in AWS?

Web applications usually allow a valid username and password combination for successful sign in to the application. Modern authentication flows incorporate more approaches to ensure user authentication. When using AWS, this is no exception, thanks to the abilities and features offered b...

Read more
  • AWS
  • AWS Cognito
  • Solutions Architect
Avatar
Andrew Larkin
— March 20, 2020

The 12 AWS Certifications: Which is Right for You and Your Team?

As companies increasingly shift workloads to the public cloud, cloud computing has moved from a nice-to-have to a core competency in the enterprise. This shift requires a new set of skills to design, deploy, and manage applications in cloud computing. As the market leader and most ma...

Read more
  • AWS
  • AWS Certifications
Alisha Reyes
Alisha Reyes
— March 17, 2020

Cloud Academy’s Blog Digest: How Do AWS Certifications Increase Your Employability, How to Become a Microsoft Certified Azure Data Engineer, and more

With everything going on right now, it's likely that the only thing you've been reading lately is related to the coronavirus pandemic. It's important to stay informed during these times, but it's also good to jump into something that can take your mind off of the current situation for j...

Read more
  • AWS
  • Azure
  • blog digest
  • Certifications
  • Cloud Academy
  • programming
  • Security
Avatar
Cloud Academy Team
— March 13, 2020

Which Certifications Should I Get?

As we mentioned in an earlier post, the old AWS slogan, “Cloud is the new normal” is indeed a reality today. Really, cloud has been the new normal for a while now and getting credentials has become an increasingly effective way to quickly showcase your abilities to recruiters and compan...

Read more
  • AWS
  • Azure
  • Certifications
  • Cloud Computing
  • Google Cloud Platform
Alisha Reyes
Alisha Reyes
— March 7, 2020

New on Cloud Academy: Intro to GitOps; AWS Courses; Java, Python, Amazon Linux 2, Ubuntu, & Docker Playgrounds; and much more

New Lab Playgrounds This month, our Content Team released six new "playground labs." Our playground labs provide a safe and secure sandbox environment for you to explore your own ideas, follow along with Cloud Academy courses, or answer your own questions — all without having to instal...

Read more
  • AWS
  • Azure
  • gitops
  • Google Cloud Platform
  • lab playground
  • programming
Alisha Reyes
Alisha Reyes
— March 6, 2020

New on Cloud Academy: Intro to GitOps; AWS Courses; Java, Python, Amazon Linux 2, Ubuntu, & Docker Playgrounds; and much more

New Lab Playgrounds This month, our Content Team released six new "playground labs." Our playground labs provide a safe and secure sandbox environment for you to explore your own ideas, follow along with Cloud Academy courses, or answer your own questions — all without having to instal...

Read more
  • AWS
  • Azure
  • gitops
  • Google Cloud Platform
  • lab playground
  • programming
Patrick Navarro
Patrick Navarro
— March 4, 2020

AWS Certifications: How Do They Increase Your Employability and Progress Your Career?

AWS certifications are no walk in the park. They’re designed to validate in-depth, specialist knowledge and comprehensive experience, often requiring months of dedicated studying to earn even for those already working with the cloud platform. But the rewards that AWS professionals ca...

Read more
  • AWS
  • AWS certification
  • certification
Avatar
Chandan Patra
— February 21, 2020

Elasticsearch vs. CloudSearch: AWS Cloud Search Choices

Elasticsearch vs. CloudSearch: What's the main difference? Let's compare AWS-based cloud tools: Elasticsearch vs. CloudSearch. While both services use proven technologies, Elasticsearch is more popular, open source, and has a flexible API to use for customization; in comparison, CloudS...

Read more
  • AWS
  • Azure
  • cloudsearch
  • elasticsearch
Avatar
Andrew Larkin
— February 13, 2020

Cloud Academy Content Roadmap Updates

Welcome to our Q1 2020 roadmap. This is the content we plan to build over the next three months, between February 1 - and April 30, 2020. Let's look at some of our roadmap highlights. Atlassian Bamboo for CI/CD We had a lot of requests for practical guides on how to apply DevOps tool...

Read more
  • Artificial Intelligence
  • AWS
  • Azure
  • Docker
  • Google Cloud Platform
  • Kubernetes
  • Machine Learning
Alisha Reyes
Alisha Reyes
— February 7, 2020

New on Cloud Academy: Git Labs, CKA and CKAD Lab Challenges, AWS and Azure Learning Paths, AGILE, and Much More

We just kicked off our first Free Weekend of 2020. This means we've unlocked our Training Library for just 72 hours. Until Sunday at 11:59 pm (PST), you can get unlimited access to our industry-leading learning paths, courses, certification prep exams, and our most popular hands-on labs...

Read more
  • agile
  • AWS
  • Azure
  • Google Cloud Platform
  • Linux
  • OWASP
  • programming
  • red hat
  • scrum