|Kubernetes Make you run software on thousands of computer nodes as if all of these nodes are single big nodes . It abstracts the underlying infrastructure , This simplifies the development of applications at the same time 、 Deploy , And the management of the development and operation and maintenance team .|
The whole system consists of a master node and several working nodes . Developers submit an application list to the master node , Kubemetes They are deployed to the working nodes of the cluster . The node in which component is deployed is not of concern to developers and system administrators .
Kubemetes It can be seen as an operating system of a cluster , It reduces the mental burden that developers have to implement in their applications some infrastructure related services . They are now dependent on Kubemetes To provide these services , Including service discovery 、 Capacity expansion 、 Load balancing 、 Since the recovery , Even the election of leaders . Application developers can therefore focus on implementing the functions of the application itself without wasting time thinking about how to integrate applications and infrastructure .
At the hardware level , One Kubernetes A cluster consists of many nodes , These nodes are divided into two types , Master node , It carries Kubernetes Control and manage the control panel of the whole cluster system . And the work node , They run the application that the user actually deployed .
The control panel is used to control the cluster and make it work . It contains multiple components , Components can run on a single master node or deployed on multiple master nodes through replicas to ensure high availability .
Kubernetes API The server , You and other control panel components communicate with it ; Provides HTTP Rest The key service process of the interface , yes Kubernetes Increase in all resources 、 Delete 、 Change 、 Check the only access to the operation , It is also the cluster control entry process .
Scheculer , It schedules your application （ Assign a work node to each deployable component of the application 〕.Controller Manager , It performs cluster level functions , Like copying components 、 Keep track of work nodes 、 Failed to process nodes, etc ; yes Kubernetes Automation control center of all resource objects in , Housekeeper can be understood as resource object .etcd , A reliable distributed data store , It can persist the cluster configuration ;Master There is often a etcd server process , because Kubernetes The data of all resource objects in is stored in etcd Medium .
Kubernetes Most of the concepts in Node、Pod、Replication Controller、Server、Deploymeng、Job、DaemonSet Can be regarded as a kind of resource object , Almost all resource objects can pass the Kubernetes Provided kubectl Tool execution increases 、 Delete 、 Change 、 Check the operations such as , And save it in etcd Medium persistent storage . From this point of view ,Kubernets In fact, it is a highly automatic resource control system , It's tracking and comparing etcd The difference between the expected state of resources stored in storage and the actual resource state in the current environment can realize the advanced functions of automatic control and automatic error correction .
Pod: yes kubernetes The most important and fundamental concept . Every Pod There will be a “ Root container ”, It also contains one or more closely connected business containers .
Kubernetes For each Pod All assigned the only IP Address , be called PodIP, One Pod Multiple containers in share PodIP Address . The underlying network is required to support any two in the cluster Pod Direct communication between , Usually, the virtual two-layer network technology is used to realize (Flannel).
This paper addresses ：https://www.linuxprobe.com/k8s-summary-basic.html