How Kubernetes is using in real Industry.
What is Kubernetes?
Kubernetes is a portable, extensible, open-source platform for managing containerized workloads and services, that facilitates both declarative configuration and automation. It has a large, rapidly growing ecosystem. Kubernetes services, support, and tools are widely available.
Why we need Kubernetes?
Let’s talk about the real industry
✴️ If we go back and see how industry running their applications, So we will see ,Companies running their applications on the top of Var Metal( Var metal means physical servers) , this is also known as Traditional Deployment Era ,
There are lot’s of drawback to run applications of Var Metal like-
🔅 There was no way to define resource boundaries for applications in a physical server, and this caused resource allocation issues.
🔅 Security Risk : if somehow our server hack then all the applications data will be lose.
✴️ Then after some time we introduce a new technology Virtualization . Virtualization allows better utilization of resources in a physical server and allows better scalability because an application can be added or updated easily, reduces hardware costs, and much more. With virtualization you can present a set of physical resources as a cluster of disposable virtual machines. it is also known as Virtualized deployment era.
Virtualization allows applications to be isolated between VMs and provides a level of security as the information of one application cannot be freely accessed by another application.
✴️ Now we are in container world , Containers are similar to VMs, but they have relaxed isolation properties to share the Operating System (OS) among the applications.
Benefits of Using Container:-
- Less overhead
- Increased portability
- More consistent operation
- Greater efficiency
- Improved developer productivity and development pipeline & many more
Now finally we can say Containers are very good for our application and our business
🔶 Containers are a good way to bundle and run your applications. In a production environment, you need to manage the containers that run the applications and ensure that there is no downtime. For example, if a container goes down, another container needs to start. if we think human can manage our container , So Human are very slow & lazy in compare to program , So here Kubernetes role come in play.
Kubernetes is very good to manage the containers.. It takes care of scaling and failover for your application, provides deployment patterns, and more.
Kubernetes provides you:-
- Service discovery and load balancing Kubernetes can expose a container using the DNS name or using their own IP address. If traffic to a container is high, Kubernetes is able to load balance and distribute the network traffic so that the deployment is stable.
- Storage orchestration Kubernetes allows you to automatically mount a storage system of your choice, such as local storages, public cloud providers, and more.
- Automated rollouts and rollbacks You can describe the desired state for your deployed containers using Kubernetes, and it can change the actual state to the desired state at a controlled rate. For example, you can automate Kubernetes to create new containers for your deployment, remove existing containers and adopt all their resources to the new container.
- Automatic bin packing You provide Kubernetes with a cluster of nodes that it can use to run containerized tasks. You tell Kubernetes how much CPU and memory (RAM) each container needs. Kubernetes can fit containers onto your nodes to make the best use of your resources.
- Self-healing Kubernetes restarts containers that fail, replaces containers, kills containers that don’t respond to your user-defined health check, and doesn’t advertise them to clients until they are ready to serve.
- Secret and configuration management Kubernetes lets you store and manage sensitive information, such as passwords, OAuth tokens, and SSH keys. You can deploy and update secrets and application configuration without rebuilding your container images, and without exposing secrets in your stack configuration.
VMWare’s State of Kubernetes Survey
VMWare’s 2020 State of Kubernetes survey was completed by 247 individuals for organizations that all have at least 1,000 employees. Fifty percent of individuals surveyed were from organizations with 5,000 or more employees and 35% were from organizations with at least 1,000 developers. As a result, it’s important to appreciate that this survey was focused on large enterprises, providing a glimpse of Kubernetes usage in major corporations. It also was primarily focused on North America, with nearly 70% of respondents being from North American businesses.
According to Michael Cote from VMWare, the prevailing sentiment in the wake of this survey is that “Kubernetes has won.” Supporting that overarching takeaway is survey data showing that 59% of the organizations surveyed are currently using Kubernetes in production. Additionally, the survey found that 20% of organizations using Kubernetes have 50 or more clusters, up from 18% in 2018.
Kubernetes Benefits for Enterprises
Notably, the data also shows that the increased usage and volume is for good reason, as organizations report that Kubernetes offers a number of benefits to organizations. A few key takeaways from the survey include:
- 56% of respondents using Kubernetes saw improved resource utilization
- 53% saw shortened development cycles with Kubernetes
- 50% found that it helped to containerize monolithic apps
- 42% said that it enabled the organization to move to the cloud
- 33% found that it reduced public cloud costs
Perhaps as significant as the benefits reported is the fact that only 5% of respondents using Kubernetes found that their organization is seeing no benefits from its use.
While it’s important to note that usage and volume from across organizations and industries are up, it’s as important, if not more important, to see that businesses are seeing benefits from using Kubernetes. With an ability to reduce the time of development cycles while also improving resource utilization, it can help teams to more quickly and effectively deploy new software, which is key to being an industry leader during the digital transformation.
Where Kubernetes is Deployed
Another interesting takeaway from this survey is where enterprises are deploying Kubernetes. It’s important to recognize that most organizations are not simply running it in one location, but instead run it on-premises and across all clouds. Here are some specifics on where it’s currently deployed by enterprises:
- 64% of respondents deploy Kubernetes on-premises
- 42% run it with a single, public cloud vendor
- 31% utilize multiple public cloud vendors
- 10% use distributed edge locations
Challenges with Kubernetes
While Kubernetes has some clear benefits, it’s important for organizations considering using this software to anticipate and plan for some of the challenges associated with it. The biggest noted challenge was a lack of experience and expertise working with the platform. To combat this issue, analysts suggest finding people that can help with deployment and management and working to utilize their expertise from the outset.
Another common challenge that emerged from this data is difficulty with adoption and implementation due to internal alignment issues. The data surrounding internal perceptions about the biggest impediments associated with Kubernetes help to highlight alignment issues. Notably, 46% of executives saw integrating new technology into existing systems as the biggest impediment; whereas 29% of developers found that waiting for central IT to provide necessary access as the biggest impediment. In contrast, only 6% of executives found this to be the primary impediment.
Some internal alignment issues are to be expected as part of any major technology shift, yet it’s important for organizations to anticipate and address this issue. Ultimately, experts advise that to most effectively utilize Kubernetes, organizations should listen to, understand, and prioritize the needs of developers.
The Cloud Native Computing Foundation’s Kubernetes Survey
While VMWare’s survey provides some key insights, it’s only focused on large corporations, 68% of which are in North America. To provide a more comprehensive picture of Kubernetes usage globally and across businesses of all sizes, it’s helpful to also look at a recent survey by the Cloud Native Computing Foundation (CNCF). This survey had 1,337 responses, with only 37% of respondents being from North America and only 44% of respondents from organizations with more than 1,000 employees.
Despite different demographics, the key takeaway from this survey is similar to that of the State of Kubernetes, namely, there is increasing usage of Kubernetes, particularly in production environments. Results from the 2016 CNCF survey found 23% of respondents using Kubernetes, whereas the 2019 survey reports 84% of businesses using it.
Not only is there increased usage, but there is increased volume. In the 2018 survey, 56% of users had less than 250 containers, yet in 2019, 56% had more than 250 containers, with almost 20% running 5,000 or more.
Unlike the larger enterprises that prefer to host on-premises, 62% of respondents to the CNCF survey report deploying Kubernetes in a public cloud. Interestingly, this number is down from 77% in 2018, likely as a result of the hybrid cloud option.
Benefits and Challenges
Respondents to the CNCF survey weighed the benefits of Kubernetes slightly differently than the larger enterprises in the VMWare survey did. The key benefits reported in the CNCF survey were faster deployment, improved scalability and availability, and more cloud portability.
Many of the same challenges were reported, as culture challenges were also sighted as a primary impediment to Kubernetes deployment and usage. And, a lack of training, which parallels well with the response of lack of expertise and experience sighted in the VMWare survey, was also reported as a major challenge. Respondents to the CNCF survey, however, also reported security concerns and overall complexity as major challenges of Kubernetes.
Our survey results indicate widespread adoption of Kubernetes (91%), especially in production environments (75%). Supported by a robust community of contributors, Kubernetes has taken significant market share away from other container management tools such as Docker Swarm and Amazon Elastic Container Service (ECS).
Companies using Kubernetes
Let’s talk about Use-Case of Kubernetes
This digital music streaming service makes it simple for you to get quick access to millions of songs, videos, and podcasts from global artists. No matter what part of the world you belong to, it brings songs from your country’s artists.
Challenge face by Spotify
Launched in 2008, the audio-streaming platform has grown to over 200 million monthly active users across the world. “Our goal is to empower creators and enable a really immersive listening experience for all of the consumers that we have today — and hopefully the consumers we’ll have in the future,” says Jai Chakrabarti, Director of Engineering, Infrastructure and Operations. An early adopter of microservices and Docker, Spotify had containerized microservices running across its fleet of VMs with a homegrown container orchestration system called Helios. By late 2017, it became clear that “having a small team working on the features was just not as efficient as adopting something that was supported by a much bigger community,” he says.
“We saw the amazing community that had grown up around Kubernetes, and we wanted to be part of that,” says Chakrabarti. Kubernetes was more feature-rich than Helios. Plus, “we wanted to benefit from added velocity and reduced cost, and also align with the rest of the industry on best practices and tools.” At the same time, the team wanted to contribute its expertise and influence in the flourishing Kubernetes community. The migration, which would happen in parallel with Helios running, could go smoothly because “Kubernetes fit very nicely as a complement and now as a replacement to Helios,” says Chakrabarti.
The team spent much of 2018 addressing the core technology issues required for a migration, which started late that year and is a big focus for 2019. “A small percentage of our fleet has been migrated to Kubernetes, and some of the things that we’ve heard from our internal teams are that they have less of a need to focus on manual capacity provisioning and more time to focus on delivering features for Spotify,” says Chakrabarti. The biggest service currently running on Kubernetes takes about 10 million requests per second as an aggregate service and benefits greatly from autoscaling, says Site Reliability Engineer James Wen. Plus, he adds, “Before, teams would have to wait for an hour to create a new service and get an operational host to run it in production, but with Kubernetes, they can do that on the order of seconds and minutes.” In addition, with Kubernetes’s bin-packing and multi-tenancy capabilities, CPU utilization has improved on average two- to threefold.
“We saw the amazing community that’s grown up around Kubernetes, and we wanted to be part of that. We wanted to benefit from added velocity and reduced cost, and also align with the rest of the industry on best practices and tools.” — JAI CHAKRABARTI, DIRECTOR OF ENGINEERING, INFRASTRUCTURE AND OPERATIONS, SPOTIFY
What Industry Expert Say about Kubernetes:-
“Kubernetes is a great platform for machine learning because it comes with all the scheduling and scalability that you need.” — JÉRÉMIE VALLÉE, AI INFRASTRUCTURE LEAD AT BABYLON
“Giving a Kubernetes-based platform to our data scientists has meant increased security, increased innovation through empowerment, and a more affordable health service as our cloud engineers are building an experience that is used by hundreds on a daily basis, rather than supporting specific bespoke use cases.” — JEAN MARIE FERDEGUE, DIRECTOR OF PLATFORM OPERATIONS AT BABYLON
“There is no competitive edge over our competitors like Puma or Nike in running and operating a Kubernetes cluster. Our competitive edge is that we teach our internal engineers how to build cool e-comm stores that are fast, that are resilient, that are running perfectly.” — DANIEL EICHTEN, SENIOR DIRECTOR OF PLATFORM ENGINEERING AT ADIDAS
“Research teams can now take advantage of the frameworks we’ve built on top of Kubernetes, which make it easy to launch experiments, scale them by 10x or 50x, and take little effort to manage.” — CHRISTOPHER BERNER, HEAD OF INFRASTRUCTURE FOR OPENAI
While it is not without its challenges, most organizations find that the benefits outweigh the costs and that using Kubernetes provides some substantial and tangible benefits for their organization. Amidst the current digital transformation, organizations are desperately working to develop new, useful software that can be more quickly and efficiently deployed. These surveys indicate that Kubernetes is helping to make this possible by shortening development times and leading to faster deployment.
Experts suggest now may be the time to make the shift to Kubernetes if you haven’t already. While this will likely lead to some internal battles and a period of transition, the experts and the data indicate that it may be worth the growth pains and short-term struggles.
Thanks for reading.