浅谈kubernetes:master节点和node节点
admin
2023-04-04 17:03:49
0

kubernetes 整个架构分为master节点和node节点,其中master节点负责pod的调度,pod的replication的数量node,endpoint以及服务账户以及令牌的管理等等;而node节点主要负责container创建,服务的代理以及其他相关应用。

Master节点

Master 组件提供的集群控制。Master 组件对集群做出全局性决策(例如:调度),以及检测和响应集群事件(副本控制器的replicas字段不满足时,启动新的副本)。

Master 组件可以在集群中的任何节点上运行。然而,为了简单起见,设置脚本通常会启动同一个虚拟机上所有 Master 组件,并且不会在此虚拟机上运行用户容器(高可用)

Master节点包括:kube-apiserver,kube-control-manager,kube-schduler,etcd,相关插件应用以及底层云控制器,其中:

1. kube-apiserver

kube-apiserver对外暴露了Kubernetes API。它是的 Kubernetes 前端控制层。它被设计为水平扩展,即通过部署更多实例来缩放

2. etcd数据库

etcd主要为kubernetes的后端数据库,就与k/v方式存储,所有的k8s集群数据都存放在此处。

3. kube-controller-manager

kube-controller-manager运行控制器,它们是处理集群中常规任务的后台线程。逻辑上,每个控制器是一个单独的进程,但为了降低复杂性,它们都被编译成独立的可执行文件,并在单个进程中运行。这些控制器包括:

节点控制器: 当节点移除时,负责注意和响应。

副本控制器: 负责维护系统中每个副本控制器对象正确数量的 Pod。

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

服务帐户和令牌控制器: 为新的命名空间创建默认帐户和 API 访问令牌
4. 云控制器管理器-(cloud-controller-manager)

cloud-controller-manager是用于与底层云提供商交互的控制器。云控制器管理器可执行组件是 Kubernetes v1.6 版本中引入的 Alpha 功能。

cloud-controller-manager仅运行云提供商特定的控制器循环。您必须在kube-controller-manager 中禁用这些控制器循环,您可以通过在启动 kube-controller-manager 时将 --cloud-provider 标志设置为external来禁用控制器循环。

cloud-controller-manager允许云供应商代码和Kubernetes核心彼此独立发展,在以前的版本中,Kubernetes 核心代码依赖于云提供商特定的功能代码。在未来的版本中,云供应商的特定代码应由云供应商自己维护, 并与运行 K8s 的云控制器管理器相关联。具有云提供商依赖关系:

节点控制器: 用于检查云提供商以确定节点是否在云中停止响应后被删除

路由控制器: 用于在底层云基础架构中设置路由

服务控制器: 用于创建,更新和删除云提供商负载平衡器

数据卷控制器: 用于创建,附加和装载卷,并与云提供商进行交互以协调卷
5. kube-scheduler

kube-scheduler监视没有分配节点的新创建的 Pod,选择一个节点供他们运行,即pod的调度

6. 插件(addons)

插件是实现集群功能的 Pod 和 Service。 Pods 可以通过 Deployments,ReplicationControllers 管理。插件对象本身是受命名空间限制的,被创建于 kube-system 命名空间。Addon 管理器用于创建和维护附加资源。

主要包括以下插件:

  1. DNS域名注册服务

为 Kubernetes 服务提供DNS记录,Kubernetes 启动的容器自动将 DNS 服务器包含在 DNS 搜索中。

  1. dashboard用户界面

为kubernetes集群提供一个状态概览的UI界面。

3.容器监控

容器资源监控将关于容器的一些常见的时间序列度量值保存到一个集中的数据库中,并提供用于浏览这些数据的界面

4.日志采集

负责将容器的日志数据保存到一个集中的日志存储中,该存储能够提供搜索和浏览接口。

node节点

node节点组件在每个节点上运行,维护运行的 Pod 并提供 Kubernetes 运行时环境。其中包括以下组件:

1. kubelet

kubelet是主要的节点代理,它监测已分配给其节点的 Pod(通过 apiserver 或通过本地配置文件),提供如下功能:挂载 Pod 所需要的数据卷(Volume)。

1.下载 Pod 的 secrets。

2.通过 Docker 运行(或通过 rkt)运行 Pod 的容器。

3.周期性的对容器生命周期进行探测。

4.通过创建镜像Pod(Mirror Pod) 将 Pod 的状态报告回系统的其余部分。

5.将节点的状态报告回系统的其余部分
2. kube-proxy

kube-proxy通过维护主机上的网络规则并执行连接转发,实现了Kubernetes服务代理

3. container runtime interface

运行容器的cri,比如:container 或者rkt

4. supervisord

supervisord 是一个轻量级的进程监控系统,可以用来保证 kubelet 和 docker 运行。

5. Fluentd

fluentd 是一个守护进程,它有助于提供集群层面日志 集群层面的日志

全局组件

全局组件主要指的是CNI,即容器网络,它贯穿整个kubernetes集群,不管master节点应用还是node节点应用都必须同处于一个网络,从而保证整个服务正常访问!

以上就是整个k8s节点相关的功能介绍,具体介绍请参考kubernetes官方文档!

相关内容

热门资讯

法国颁布归还非法所获文物法律,... 根据法国政府10日发布的公报,法国总统马克龙9日颁布了关于归还非法所获文物的法律。相关法案于7日在法...
德乌将联合生产航程达1500公... 新华社基辅5月11日电 (记者李东旭)正在乌克兰首都基辅访问的德国国防部长鲍里斯·皮斯托里乌斯11日...
特朗普:与伊朗停火协议已“岌岌... 美国总统特朗普11日表示,目前与伊朗的停火协议正处于“岌岌可危”的状态。特朗普还称,将对伊朗取得“彻...
老人喝农药后医护误判死亡?官方... 近日,网传“我县一老人喝农药后医护人员未检查即认为老人已死亡”。对此,我县高度重视,立即成立由卫生健...
张凌赫、刘宇宁或被邀请赴台交流 5月11日,据中国新闻网报道,台北演艺经纪文化交流协会创会理事长王祥基表示,今年将力邀张凌赫、刘宇宁...
台湾演员赴陆偶遇“如花”高喊“... 据台媒TVBS,曾演出《破事精英第二季》的台湾演员萧子一,日前在中国大陆横店影视城巧遇景区知名NPC...
东盟“不选边”走到尽头? 第48届东盟峰会落幕,中东冲突外溢、美国关税施压、内部矛盾凸显,东盟陷入“经济要救生、安全走钢丝”的...
17岁高中生写作业至凌晨,外出... 5月11日,据青海大通县融媒体中心消息:大通县公安局表示,5月8日6时15分,大通县公安局桥头派出所...
天猫“国货严选”纯棉一次性内裤... 淘宝天猫国货严选旗舰店内一次性内裤宣称“纯棉”,“假一赔十”,实际收到商品为“100%聚酯纤维”。近...
字节砍掉30%的AI项目?背后... 来源:市场资讯 (来源:钛媒体APP) 5月9日,一则关于字节跳动AI战略的消息,在社交媒体上迅速发...