Kubernetes是一个可以移植、可扩展的开源平台,使用 声明式的配置 并依据配置信息自动地执行容器化应用程序的管理。在所有的容器编排工具中(类似的还有 docker swarm / mesos等),Kubernetes的生态系统更大、增长更快,有更多的支持、服务和工具可供用户选择。
创新互联专注为客户提供全方位的互联网综合服务,包含不限于网站建设、网站设计、海北州网络推广、微信小程序定制开发、海北州网络营销、海北州企业策划、海北州品牌公关、搜索引擎seo、人物专访、企业宣传片、企业代运营等,从售前售中售后,我们都将竭诚为您服务,您的肯定,是我们最大的嘉奖;创新互联为所有大学生创业者提供海北州建站搭建服务,24小时服务热线:13518219792,官方网址:www.cdcxhl.com
Kubernetes分有两个方面:工作节点和控制平面。工作节点是实际的容器化应用程序以及必要的Kubernetes工具所在的位置。控制平面是管理集群工具所在的位置。图1对此架构进行了高层次的研究。
如图一所示,该体系结构分为工作节点和负责运行工作负载以及运行管理工具的头节点。
两种情况下的节点都是在虚拟机或实际的机器中执行的。
需要注意的是,Kubernetes底层基础设施是运行工作节点工作负载时可用的资源(计算、内存、磁盘和网络),但它并不直接控制它们。Kubernetes负责扩展工作负载,但更高级别的机制(如公共云自动扩展或手动干预)负责调整节点的可用性。因此,可以使用控制器与外部系统进行交互。
图2展示了Kubernetes Worker节点的基本元素。
Kubelet
kubelet是运行在工作节点上的一个“小”程序,负责在控制平面和节点之间进行平衡。kubelet核心目的是执行pods上来自头节点集群的指令,并报告工作负载当前的状态。
Kube Proxy
Kube Proxy负责在节点上实施网络规则,并允许进出节点的流量。
Kube Proxy不同于入口,入口在集群级别操作,并定义进入集群的网络路由规则。
Pod
Pod是节点上的离散工作单元,具有复制性。它们是封装一个或多个容器化应用程序的抽象。Pod可以对一起运行的容器进行分组和隔离,并且同一台机器上的pod之间也可以通信。容器和Pod之间的关系由Kubernetes部署描述符控制。
Pod通常作为ReplicaSet的一部分进行配置和部署。ReplicaSet定义Pod所需的运行时特征,并使Kubernetes工作以保持该状态。ReplicaSet通常由Deployment定义,Deployment定义了ReplicaSet参数和管理集群时要使用的方法(即pod是更新还是重新创建)。
Sidecar
在Pod级别,额外的功能是通过Sidecar插件实现的。Sidecar可以处理诸如Pod级别的日志记录和信息收集之类的任务。
图3更详细地介绍了工作程序节点中的Pod。
Kubernetes的运行流程是怎样的?Kubernetes的运行流程是怎样的?
接下来到了控制器端,了解Kubernetes如何操作来控制集群的操作。
图4详细介绍了头节点组件。
Kubernetes的运行流程是怎样的?Kubernetes的运行流程是怎样的?
最容易理解的组件是etcd(发音为“ et-cee-dee”)。Etcd是一个分布式对象存储,充当整个集群的配置和状态记录数据库。
API服务器(API Server)是集群的中央通信机制。当控制平面、工作节点和管理员通过Kubernetes命令行工具(如kubectl)或其他UI应用配置更改时,API Server则可以代理它们之间的交互。
Scheduler
调度程序(Scheduler)负责标识运行Pod的节点。根据Pod的特性和可用节点的现有状态所使用的方法是不同,但是其目标都是达到自定义编写的程度。调度程序在执行工作时与API服务器进行交互。
控制器(Controller)组件负责将集群保持在配置时所需的状态,并在集群偏离控制时将其移向该状态。控制器的作用就像一种恒温器,它指定所需的状态,然后工作来维持它。在Kubernetes中,可以创建一个对象,用于记录在etcd中的持久实体。然后,控制器将执行操作以确保对象具有所需的属性。
例如,ReplicaSet(上面讨论过)根据使用标准定义运行pod。相对于该ReplicaSet的群集的实际状态是状态。ReplicaSet是对象,指定的pod计数是spec。集群相对于该ReplicaSet的实际状态是status。控制器从集群接收关于此状态的一致报告,并通过创建或销毁pod来采取措施使状态与规范一致。
最后一个组件是映像存储库(也称为图像注册表)。此组件存在于集群之外,管理员和控制平面可以访问它以下载所需的容器定义。注册中心由包括Docker Hub在内的各种组织托管,可以是公共的,也可以是私有的。主要的云提供商都为企业提供托管存储库。
现在已经了解了Kubernetes架构以及Kubernetes是如何实现的。由于其部署、管理和扩展基于容器的应用程序,可见Kubernetes不是一个简单的系统。Kubernetes具有高度的可配置性和灵活性,可以处理意想不到的情况。
Kubernetes是当前软件架构方法中的最突出的技术之一。因此,对DevOps、容器、云本地应用程序和微服务体系结构感兴趣的人来说,这些Kubernetes的知识都是必不可少的。
分享题目:简单讲解一下Kubernetes的运行流程
当前网址:http://www.shufengxianlan.com/qtweb/news45/489445.html
网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联