At Replicated, we closely track happenings in the cloud native space given that we use cloud native technologies to deliver and manage software on-prem. (We like the on-prem term because it neatly sidesteps the tiresome on-premise vs. on-premises debate.) That’s why some of the findings in the latest Cloud Native Computing Foundation (CNCF) survey caught our eye. They highlight that we seem to be at a point where lots of computing is sticking to on-prem even as it transforms to cloud native.
If you’ve hung around the computer industry for a while, you’ve probably observed a couple of things. The first is that the industry tends to go through cycles. The second is that each new cycle is different in fundamental ways from the one that came before.
CNCF surveys over the years (2020, 2019, 2018, and 2017) illustrate these patterns nicely in that they track changes to both where computing is happening and how it’s happening, both on-prem and elsewhere. One quick caveat. Don’t read too much into the absolute numbers; over half the respondents are from software/technology organizations and about the same number are members of the CNCF End User Community. Therefore, they’re almost certainly more aggressive adopters of cloud native technology than the average company. Nonetheless, it’s reasonable to take the general trends—which are consistent with other survey data—as applicable to a broader set of technology consumers.
Let’s start with the where.
Jump back ten years or so and computing was re-centralizing. The new form of utility computing was different from computing dominated by mainframes and other types of Big Iron servers. But it was nonetheless widely viewed as a computing wave that would inexorably pull in computing from the periphery into a small number of global public cloud providers. The common storyline peddled by author Nick Carr among others was that computing was on a trajectory to be dominated by a standardized compute utility just as electricity was after large power plants and hydroelectric dams took over from locally generated factory power.
It would take time, but many saw an inevitable destination where large service providers dominated.
The CNCF data tells a more multifaceted story. Public cloud usage did climb in 2020; 64% are on public clouds compared to 62% the year before. However, the on-prem/private cloud category shot up much more—from 45% in 2019 to 52% last year. Both hybrid cloud and multi-cloud, as defined by the CNCF, also have significant chunks (36% and 26% respectively), but it’s hard to compare to prior years because distinguishing the two categories can be difficult in surveys and the CNCF didn’t ask about multi-cloud last year.
What should we make of this? One conclusion is that it’s a heterogeneous world where computing takes place in different places for different purposes. This has been the case for a very long time in IT. The other result is that on-prem computing is here to stay and it’s growing. This growth is in part related to edge computing which distributes computing capacity and storage out closer to users, services, and devices. And this is true even among a population of companies on the cloud native forefront.
The surveys also tell us the way in which organizations are using infrastructure is changing.
Even among this cloud-savvy crowd, the level of container use in production (92%) is a bit startling. That’s 4X the percentage who the CNCF says had containers in production use in 2016 and a steady increase from 84% in 2019 and 73% in 2018. The number of containers run by these companies continues to climb as well. 23% are running more than 5,000 containers while the number running less than 250 continues to dwindle.
Deploying containers at this scale can’t be done in isolation. We see this reflected in the high (83%) uptake of Kubernetes for production cluster management; another 8% use the platform but haven’t put it into production yet.
There’s also evidence that these organizations are adopting cloud native practices more broadly as part of their production workflows in the CNCF 2020 survey. For example, 63% use Helm to package their Kubernetes applications, far more than any other approach—including managed Kubernetes services. 82% of respondents use CI/CD pipelines in production. Jenkins remains the most common CI/CD tool although cloud native tooling like Tekton Pipelines and Argo are starting to put in an appearance. 27% now use a service mesh in production even though that’s a quite recent (and rapidly evolving) technology. Almost all (95%) use monitoring and logging; 74% use tracing. The majority run these on-prem. More than half check in code multiple times a day and 29% release at least daily.
Containers were originally intended to be stateless and that was something of a defining characteristic of early Platform-as-a-Service (PaaS) offerings and their associated application patterns such as twelve-factor apps. Indeed, Kubernetes users run stateless applications, with 22% running stateless only. A significant majority, 71%, autoscale their stateless workloads—about the same as last year.
However, 55% run production stateful applications in production. This gives a sense of how important the development of stateful Kubernetes features like persistent volumes has been to its success as an enterprise software platform.
That’s not to say there aren’t any challenges associated with using containers.
One such challenge is complexity which has stayed stubbornly high over the years. This year 41% cited it as a challenge, which is actually a bit higher than the numbers going back to the CNCF’s 2017 survey. Just a few percentage points but the lack of movement has to be seen as a bit discouraging.
Progress with respect to more focused technology areas is mostly better. For example, security remains fairly high—32% call it out as a challenge—but security ranks high in just about every survey that looks at challenges, barriers, and concerns and it’s well down from 40% last year and 44% in 2017.
The other big challenge remaining is cultural changes associated with development; it ties with complexity for the top challenge this year. This is perhaps less surprising given that culture change is always slow to take root in an organization. Nonetheless, it’s a reminder that transformation isn’t just about (or maybe even mostly about) technology. The good news is that those taking the survey over time at least recognize that dealing with changing platforms, application patterns, and processes isn’t just about buying a new tool.
Want to learn more? Check out the resources page for podcasts, webinars, and case studies. Here’s another blog you may find interesting Kubernetes Infrastructure vs. Kubernetes Application Management.