K8s 学习_组件说明_性能分析

一个角度分为:

1.k8s的组件分类

主要分为mater 组件 ,(api server,etcd,ControllerManager,schedule)

2.Node 组件

Node 主要负责容器的各种依赖环境,并接受Master管理,每个Node的构成:

Kubelete,Container Runtime,Kube-pxoxy.

3.核心组件

k8s 还依赖于一组的附件组件,通常是由第三方的提供的特定的应用程序。

1.KubeDNS (动态解析)

2.Dashboard:webUI

3.Heapster:容器的和节点的性能分析系统


另一个角度:

控制平面组件(Control Plane Components)

kube-apiserver

API 服务器是 Kubernetes 控制面的组件, 该组件公开了 Kubernetes API。 API 服务器是 Kubernetes 控制面的前端。

Kubernetes API 服务器的主要实现是 kube-apiserver。 kube-apiserver 设计上考虑了水平伸缩,也就是说,它可通过部署多个实例进行伸缩。 你可以运行 kube-apiserver 的多个实例,并在这些实例之间平衡流量。

etcd

etcd 是兼具一致性和高可用性的键值数据库,可以作为保存 Kubernetes 所有集群数据的后台数据库。

您的 Kubernetes 集群的 etcd 数据库通常需要有个备份计划。

kube-scheduler

控制平面组件,负责监视新创建的、未指定运行节点(node)的 Pods,选择节点让 Pod 在上面运行。

调度决策考虑的因素包括单个 Pod 和 Pod 集合的资源需求、硬件/软件/策略约束、亲和性和反亲和性规范、数据位置、工作负载间的干扰和最后时限。

kube-controller-manager

cloud-controller-manager

云控制器管理器是指嵌入特定云的控制逻辑的 控制平面组件。 云控制器管理器使得你可以将你的集群连接到云提供商的 API 之上, 并将与该云平台交互的组件同与你的集群交互的组件分离开来。

Node 组件 

kubelet

kube-proxy

容器运行时(Container Runtime) 

插件(Addons) 

DNS 

Web 界面(仪表盘)



参考资料:

https://www.w3cschool.cn/kubernetes/kubernetes-q8f93ns2.html