Kubernetes技术分享PPT课件_第1页
Kubernetes技术分享PPT课件_第2页
Kubernetes技术分享PPT课件_第3页
Kubernetes技术分享PPT课件_第4页
Kubernetes技术分享PPT课件_第5页
已阅读5页,还剩36页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、Kubernetes技术共享,体系结构介绍集群构建通用命令应用实例,2、Kubernetes介绍,10多年来谷歌严格保密的秘密武器Borg的开源版本,基于新容器技术的分布式体系结构领导方案。Borg是Google内部使用的大型群集管理系统,基于容器技术,旨在自动化资源管理并最大限度地利用多个数据中心中的资源。K8s是创新产品K8s,引领“一切以服务为中心,一切以服务为中心”的指导原则,是Go语言开发,是Docker的上层体系结构,就像Java和J2EE的关系一样。K8s是开放式开发平台,不限于任何语言3、Kubernetes的主要功能、K8s可在系统之间轻松管理执行容器应用程序部署、维护、扩展机制群集管理、安全保护、访问机制、多应用程序支持、服务注册、服务发现、智能负载平衡、错误发现、自我修复,K8s不仅支持Docker,还支持另一种容器技术Rocket。完全拥抱微服务体系结构使用k8s可随时迁移整个系统k8s系统具有强大的横向扩展功能通过k8s提供全面的管理工具,包括开发、部署测试、运行和维护监控5、K8s群集、6、K8s体系结构、7、K8s体系结构、8、主、群集控制管理节点,所有命令都通过主流程在整个群集中运行提供HttpRest界面的核心服务进程是kubernetes所有资源的添加、删除、更改和确认等操作的唯一门户,也是Kubernetescontrollermanager和Kubernetes所有资源对象的自动控制中心。可以理解为资源对象的“大型浏览器”Kubernetesscheduler(kube-scheduler)、资源调度(Pod调度)的进程,包括总线公司的“调度程序”etcdServer、Kubernetesscheduler(群集部署、没有与主服务器相同的系统)、9、Master、10、Master、11、etcd和etcd是高可用性密钥值存储系统,主要用于共享配置和服务发现。与ZooKeeper相比,etcd是由CoreOS开发并维护的轻量级etcd,受ZooKeeper和Doozer的启发,提供了与Go语言中编写的ZooKeeper类似的功能,并通过Raft一致性算法处理日志复制以确保强大的一致性。Raft是一种新的一致性算法,适用于分布式系统的日志复制,Raft通过选举方式实现一致性。etcd在Google的容器群集管理系统Kubernetes、开放源代码PaaS平台CloudFoundry和CoreOS的Fleet中也得到广泛应用。如何在分布式系统(如etcd)中管理节点间状态(旨在发现和注册群集环境中的服务)一直是一个问题。etcd提供数据TTL故障、数据更改监视、多值、目录监视、分布式锁定原子操作等,使您可以轻松跟踪和管理群集节点的状态、12和etcd。支持简单的: curl方式用户API(HTTP JSON)安全性: SSL客户端证书身份验证选项快速:单实例每秒1000次读取和写入能力可靠的: Raft确保了强大的一致性Etcd的应用程序方案包括服务发现、消息发布和订阅如果您熟悉ZooKeeper,则etcd将Kubernetes群集上除ZooKeeper的功能、13、Node、Master以外的其他系统称为Node节点,以前的版本也称为Kubernetes群集上的工作负载节点。每个节点由主节点分配工作量(Docker容器),如果一个节点关闭,主节点将自动将工作量转移到另一个节点,创建、启动和停止与节点对应的容器,同时与主节点紧密协作以实现集群管理的基本功能。一旦Node包含在集群管理中,kubelet进程就会向主节点报告其信息,这样主节点就可以了解每个Node的资源使用情况,并实施高效平衡的资源调度策略。不报告超过指定时间的信息的Node被Master判断为“断开连接”,Node状态显示为“不可用”,Master将触发“工作负载大转移”的自动过程。实现KubernetesService的通信和负载平衡机制的kube-proxy的重要组件:负责本机容器创建和管理的Docker engine、14、Node、15、Pod是最小分发单元,一个Pod由一个或多个容器组成同一Pod中的容器共享相同的网络命名空间,并且可以使用localhost相互通信。每个Pod都有一个称为“根容器”的特殊Pause容器,它还包含一个或多个紧密相关的用户业务容器。一个Pod中的容器可以直接与另一主机上的Pod容器通信。如果Pod所在的节点关闭,则此节点的所有Pod都将重新计划到其他节点。存储在Etcd中的常规Pod和静态Pod保存在特定节点上的特定文件中,并且仅在此节点上开始运行。DockerVolume是Kubernetes的PodVolume中选择所需的族。可以为每个Pod设置配额的计算机资源包括CPU和内存。请求,资源的最小请求;Limits,资源允许的最大数量;Pod、16、Pod、17、Pod、容器和节点关系、18、端点(IP Port)标识服务进程的接入点事件包括:事件最先发生的时间、最后一次迭代时间、迭代次数、发起者、发起者、Endpoint、Event、19、Service和Service是应用程序服务抽象,用于定义访问Pod逻辑集合和此Pod集合的策略。service agent Pod集合是分配群集IP地址的访问门户,用于将负载平衡传递到后端Pod上的容器。服务选择通过LableSelector提供服务的Pod集。在K8s集群中,微服务的负载平衡由Kube-proxy实现,K8s的每个节点实际上在kubernetes(我们经常提到的微服务体系结构的核心)中都有一个服务。分析、识别和建模系统的所有服务,最终通过微服务KubernetesService,戴尔系统由提供不同业务功能的多个独立微服务单元组成,通过TCP/IP相互通信,实现强大的分布式功能、灵活的可扩展性、容错、20、服务、21、服务通常,部署负载平衡器以访问它,然后打开此Pod集的外部服务端口(例如,8000)。然后,通过将这些Pod的端点列表添加到8000端口的转发列表,客户端可以通过负载平衡器的外部IP地址服务端口访问此服务。实际上,在节点上运行的kube-proxy是智能软件负载平衡器,它将对服务的请求转发到后端的Pod实例,并在内部实现服务的负载平衡和会话维护机制。Service分配全局唯一的虚拟IP地址,每个Servcie称为群集IP,而不是共享负载平衡器的IP地址。23、Service和NodeIPNode节点的IP地址是Kubernetes群集中每个节点的物理网卡的IP地址,它是实际存在的物理网络,属于此网络的所有服务器都可以通过此网络直接通信;PodIPPod的IP地址是根据DockerEngine在docker0桥的IP地址段分配的,通常位于不同节点的Pod可以相互通信,需要通过具有PodIP的虚拟双层网络进行通信,而实际TCP流量通过具有NodeIP的物理NIC进行通信。ClusterIPService的IP地址。功能包括:仅适用于KubernetesServcie对象,IP地址由Kubernetes管理和分配。无法Ping,因为没有要响应的“物理网络对象”。可以通过仅合并服务端口来配置特定的通信端口。节点IP网络、NodeIP域群集IP网络之间的通信采用由Kubernetes亲自设计的编程方式的特殊路由规则,与IP路由有很大区别。24、Label和Label可以附加到各种资源对象,一个资源对象可以定义任意数量的Label。定义资源上的Label等同于标记资源,然后通过LabelSelector查询和过滤具有特定Label的资源对象。通过将一个或多个标签捆绑到指定资源对象中,可以实现多维资源分组管理功能,从而使资源分配、调度、配置和分发等管理任务变得灵活轻松。LabelSelector示例:select * frompodwherepod sname= XXX ,env= yyy ,支持的运算符为=,=,in,notin;25,部署和升级Pod声明特定Pod的副本数在任何时间点都符合预期。Pod预计的副本数;用于过滤目标Pod的LabelSelector;Pod模板(template),用于在Pod副本数低于预期数量时创建新Pod;ReplicationController(RC)、26、下一代replication controlle,RC和RS的唯一区别在于对标签选择器的支持不同。RS支持新的基于集合的标签,RC仅支持基于等式的标签。ReplicationControlle仅支持基于等式的选择器(env=dev或environment!=qa)但是,replicas还支持新的基于集合的选择器(versionin(v1.0,v2.0)或envnotin(dev,qa),这对于复杂的操作和维护管理非常方便。ReplicaSet,27,更灵活、更强大的升级,具有回滚功能。在新版本中,正式建议使用ReplicaSet和Deployment代替RC,这两者90%相似,与RC相比,最大的升级之一是随时指导当前Pod“部署”进度。Deployment使用ReplicaSet,除非需要自定义升级功能或根本不需要升级Pod。通常,建议使用Deployment代替replicset。典型使用情形:创建Deployment对象以创建相应的ReplicaSet,并完成Pod副本创建过程。要验证部署任务是否已完成,请检查部署更新状态(Pod副本的数量是否达到了预期值)。更新部署以创建新Pod创建。(例如镜像升级)如果当前部署不稳定,请回滚到以前的部署版本。部署;部署。暂停或恢复。部署、28、Pod水平自动扩展、自动化、智能扩展或容量减少。Pod负载度量:cpuuid通常在一分钟内使用平均值,可以通过Heapster扩展组件获得此值。Pod本身的CPU利用率是Pod的当前CPU利用率除以PodRequest的值得出的。例如,如果PodRequest定义的值为0.4,当前Pod使用情况为0.2,则CPU利用率为50%。如果未定义PodRequest值,则无法使用CPUUtilizationPercentage自动执行Pod水平扩展。pod的共享目录,可以从多个容器(如每秒服务的相应请求书(TPS或QPS)、horizontalPodautoscaler (HPA)、29、数据卷等)中访问。在Pod上方定义,由一个Pod中的多个容器装载在特定文件目录下。与Pod生命周期相同。允许Pod中的多个容器共享文件,记录主机磁盘上的容器数据,将文件写入共享存储,将对象逻辑分配到不同的Namespace,通过设置不同的管理和控制策略(如不同的项目、用户),可以实现多租

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论