The ephemeral composable stack - Civo: Combatting container complexity
Civo (pronounced see-vo, not chi-vo) is a cloud native service provider known for its work with Kubernetes.
The company thinks that around half of what it would identify as cloud developers are using containers, with somewhere close to three quarters of those coders using them in live production environments.
All good news then? Well yes and no… although half the cloud developer community is gauged to be using containers, about the same split of virtualisation-focused programmers also worry about container use case complexity.
Is this just a contrived spin effort by a company that champions Kubernetes, a container orchestration system well suited to automate the deployment, scaling and management of containers? Well, probably, but containers are complex, so what else should we know?
Civo says that many container implementations suffer from being tough to scale, a task that Kubernetes handles well… but why is many containers such a big ask?
Running many application containers at scale is tough because a more granular application composed of many parts is an inherently bigger total estate to oversee, monitor, track for application version, deliver upgrades to and map out in terms of component location.
Mark Boost, co-founder & CEO at Civo talks further on this subject and writes as follows below:
Our container research also revealed a number of challenges and frustrations that respondents have encountered whilst using Kubernetes.
By far and away the top challenge of using Kubernetes is the steep learning curve (57% reported this as their top challenge) and the biggest frustration is the new terms, concepts and commands that come with adopting Kubernetes. On top of this, 62% of respondents are frustrated by the time it takes to spin up a working Kubernetes cluster.
Developers at the heart
In many ways, Kubernetes is a platform made from the beginning with developers in mind. From its origins at Google, the shift to open source helped Kubernetes evolve into a community-driven tool – evolving organically in line with the needs of developers in an increasingly cloud-native world.
It is important, however, that the platform avoids any backsliding and adapts to the challenges developers still face in utilising Kubernetes.
Complexity is the enemy of the good for developers – they want to spend less time worrying about deploying containers and more time building applications that can deliver tangible value to the business.
Managed Kubernetes is playing a crucial role in helping empower developers to focus less time on concerns of infrastructure management, and more time on product development – the high-value task most in the role were hired for.
Despite amazing work from the CNCF (Cloud Native Computing Foundation) our research suggests we need to see more effort by the industry to improve education and training on effective use of Kubernetes.
Community mindset & K3s
That community mindset from which Kubernetes was born needs to come to the fore again, helping upskill and inspire the next generation to start innovating with Kubernetes
However, there is help in the form of K3s, a fully conformant Kubernetes distribution. K3s is designed as a single binary of less than 40MB that completely implements the Kubernetes API.
Due to its low resource requirements, it’s possible to run clusters using servers with just 512MB of RAM. Because it’s a compact binary, K3s clusters can spin up in a fraction of the time it takes to launch a regular Kubernetes cluster. When asked by Civo, 80% of Kubernetes users are familiar with K3s and already over half (51%) would consider it for production workloads.