What is Kubernetes

What is Kubernetes

No alt text provided for this image

In a nutshell, Kubernetes is a system for deploying applications and more efficiently utilizing the containerized infrastructure that powers the apps. Kubernetes can save organizations money because it takes less manpower to manage IT; it makes apps more resilient and performant.

You can also run Kubernetes on-premises or within public Cloud. AWS, Azure, and GCP offer managed Kubernetes solutions to help customers get started quickly and efficiently operate K8s apps. Kubernetes also makes apps a lot more portable, so IT can move them more easily between different clouds and internal environments.

In a nutshell, Kubernetes is the new Linux OS of the Cloud.

Characteristics of Kubernetes

No alt text provided for this image

Modern applications are increasingly based on the use of containers, which are packaged microservices with their dependencies and configurations. Kubernetes is an open source software to implement and manage those containers on a large scale. It enables any number of servers of many types at the same time, separated by distance, to share workloads for a common tenant.

Is Kubernetes getting adopted in enterprises?

In two words: Hell Yeah!

Several datapoints show rapid Kubernetes adoption. Sumo Logic’s fourth annual Continuous Intelligence Report on "The State of Modern Applications and DevSecOps in the Cloud” highlights some cool adoption data on Kubernetes within enterprises. 

No alt text provided for this image

Kubernetes offers these capabilities to a business:

  • Multi-cloud flexibility: As more enterprises run on multi-cloud platforms, they benefit from Kubernetes, as it easily runs any application on any public cloud service or a combination of public and private clouds.
  • Faster time to market: Because Kubernetes can help the development team break down into smaller units to focus on single, targeted, smaller micro-services, these smaller teams tend to be more agile.
  • IT cost optimization: Kubernetes can help a company reduce infrastructure costs quite dramatically if it is operating on a large scale.
  • Improved scalability and availability: Kubernetes serves as a critical management system that can scale an application and its infrastructure whenever the workload increases, and reduce it as the load decreases.
  • Effective migration to the cloud: Kubernetes can handle rehosting, re-platforming and refactoring. It offers a seamless route to effectively move an application from the facility to the cloud.

Benefits and disadvantages for companies

No alt text provided for this image

In summary, and having seen all the above information, Kubernetes has the following benefits for companies:

  • Using Kubernetes and its huge ecosystem can improve productivity.
  • Using Kubernetes along with good native cloud technology attracts talent. For example, many software engineers want to work in companies that use modern and interesting technologies.
  • Kubernetes is a feasible solution for many years to come.
  • Kubernetes helps an application run more stably.
  • Kubernetes can be cheaper than other alternatives, especially if you have large computing resources.

Disadvantages:

  • Kubernetes can be too much for simple applications:
  • Kubernetes is very complex and can reduce productivity
  • The transition to Kubernetes can be cumbersome
  • Kubernetes can be more expensive than other alternatives

Kubernetes and Docker: better if they work together:

No alt text provided for this image

Kubernetes and Docker are two of the words you hear most in conversations about DevOps today. Docker is a tool that allows you to contain and run applications, and Kubernetes provides a platform to orchestrate or manage these containers, since managing thousands of containers manually with Docker CLI is a very costly task.

you can use Kubernetes with Docker for:

  • Improve infrastructure security and high application availability: Applications will remain connected, even if some of the nodes are disconnected.
  • Make the application more scalable: If the application begins to receive much more load and needs to scale horizontally to provide a better user experience, it is easy to deploy more containers or add nodes to a Kubernetes cluster.

Let's look into the case study of tinder:

No alt text provided for this image

Why:

Due to high traffic volume, Tinder’s engineering team faced challenges of scale and stability. And they realized that the answer to their struggle is Kubernetes. Tinder’s engineering team migrated 200 services and ran a Kubernetes cluster of 1,000 nodes, 15,000 pods, and 48,000 running containers. While the migration process wasn't easy, the Kubernetes solution was critical to ensure smooth business operations going further.

How:

Starting January 2018, we worked our way through various stages of the migration effort. We started by containerizing all of our services and deploying them to a series of Kubernetes hosted staging environments. Beginning October, we began methodically moving all of our legacy services to Kubernetes. By March the following year, we finalized our migration and the Tinder Platform now runs exclusively on Kubernetes.

Building Images for Kubernetes:

There are more than 30 source code repositories for the microservices that are running in the Kubernetes cluster. The code in these repositories is written in different languages (e.g., Node.js, Java, Scala, Go) with multiple runtime environments for the same language.

No alt text provided for this image
No alt text provided for this image

BY - SHREEJA RAJ










要查看或添加评论,请登录

Shreeja Raj的更多文章

  • Shell Scripting

    Shell Scripting

    Shell Scripting is an open-source computer program designed to be run by the Unix/Linux shell. Shell Scripting is a…

  • What is Azure Kubernetes Service?

    What is Azure Kubernetes Service?

    AKS is an open-source fully managed container orchestration service that became available in June 2018 and is available…

    2 条评论
  • Neural Networks and Industry Use Cases

    Neural Networks and Industry Use Cases

    Neural networks ??? Neural networks reflect the behavior of the human brain, allowing computer programs to recognize…

  • Integrating Amazon RDS with WordPress

    Integrating Amazon RDS with WordPress

    Amazon Relational Database Service (RDS) Amazon Relational Database Service (Amazon RDS) makes it easy to set up…

  • Building High Availability Architecture with AWS CLI

    Building High Availability Architecture with AWS CLI

    Welcome you all to my article based on Creating High Availability Architecture with AWS CLI. Have you ever thought that…

  • 5 Mind-Blowing Ways Facebook Uses Machine Learning

    5 Mind-Blowing Ways Facebook Uses Machine Learning

    What comes first to mind when you think about social networking? It’s Facebook of course! Facebook is actually not even…

  • AWS CASE STUDY

    AWS CASE STUDY

    Millions of customers- including the fastest growing startups, largest enterprises, and leading government agencies -…

  • What is Big Data?

    What is Big Data?

    Big data is a collection of large datasets that cannot be processed using traditional computing techniques. It is not a…

社区洞察

其他会员也浏览了