千家信息网

kubernetes架构设计是怎么样的

发表于:2024-10-02 作者:千家信息网编辑
千家信息网最后更新 2024年10月02日,这篇文章将为大家详细讲解有关kubernetes架构设计是怎么样的,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。一.kubernetes集群包含有节点代理kubel
千家信息网最后更新 2024年10月02日kubernetes架构设计是怎么样的

这篇文章将为大家详细讲解有关kubernetes架构设计是怎么样的,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

一.kubernetes集群包含有节点代理kubelet和master组件(APIs, Scheduler, ect.)。一切都基于分布式的存储系统。

二.kubernetes集群架构图:

解析:

1.在这张系统架构图中,把服务分为运行在工作节点上的服务和组成集群级别控制板的服务。

2.kubernetes节点有运行应用容器必备的服务,而这些都是受master控制的。

3.docker是每个节点运行的基础,docker负责所有具体的镜像的下载和容器的运行。

4.kubernetes主要由以下几个核心组件组成:

a.etcd保存了整个集群的状态;

b.apiserver提供了资源操作的唯一入口,并提供认证、授权、访问控制、API注册和发现等机制;

c.controller manager负责维护集群的状态,如:故障检测、自动扩展、滚动更新等;

d.scheduler负责资源调度,按照预定的调度策略将Pod调度到相应的机器上;

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

f.Container runtime负责镜像管理及Pod和容器的真正运行;

g.kube-proxy负责为Service提供cluster内部的服务发现和负载均衡;

5.kubernetes的相关推荐的附加组件:

a.kube-dns负责为整个集群提供DNS服务;

b.Ingress-controller为服务提供外网入口;

c.Heapter提供资源监控;

d.Dashboard提供GUI;

e.Federation提供跨可用区的集群;

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

三、分层架构

kubernetes的设计理念和功能其实就是一个类似linux的分层架构,如下图:

1.核心层:kubernetes最核心的功能,对外提供API构建高层应用,对内提供插件式应用执行环境.

2.应用层:部署(无状态应用、有状态应用、批处理任务、集群应用等)和路由(服务发现、DNS解析等).

3.管理层:系统度量(如基础设施、容器和网络的度量),自动化(如自动扩展、动态provision等),以及策略管理(RBAC、Quota、PSP、Network policy etc.).

4.接口层:kubelet命令行工具、客户端SDK、集群.

5.生态系统:在接口层之上的庞大容器集群管理调度生态系统,可以划分为两个范畴:

a.kubenetes外部:日志、监控、配置管理、CI、CD、Workflow、FaaS、OTS应用、ChatOps等

b.kubenetes内部:CRI、CNI、CVI、镜像仓库、Cloud Provider、集群自身的配置和管理等

四、kubelet

kubelet负责管理Pods和它们上面的容器、images镜像、volumes、etc.

五、kube-proxy

每个节点也运行一个简单的网络代理和负载均衡。服务端点目前 是通过DNS或者环境变量,这些变量是用由服务代理所管理的端口来解析的。

六、kubenetes控制面板

kubenetes控制面板可以分为多个部分。目前它们都运行在一个master节点,为了达到高可用性,这需要改变,由不同部分一起协作提供一个统一的关于集群的视图。

七、etcd

所有master的持续状态都存在etcd的一个实例中。这可以很好地存储配置数据。因为有watch的支持,各部件协调中的改变都可以很快被察觉。

八、kubernetes API Server

API服务提供Kubernetes API的服务。这个服务试图通过把所有或者大部分的业务逻辑放到不止两只的部件中从而使其具有CRUD特性。它主要处理REST操作,在etcd中验证更新这些对象并最终存储。

九、scheduler

调度器把未调度的pod通过binding api绑定到节点上。调度器是可插拔可,并且支持多集群的调度,未来可能支持用户自定义的调度器。

十、kubenetes控制管理服务器

所有其它的集群级别的功能目前都是由控制管理器负责。如,端点对象是被端点控制器来更新。这些最终可分隔成不同的部件来让它们独自的可插拔。

replication controller是一种建立于简单的podAPI之上的一种机制。它最终将变成一种通用的插件机制。

关于"kubernetes架构设计是怎么样的"这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。

集群 服务 管理 调度 应用 控制 容器 节点 运行 架构 状态 系统 镜像 存储 设计 功能 机制 核心 端点 篇文章 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 统计数据库表数量 工厂网络安全认证 哪的软件开发培训好 北京潮流软件开发服务以客为尊 传感网络技术心得 远程办公网络安全意识教育长图 马鞍山门店管理软件开发外包公司 软件开发原生系统是什么意思 网络安全技能职业大赛黑龙江 青岛分享网络技术有限公司 嵌入式和网络安全前景 网络安全法46条解释 软件开发工程师的工资水平 社区平台软件开发 中国5g网络技术公司 阿里巴巴在上饶市建数据库 天龙电脑天部手游进不去服务器 扫描枪与数据库连接 网络安全法制在我国境内适用 和平精英云端管理无服务器 消防行业网络安全的行业标准 宜兴自动软件开发代理价钱 视频服务器连多少个终端 运用网络技术培养学生兴趣 阿里巴巴在上饶市建数据库 单片机软件开发是怎样的 育碧服务器连接异常 铝拓互联网科技有限公司 嵌入式服务器怎么样 计算机网络技术考造价
0