2019 was a pivotal year for the cloud native community, with lots of announcements that made it hard to get a clear view of what’s happening. But there are 4 key trends in the cloud space that will shape 2020. And if you take a step back, you’ll spot them. A big step back.
In June 2014, Google announces it is embracing Docker, and open-sourcing a new tool to manage compute workloads over large scale computing infrastructure. It is hailed as a revolution. “Google Open Sources Its Secret Weapon in Cloud Computing,” reads a Wired headline.
The tool was to be named Kubernetes, and it would initiate a huge shift in cloud computing technologies and the birth of a massive community. It would also be instrumental in the war for cloud computing market share that Google, Microsoft, and Alibaba are waging against the dominant player Amazon Web Services.
The promise of Kubernetes was simple. Docker made it easier to deliver standardized, portable software: put your code, libraries and configurations into a Docker container and then run it anywhere without minding the compute platform, as long as Docker is installed on it. Now you have a fleet of applications, packaged in a fleet of containers, that are running on a fleet of heterogeneous computers in data centers and cloud environments. Who is going to tell which container where to run? How is this heterogeneous hardware going to function as one unified computer to run your workload? That is called orchestration, and Kubernetes will do that for you.
Of course, this idea wasn’t new. But Kubernetes promised to let the community benefit from Google’s decades of experience running intensive workloads over cheap, commodity infrastructure, and optimizing the hell out of it.
Underlying those promises was the dream of many enterprises: get access to Google-level technology and up their digital game.
Underlying those promises was also a brilliant strategic move by Google. Standardizing orchestration would make it easier for users to run dockerized workloads, which would encourage them to transition to that new paradigm. Dockerized, “cloud-native” workloads are way easier to run in the cloud than monolithic, legacy applications, and they are also easier to move from cloud to cloud (“portable”). Which means it would get easier to convince enterprises both to transition their compute to the cloud (i.e., grow the cloud computing market), and to migrate from cloud to cloud (i.e., get people to leave Amazon Web Services and move to Google, growing market share). Indirectly, Kubernetes was also an effort to standardize cloud vendors’ compatibility.
Microsoft Azure, which was also taking on AWS, was swift to adopt Kubernetes in its cloud offering in August 2014 (whereas it took Amazon four years to provide a managed Kubernetes offering).
Past the initial excitement, users have become more serious about deploying Kubernetes, and technology-wise Kubernetes has become more serious (stable) too.
Past the initial POCs, enterprises have realized that running Kubernetes requires very specialized skills and a ton of companion software.
Google has donated Kubernetes to a newly created foundation, the Cloud Native Computing Foundation, tasked with hosting open source projects building “critical components of the global technology infrastructure.”
The community has grown, and the yearly Kubecon conference has evolved from a small 1,000 people event to a global 12,000 people event.
So what’s next? And what are the trends shaping cloud native in 2020?
1. Going deep into enterprises
The early years of Kubernetes may have been defined by big headlines and small POCs, but it is now becoming widely adopted at scale.
In a poll by Stackrox, a cybersecurity company, 2019 proved itself to be the year Kubernetes became dominant for container orchestration: 86% of respondents used it to orchestrate their workloads, up from 57% in 2018. What remains missing from this picture, though, is what proportion of workloads are not run in containers and remain in traditional architectures. But according to Enterprise Kubernetes platform Diamanti, “in comparison with 2018, we see clear signs that containers are entering the enterprise IT mainstream.”
So although commercially supported enterprise Kubernetes solutions have existed for quite some time (Rancher, CoreOS, and OpenStack have them), there is plenty of room for catering to unmet but well-known enterprise needs: permissions, governance, cost-control, integrations, etc. And we heard quite a bit of news in 2019:
- The Open Policy Agent, an open-source compliance as code solution, got accepted into the Cloud Native foundation. Shortly after, the project’s founders announced that their startup Styra launched and landed $14 million in funding. Compliance as code essentially means that users will be able to define rules in code, making them easier to manage in a scalable and automated manner.
- Kubecost tackled the issue of managing infrastructure costs at scale.
Bottom-line: Expect more and more announcements about enterprise-ish startups launching to tackle permissions, governance, single-pane of glass management, and cost control.
2. Hybrid cloud is officially a Kubernetes thing
It was clear from the beginning that Kubernetes would be a multi-cloud thing, running across public cloud providers. What was less clear was whether hybrid cloud would be on the menu, natively. The answer relied on the cloud hyperscalers: Would they choose to embrace hybrid cloud and make their offers compatible with on-premise Kubernetes solutions? Or would they make it difficult for end users to deploy on both, requiring tons of integrations or glue products?
On Microsoft’s side, it was quite clear. Microsoft Azure was the earliest major cloud to embrace hybrid cloud. Since 2016, its Azure Stack has allowed users to run a private data center using technology similar to Azure and connect a customer’s Azure cloud to both private and public clouds through a common interface. It did not include a Kubernetes offering, though, until a preview of Azure Arc in November. Users can now run containers across Kubernetes clusters, whether they are on Azure, some other cloud, or on private infrastructure, and manage all of it through a common Azure interface.
Amazon also finally joined the pack the very end of 2018 and is now gradually rolling out its AWS Outposts. The offering places a combined Amazon hardware/software stack directly into a customer’s data center to interface with AWS.
Google had seemingly been reluctant to embrace hybrid cloud, until now. It launched its Anthos hybrid suite in April, letting users take advantage of its Kubernetes solution, Google Kubernetes Engine (GKE), either hosted in Google’s (or any other) cloud, or on premises.
Bottom-line: 2019 was the year hybrid cloud won. It is now supported by the 3 major cloud providers. Hybrid Kubernetes will roll out in 2020.
This also means that the hybrid cloud competitive advantage that Microsoft had over the other hyperscalers is fading. This is a big deal, as Microsoft’s cloud offering is arguably less performant than the others in many respects (machine learning for Google, the sheer diversity of cloud products for Amazon).
3. Cloud-native security
Yes, Kubernetes is being adopted in the enterprise for real, beyond POCs. Yes, it is now running across multiple environments. As a result, Kubernetes is being placed under a lot of pressure in terms of security. Running a few POCs on a lightly secured test deployment was fine, but migrating production-grade workloads requires a whole new level of security.
A new wave of cybersecurity startups is launching to address this need.
Here’s their pitch: Developers and operations teams have been switching to agile and DevOps paradigms for nearly the last decade. This means code is being shipped frequently, in fast cycles, and deployed fast as well. Everything is becoming incremental or continuous: continuous code releases and continuous code deployments. And cybersecurity should become continuous too. The old school approach of testing code once in a while using pen testers doesn’t work anymore. Continuously updated software needs continuous cybersecurity.
Which is why we’re seeing a lot of big announcements out there.
One big trend is to put cybersecurity somewhat in the hands of developers themselves. As deploying to production becomes more and more in the hands of the developers, and less in the hands of operations, it is logical to build tools to let developers control and improve the security of their applications. Here are a couple of examples:
- After fours years of existence, Snyk raised $150 million to help developers find vulnerabilities in their code, containers, or Kubernetes cluster.
- Anchore got $20 million of funding to build “a comprehensive container security platform designed to run natively on Kubernetes.” It already has massive validation, after being added as a requirement in the U.S. Department of Defense DevSecOps Reference Architecture.
Bottom-line: Expect to hear a lot about tools for helping developers assess the security of their applications (good idea). And expect people to argue it should be left to experts (good idea too).
4. The edge
We’ve heard a lot about “the edge” these past two years. In a world where a car or a fridge is a computer, too, and the volume of data transfer increases, why not run computations close to the data instead of doing it all in data centers? Running some compute at the edge and then centralizing the results would reduce bandwidth requirements, increase security and privacy, and optimize compute use.
The thing is that the software stack, including Kubernetes, is not necessarily designed to run on those heterogeneous compute environments outside data centers. They are typically less powerful (e.g., a smartphone or a smart watch), and can handle less overhead.
So how do we handle the stack?
2019 saw many announcements around that, including:
- Rancher, one of the leading providers of commercial Kubernetes distribution, announced the release of k3s, a Kubernetes distribution “designed for production workloads in unattended, resource-constrained, remote locations or inside IoT appliances.”
- Virtual Kubelet, a system letting you extend Kubernetes to serverless container environments, and in particular on edge infrastructures, went into 1.0.
Bottom-line: The stack is maturing for the edge. Expect big announcements by telcos or device providers.
So there you go. These four trends will strongly shape cloud-native in 2020. It’s going to be an exciting year.
Malo Marrec is an entrepreneur currently exploring projects in the cloud native space. He previously worked for venture capital firm Elaia Partners and cofounded an AI infrastructure startup in San Francisco.