目录
[44.kube apiserver和kube scheduler的作用是什么?](#44.kube apiserver和kube scheduler的作用是什么?)
45.请你说一下kubernetes针对pod资源对象的健康检测机制?
41.什么是Heapster?
Heapster是由每个节点上运行的Kubelet提供的集群范围的数据聚合器。
此容器管理工具在Kubernetes集群上本机支持,并作为pod运行,就像集群中的任何其他 pod一样。
因此,他基本上发现集群中的所有节点,并通过Kubernetes代理查询集群中Kubernetes节点的使用信息。
42.什么是Minikube?
Minikube是一种工具,可以在本地轻松运行Kubernetes。这将在虚拟机中运行单节点Kubernetes集群。
43.什么是Kubectl?
Kubectl是一个平台,您可以使用该平台将命令传递给集群。
因此,他基本上为CLI提供了针对Kubernetes集群运行命令的方法,以及创建和管理Kubernetes组件的各种方法。
44.kube apiserver和kube scheduler的作用是什么?
kube apiservice 遵循横向扩展架构,是主节点控制面板的前端。这将公开Kubernetes主节点组件的所有API,并负责在Kubernates节点和Kubernetes主组件之间建立通信。kuber scheduler负责工作节点上工作负载的分配和管理。
因此,他根据资源需求选择最合适的节点来运行未调度的pod,并跟踪资源利用率。他确保不在已满的节点上调度工作负载。
45.请你说一下kubernetes针对pod资源对象的健康检测机制?
k8s中对于pod资源对象的健康状态检测,提供了三类probe(探针)来执行对pod的健康监测:
livenessProbe探针:
可以根据用户自定义规则来判定pod是否健康,如果livenessProbe探针探测到容器不健康,则kubernetes会根据其重启策略来决定重启,如果一个容器不包含livenessProbe探针,则kubernete会认为容器的livenessProbe探针的返回值永远成功。
ReadinessProbe探针:
同样是可以根据用户自定义规则来判断pod是否健康,如果探测失败,控制器会将此pod从对应的service的endpoint列表中移除,从此不再将任何请求调度到此pod上,直到下次探测成功。
startupProbe探针
启动检查机制,应用一些启动缓慢的业务,避免业务长时间启动而被上面两类探针kill掉,这个问题也可以换另外一种方式解决,就是定义上面两类探针机制时,初始化时间定义的长一些即可。