Understand the high availability deployment of Kubernetes in one article

[Guide] At present, both the official Kubernetes and the open source community provide a lot of excellent deployment tools, which greatly simplifies the difficulty of deploying Kubernetes. This article is not limited to mastering how to choose the appropriate tool to deploy a high-availability Kubernetes platform, but to learn Kubernetes in the deployment practice, have a preliminary macro understanding of Kubernetes, understand the components and architecture of Kubernetes, and the principles of high-availability solution design. It lays the foundation for subsequent cluster management, operation and maintenance, and problem diagnosis.

1 Introduction to Kubernetes

Kubernetes is Google's open source distributed container cluster management platform, which supports the orchestration of containerized applications across multiple hosts, and provides containerized applications with a series of complete functions such as fast deployment and operation, flexible resource scheduling, automatic service discovery, and dynamic scaling.

1.1 Kubernetes components

The Kubernetes component architecture is shown in the figure:

Master component

The Master node runs Kubernetes control plane services, mainly including the following components:

  • etcd is the most important storage system of Kubernetes. Almost all metadata of Kubernetes is stored in etcd. Therefore, the high availability of etcd is very important to the overall high availability of Kubernetes clusters.

  • api-server: Provides an open API interface. All user requests and interactions between components need to be served through the api-server, and mechanisms such as authentication, authorization, access control, API registration and discovery are provided.

  • kube-scheduler: pod scheduler for Kubernetes clusters,

Guess you like

Origin blog.csdn.net/weixin_57147647/article/details/131158693