Kubernetes概念之mater、node

2019-11-07
11

好久没写博客了,终于把重心找回来了,不过没有之前有斗志、有理想、有目标了、慢慢来。你若问我我最近几年的规划是什么,还真不知道。忽然发现摧毁一我的真的很简单。k8s也是一遍一遍的从入门到放弃,仍是要好好弄弄了。 docker

本文经过《Kubernetes权威指南》的概念部分学习总结 api

Kubernetes集群管理的两个角色Master、Node

一、Master

Master:Kubernetes里的Master指的是集群控制节点,每一个Kubernetes集群里须要有一个Master节点来负责整个集群的管理和控制,基本上Kubernetes的全部控制命令都发给他,他来负责具体的执行过程,在平时执行的命令基本上都是在master节点上运行的。Master一般为一台单独的服务,集群的话3台。
 
Master节点上运行着一组关键的进程:
1)Kubernetes API Server( kube-apiserver):提供了HTTP Reset接口的关键服务进程,是Kubernetes里全部资源的增、删、改、查等操做的惟一入口,也是集群控制的入口进程。
2)Kubernetes Controller Manager( kube-controller-manager):Kubernetes里全部资源对象的自动化控制中心,资源对象的大总管。
3)Kubernetes Scheduler( kube-schedule):负责资源调度(Pod调度)的进程,至关于调度室。
4)etcd服务:Kubernetes里全部资源对象的数据所有是保存在etcd中的。
 
 

二、Node

除了Master,Kubernetes集群中的其余集群被称为Node节点,Node节点能够是物理机,也能够是虚拟机。Node节点才是Kubernetes集群中的工做负载节点,每一个Node都会Master分配一些工做负载(Docker容器),当某个Node宕机时,其上的工做负载会被Master自动转移到其余节点上去。
 
每一个Node节点上都运行着如下一组关键进程:
kubelet:负责Pod对应容器的建立、启停等任务,同时与Master节点密切协做,实现集群管理的基本功能。
kube-proxy:实现Kubernetes Service的通讯与负责均衡机制的重要组件。
Docker Engine( docker):Docker引擎,负责本机容器建立和管理工做。
 
Node节点能够在运行期间动态增长到Kubernetes集群中。在默认状况下kubelet会向master注册本身,这也是Kubernetes推荐的Node管理方式。一旦Node被归入集群管理范围,kubelet进程就会定时向Master节点汇报自身的状态,如操做系统、Docker版本、机器的CPU和内存状况,以及当前有哪些Pod在运行等,这样Master就能够获知每一个Node的资源使用状况,并实现高效均衡的资源调度策略。而当某个Node超过指定时间没有汇报信息时,会被Mater认为失联,此时Node的状态就会被标为不可用(Node Ready)随后Master会触发“工做负载大转移”的自动流程。
 

评论