Kubernetes核心组件介绍

Kubernetes核心组件介绍Kubernetes master核心组件介绍

Master组件提供集群的管理控制中心。通常在一台VM/机器上启动所有Master组件,并且不会在此VM/机器上运行用户容器。

kube-apiserver 用于暴露Kubernetes API。任何的资源请求/调用操作都是通过kube-apiserver提供的接口进行;

ETCD 是Kubernetes提供默认的存储系统,保存所有集群数据,使用时需要为etcd数据提供备份计划;

kube-controller-manager 运行管理控制器,它们是集群中处理常规任务的后台线程;一个资源对应一个控制器。这些控制器包括:

节点 (Node)控制器

副本(Replication)控制器:负责维护系统中每个副本中的pod。

端点(Endpoints)控制器:填充Endpoints对象(即连接Services&Pods)。

Service Account和Token控制器:为新的Namespaces创建默认帐户访问API Token。

kube-scheduler 节点调度,监视新创建没有分配到Node的Pod,为Pod选择一个Node;

Kubelet 负责维护容器的生命周期,同时也负责Volume(CVI)和网络(CNI)的管理;

kube-proxy 通过在主机上维护网络规则并执行连接转发来实现service(Iptables/ipvs);

Container Runtime 负责镜像管理以及Pod和容器的真正运行(Docker/Rkt/Pouch/Kata)

 

Kubernetes node 核心组件介绍

节点组件运行在Node,提供Kubernetes运行时环境,以及维护Pod。

kubelet负责维护容器的生命周期,同时也负责Volume(CVI)和网络(CNI)的管理;

kube-proxy通过在主机上维护网络规则并执行连接转发来实现service(Iptables/ipvs);

Container Runtime负责镜像管理以及Pod和容器的真正运行(Docker/Rkt/Pouch/Kata)

除了核心组件,还有一些推荐的Add-ons:

coredns/kube-dns负责为整个集群提供DNS服务,kube-dns最新版本被弃用了。

Ingress对外提供七层服务的访问

Heapster/metries-server提供资源监控,Heapster最新版本被弃用了。

Dashboard提供GUI

Federation提供跨可用区的集群

Fluentd-elasticsearch提供集群日志采集、存储与查询


上一篇:redis持久化(persistence)


下一篇:CentOS环境下tomcat启动超级慢的解决方案