The back story
2019 was a banner year for the cloud-native community. So much happened it was hard to see the wood for the trees, so to speak.
It’s an age-old adage that to fully understand where you’re going, you have to understand where you’ve been. The same is true of cloud computing. We have taken a look back over the history of the cloud-native world and the trends we are likely to see in 2020.
Where did the cloud-native world come from?
In 2014, Google announced it was embracing Docker and open-sourcing a new tool to manage computing workloads and cover large scale computing infrastructure. At the time, this was hailed as revolutionary….it was believed to be the “secret weapon” in cloud computing.
Now, we know this tool as Kubernetes. It was the dawning of a new community and would instigate a seismic shift in cloud computing technologies. Kubernetes has been pivotal in waging the war against dominant player Amazon Web Services for the cloud computing market share. Weapon indeed. Google, Microsoft and Alibaba have long been chasing the crown, looking to rip it from the head of AWS.
Kubernetes held significant promise. Docker allowed the delivery of standardised and portable software. Developers could enter code, libraries and configurations into a Docker container and then run it anywhere regardless of the computing platform as long as it had Docker installed on it.
How does cloud-native technology work?
Picture the scene. You have several applications, packaged in several containers. These are running across a fleet of different computers in data centres and cloud environments. In this scenario, who is going to tell which container where to run? How are these different forms of hardware going to function as one unified computer to run your workload? In the business, this is known as Orchestration, and Kubernetes can do this for you.
The benefits of cloud-native technology
Even back then, this wasn’t considered to be groundbreaking. However, what it did promise was the ability for the community to benefit from Google’s many years of experience. Suddenly, we were able to run intensive workloads over cheap infrastructure and REALLY take advantage of it. In short, enterprises could gain access to Google level technology and up its digital game.
Kubernetes was also a brilliant strategic business move from Google. To standardise orchestration would make it far easier for users to run Docker-ised workloads, thus encouraging a shift to the new model.
“Cloud-native” Docker-ised workloads were easier to run ‘in the cloud’ than older, legacy applications. They are also “portable”; able to be moved from ‘cloud to cloud’. These progressions held significant implications for business. It would get easier and easier to persuade enterprise customers to transition their computing “to the cloud” and to migrate from cloud to cloud – i.e leave the dominant AWS and move across to Google. These features were great for both growing the cloud computing market in general and for boosting Google’s market share. It also heralded an age of alignment; Kubernetes also worked to standardise the compatibility of cloud vendors.
AWS vs. Azure
Taking on AWS was Microsoft Azure. The software giants were quick out the blocks, taking just a few short months to adopt Kubernetes as a component of its cloud-native offering. In contrast, it took Amazon 4 years to provide a managed Kubernetes offering.
Following this initial flurry of interest, Kubernetes has become far more substantial. Users have become much more serious about deploying Kubernetes, and technology-wise, Kubernetes tech has become more stable.
Since its inception, Kubernetes has proved its worth, and while valuable, companies have realised that running Kubernetes requires some very specialised skills and a host of companion software.
In recognition, Google has donated Kubernetes to a newly created foundation; the Cloud-Native Computing Foundation. The foundation has been tasked with hosting open source projects building “critical components of the global technology infrastructure”. The community has also grown. Perhaps this is best demonstrated by the attendance of the annual Kubecon conference. This event has escalated from a small attending number of 1000 to a global 12,000 person event.
With the back story covered, we can look forward into 2020; an age which looks set to be a little clearer.
Here are 4 key trends for 2020 that cloud-native enthusiasts need to know about.
Kubernetes going deep into enterprises.
In just a few words, we can expect Kubernetes to be widely adopted at scale.
In a poll by cybersecurity company, Stackrox, 2019 was confirmed as the year when Kubernetes underlined its dominance for container orchestration. The survey revealed that 86% of respondents used it to orchestrate their workloads; a leap up from 57% in 2018. There is however a gap in the data. Not taken into account is the proportion of workloads which are not run in containers and remain in traditional architectures. However, according to Enterprise Kubernetes platform, Diamanti “in comparison with 2018, we see clear signs that containers are entering the enterprise IT mainstream.”
From these stats, we can conclude that although commercially supported enterprise Kubernetes solutions have existed for quite some time, there is room for catering to unmet but well-known enterprise needs: permissions, governance, cost-control and integrations, for example.
This was an area which hit the headlines across 2019. Among them, open-source compliance as code solution, The Open Policy Agent was accepted into the Cloud Native Foundation. In essence, Compliance as Code means that users will be able to define rules in code. This makes it easier to manage in a scalable and automated manner.
Shortly after this admittance, the project’s founders launched their start-up Styra which landed $14m in funding.
Also within the space, startup, Kubecost tackled the issue of managing infrastructure costs at scale; something which is becoming an issue as multi-cloud deployments become increasingly common. Kubecost gives organisations visibility into their Kubernetes solutions and identifies cost and infrastructure concerns.
Following Kubecost’s lead, we can expect more enterprise startups looking to address similar issues. Users will need help to tackle permissions, governance and cost-control. We can expect to welcome a new wave of companies and products designed to do just that.
Running across public cloud providers, it was clear from the off-set that Kubernetes would be a multi-cloud product. What was less clear, however, was whether or not hybrid cloud would be likely, natively.
The answer to this question would lie in the hands of the cloud hyper-scalers….would these giants 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 several integrations or add-on products?
Let’s look at how each responded.
Microsoft Azure was the earliest major cloud to embrace hybrid cloud. Since 2016, the Azure stack has allowed users to run a private data center using similar tech to Azure and connect a customer’s Azure cloud to both private and public clouds through a common interface. However, its offering did not include Kubernetes, until, that is, it previewed Azure Arc in November 2019. Users can now run containers across Kubernetes clusters. The containers can now be managed across a common Azure interface, whether they are on Azure, some other cloud, or on private infrastructure.
At the tail end of 2018, Amazon also joined the pack. Amazon 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.
Lastly, Google seemed a little reluctant to welcome hybrid cloud. Recently though, they have revised its stance. April 2019, saw Google launch its Anthos hybrid suite, letting users take advantage of its Kubernetes solution Google Kubernetes Engine (GKE), either hosted in Google’s (or any other) cloud, or on-premises.
So what does this mean? In short, it means that the competitive gap between hybrid cloud leaders, Microsoft and the rest of the hyperscaler pack is lessening. This is important as Microsoft’s cloud offering is arguably less performant than its rivals in many respects. Google excel in machine learning for example and Amazon? The sheer diversity of cloud products sets them apart.
Underlying all this noise is the premise that 2019 was the year of hybrid cloud. It is now supported by the 3 major cloud players. 2020 will see the roll-out of Hybrid Kubernetes.
Both the large scale adoption of Kubernetes in enterprise and across multiple environments means that Kubernetes is being placed under a lot of pressure in terms of security. Migrating production-grade workloads requires a very different level of security.
Much like with Trend 1, this threat is likely to be tackled by a new wave of cybersecurity startups.
These startups will argue that it is the fluidity of the transfer of code that puts the data at risk. Indeed, over the last 10 years, developers and operations teams been switching to agile and DevOps paradigms. This means that the code is being shipped frequently and in fast cycles. Both code releases and code deployments are continuous and incremental. As such, cybersecurity should be continuous too.
These developments mean that the sporadic, pen-testing method of testing code is no longer relevant. Indeed, continuously updated software needs continuous cybersecurity.
Giving developers a helping hand
One emergent trend is that security is being gifted back to the developers themselves. As deploying to production becomes more and more in the hands of the developers, it is becoming apparent that the logical thing to do would be to build tools to let developers control and improve the security of their applications.
In evidence, just earlier this year, cybersecurity platform Snyk raised $150m to help developers find vulnerabilities in their code, containers, or Kubernetes cluster. Additionally, Anchore received $20m in funding to build a “comprehensive container security platform designed to run natively on Kubernetes”. Anchore help organizations implement secure container-based workflows, and have already had huge validation. It has been added as a requirement in the US Department of Defence DevSecOps Reference Architecture.
The bottom line is that throughout 2020, we can expect debate. There will be those that argue there ought to be more tools designed to help developers assess the security of their applications and those who argue that the security element should be left to the experts! What won’t be open to debate, however, will be the emergence of a new wave of experts looking to address the cybersecurity needs of cloud computing technologies.
Over the past two years, we have heard a lot about “The Edge”. “Edge” computing works on the principle that as we herald a dawn of the Internet of Things; one where a car or your fridge is also a computer we should be running computations close to the data instead of doing it all in data centers. If we were to run some computers at the edge and then centralise the result, we would reduce the bandwidth requirements, increase security and privacy, and optimise computer use.
All this sounds sensible, but this principle is not without its problems. The software stack, including Kubernetes, is not necessarily designed to run on those heterogeneous computing environments outside data centers. Often this tech, such as a smartphone or smartwatch, is considerably less powerful and can handle less overhead.
This has led to questions being raised as to how we do handle the stack? 2019 saw many announcements here too.
One of the leading providers of commercial Kubernetes distribution, Rancher announced the release of k3s, a Kubernetes distribution which it describes as being designed for the management of “production workloads in unattended, resource-constrained, remote locations or inside IoT appliances”. Additionally, Virtual Kubelet, a system letting you extend Kubernetes to serverless container environments, and in particular on edge infrastructures went into 1.0 production.
So, we can conclude that the stack is maturing and evolving for the edge. As a result, we can expect some more big announcements from device providers.
If you’re looking for leading talent for your cloud-native company then we’re always happy to help!
Are you part of the cloud-native community? What are your predictions for 2020? We’d love to hear about what you think we can expect from the new decade!
Leave your comments below!