版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
为什么学习Kubernetes目录01任务为什么学习Kubernetes学习目标【知识目标】●了解Kubernetes常用功能;●
了解Kubernetes优势与发展前景1为什么学习Kubernetes为什么学习Kubernetes1支持用户在虚拟机及硬件上运行程序支持用户只需要编写一次就能在所有类型的云供应商及私有云上运行Kubernetes成为继Linux、Docker后最受欢迎的第三大平台的同时,也成为云计算领域的主流应用。流行的Kubernetes为什么学习Kubernetes主要技能要求就是Kubernetes以及Kubernetes周边生态技术,比如Prometheus监控系统、EFK日志管理平台和Istio微服务等。1薪资高为什么学习Kubernetes企业需要加快数字化创新,夯实智能社会新基础设施,云原生技术应运而生。随着容器的快速发展,容器管理工具Kubernete也应运而生,目前不仅百度、京东、阿里、google等大公司在使用Kubernetes,一些中小企业也开始把业务迁移到Kubernete中,作为运维、开发、测试或者架构师来说,必须要学习这项技术,才能在行业内拥有过硬的的技术储备,才能实现升职加薪的梦想。1发展前景好为什么学习Kubernetes知名互联网公司都在使用Kubernetes,如:京东百度阿里巴巴腾讯美团谷歌1业界认可度高为什么学习KubernetesKubernetes提供一个可弹性运行分布式系统的框架。Kubernetes能满足扩展要求、应用的故障转、提供部署模式等。1功能强大为什么学习KubernetesKubernetes常用功能:服务发现和负载均衡存储编排自动部署和回滚自动完成装箱计算自我修复密钥与配置管理1功能强大为什么学习Kubernetes功能齐全的UI界面1强大的生态体系为什么学习Kubernetes全方位的立体监控系统1强大的生态体系为什么学习Kubernetes功能完备的日志收集平台1强大的生态体系ThankYOU!Kubernetes简介目录01任务Kubernetes简介与功能Docker容器技术02任务03任务Kubernetes发展历史学习目标【知识目标】●了解Docker容器的优势与缺点;●
了解容器编排引擎Kubernetes;●
了解kubernetes发展历史。【技能目标】●
能够掌握Kubernetes容器编排技术特点;●
能够自己拓展kubernetes知识。1Docker容器技术Docker容器技术Docker提供了一种将应用程序安全、隔离运行的一种方式,能够将应用程序依赖和库文件打包在一个容器中,后续在任何地方运行起来即可。特点:其包含了应用程序所依赖相关环境,一次构建,任意运行(buildonce,runanywhere)。1Docker容器技术DockerDaemon:容器管理组件,守护进程,负责容器,镜像,存储,网络等管理DockerClient:容器客户端,负责和DockerDaemon交互,完成容器生命周期管理DockerRegistry:容器镜像仓库,负责存储,分发,打包DockerObject容器对象:主要包含container和images1Docker组成Docker容器技术容器给应用程序开发环境带来很大的便利,从根本上解决了容器的环境依赖,打包等问题,然而,Docker带来的容器打包的便利,同时也带来了以下的挑战:容器如何调度,分发多台机器如何协同工作Docker主机故障时应用如何恢复如何保障应用高可用,横向扩展,动态伸缩1Docker的挑战2Kubernetes简介与功能2Kubernetes简介与功能为什么Kubernetes是如此有用?应用系统架构的三个发展阶段物理服务器部署应用;分布式和虚拟化技术替代物理服务器,满足企业所需的算力规模;应用容器化部署。2Kubernetes简介与功能容器的优势敏捷应用程序的创建和部署持续开发、集成和部署关注开发与运维的分离跨开发、测试和生产的环境一致性跨云和操作系统发行版本的可移植性以应用程序为中心的管理松散耦合、分布式、弹性、解放的微服务2Kubernetes简介与功能Kubernetes简介Kubernetes是一个可移植、可扩展的开源平台,用于管理容器化的工作负载和服务,可促进声明式配置和自动化。k8s这个缩写是因为k和s之间有八个字符的关系。Google在2014年开源了Kubernetes项目。Kubernetes拥有一个庞大且快速增长的生态,其服务、支持和工具的使用范围相当广泛。2Kubernetes简介与功能三大容器编排引擎DockerSwarmApacheMesosGoogleKubernetesKubernetes已战胜Swarm,Mesos成为容器编排的行业标准。Kubernetes简介与功能Servicediscoveryandloadbalancing,服务发现和负载均衡Storageorchestration,存储编排Automatedrolloutsandrollbacks,自动发布与回滚2Kubernetes简介与功能Automaticbinpacking,自动资源调度Self-healing,内置的健康检查策略Secretandconfigurationmanagement,密钥和配置管理Batchexecution,批处理执行Horizontalscaling,横向扩展功能23Kubernetes发展历史3Kubernetes发展历史Kubernetes发展史k8s的发展经历了几个关键点,3Kubernetes发展历史Kubernetes容器运行时在Kubernetes集群内部,有一个叫做容器运行时的东西,负责拉取镜像和运行容器。从kubernetesv1.24起kubernetes官方不再对dockershim进行维护。即从kubernetesv1.24开始不再使用docker。3Kubernetes发展历史实现Kubernetes使用docker可以在kubelet和docker之间加上一个中间层cri-docker。一头通过CRI跟kubelet交互,另一头跟dockerapi交互缺点明显:调用链更长,效率更低。Kubernetes官网https://Kubernetes.io/https://Kubernetes.io/zh/ThankYOU!Kubernetes应用场景目录01任务Kubernetes应用场景学习目标【知识目标】●了解kubernetes的应用场景。1Kubernetes应用场景Kubernetes应用场景1、疾病疫情预测基于人们的搜索情况、购物行为预测大面积疫情爆发的可能性,如Google成功预测冬季流感。1Kubernetes应用场景2、交通行为预测基于用户和车辆的LBS定位数据,分析人车出行的个体和群体特征,进行交通行为的预测。交通部门可预测不同时间点不同道路的车流量进行智能的车辆调度,或应用潮汐车道;用户则可以根据预测结果选择拥堵几率更低的道路。1Kubernetes应用场景3、HDFSonKubernetesHDFS主要包括Datanode,Namenode和Journalnode三个组件。在Kubernetes中进行部署时,由于Datanode需要存储HDFS中的数据,对磁盘要求非常高,所以在Kubernetes中部署时Datanode采用DaemonSet的方式进行部署,每个存储节点部署一个Datanode实例。而Namenode和Journalnode由于需要保持名称不变,在Kubernetes中采用StatefulSet的方式进行部署。1Kubernetes应用场景4、诺基亚:通过Kubernetes实现5G技术落地实践采用容器化、Kubernetes和其他云原生技术,解决再不同的基础架构上运行相同的产品,而无需更改产品本身的问题1Kubernetes应用场景云原生应用微服务架构大规模数据处理容器化应用程序多云环境DevOps1Kubernetes应用场景DevOps物联网(IoT)边缘计算混合云多租户1ThankYOU!Kubernetes架构目录01任务Kubernetes高可用架构Kubernetes整体架构02任务学习目标【知识目标】●了解kubernetes架构的组成;●
了解kubernetes高可用架构的组成。【技能目标】●
能够掌握各节点的主要组件及其功能;●
能够规划高可用集群架构。1Kubernetes整体架构Kubernetes整体架构Kubernetes的物理架构是master/node模式,master节点是集群的管理节点,主要用于暴露API、调度部署和对节点进行管理。node工作节点主要是运行容器的。1Kubernetes整体架构kube-api-server:提供Kubernetesapi,负责集群所有接入请求,提供资源操作的唯一入口,并将操作对象持久化到etcd中。etcd:元数据信息存储,主要用于存储Kubernetes集群状态的数据,是一个高可用的键值数据库。1master节点组件Kubernetes整体架构kube-controller-scheduler:集群资源调度,主要负责Kubernetes集群中pod的调度的
。kube-controller-manager:集群状态的一致性,负责集群内的Node、Pod副本、服务端点(Endpoint)、命名空间(Namespace)、服务账号(ServiceAccount)、资源定额(ResourceQuota)的管理。1master节点组件Kubernetes整体架构cloud-controller-manager:云控制器管理器,用于公有云的接入实现,提供节点管理(node),路由管理,服务管理(LoadBalancer和Ingress),存储管理(Volume,如云盘,NAS接入),需要由公有云厂商实现具体的细节,Kubernetes提供实现接口的接入。1master节点组件Kubernetes整体架构ContainerRuntime:容器运行时,负责实现container生命周期管理,如Docker,Containerd,CRI-O。kube-proxy:是Kubernetes中负责网络代理和服务发现的重要组件,它通过维护代理规则表以及负载均衡功能,实现集群内部服务的可靠通信和高可用性。1node节点组件Kubernetes整体架构kubelet:负责镜像和pod的管理,每个Node节点上的kubelet定期就会调用APIServer的REST接口报告自身状态,APIServer接收这些信息后,将节点状态信息更新到etcd中。kubelet也通过APIServer监听Pod信息,从而对Node机器上的Pod进行管理,如创建、删除、更新Pod。1node节点组件Kubernetes整体架构DNS组件:由kube-dns或coredns实现集群内的名称解析。Kubernetes-dashboard:用于图形界面管理。
网络组件:如Calico,是一套开源的网络和网络安全方案,用于容器、虚拟机、宿主机之间的网络连接,可以用在Kubernetes、OpenShift、DockerEE、OpenStrack等PaaS或IaaS平台上。1其他组件Kubernetes整体架构容器运行时:如Docker,负责启动容器的。服务外部接入,通过ingress实现七层接入,由多种controller控制器组成
traefik
nginxingresscontroller
haproxyingresscontroller
公有云厂商
ingresscontroller1其他组件Kubernetes整体架构监控系统用于采集node和pod的监控数据
metric-server核心指标监控
prometheus自定义指标监控,提供丰富功能日志采集系统,用于收集容器的业务数据,实现日志的采集,存储和展示,由EFK实现
Fluentd日志采集
ElasticSearch日志存储+检索
Kiabana数据展示1其他组件2Kubernetes高可用架构2Kubernetes高可用架构集群内部的高可用需要实现基础组件的高可用,其中最重要的就是etcd和apiserver,schedule和controller-mansger也不可缺少2Kubernetes高可用架构高可用架构组成Master的kube-apiserver、kube-controller-mansger和kube-scheduler服务至少三个结点的多实例方式部署。ETCD至少以3个结点的集群模式部署。2Kubernetes高可用架构流行的KubernetesMaster、ETCD集群启用基于CA认证的HTTPS安全机制,Master启用RBAC授信机制。LoadBalance使用双机热备,向Node暴露虚拟IP作为入口地址,供客户端访问。ThankYOU!Kubernetes核心资源目录01任务Kubernetes核心资源学习目标【知识目标】●
了解kubernetes核心资源。【技能目标】●
能够辨别各资源之间的关系1Kubernetes核心资源Kuberntes核心资源解析Pod是Kubernetes中的最小调度单元。Pod代表集群上正在运行的一个进程,一个Pod封装一个容器,也可以封装多个容器,Pod里的容器共享存储、网络等。1PodKuberntes核心资源解析Replicaset是Kubernetes中的副本控制器,管理Pod,使pod副本的数量始终维持在预设的个数。1ReplicasetKuberntes核心资源解析Deployment是管理Replicaset和Pod的副本控制器,Deployment可以管理多个Replicaset,是比Replicaset更高级的控制器,也就是说在创建Deployment的时候,会自动创建Replicaset,由Replicaset再创建Pod,Deployment能对Pod扩容、缩容、滚动更新和回滚、维持Pod数量。1DeploymentKuberntes核心资源解析k8s中的资源对象大都可以打上标签,如Node、Pod、Service等,一个资源可以绑定任意多个label,k8s通过Label可实现多维度的资源分组管理,后续可通过LabelSelector查询和筛选拥有某些Label的资源对象。1LabelKuberntes核心资源解析Service会对提供同一个服务的多个pod进行聚合,并且提供一个统一的入口地址。通过访问Service的入口地址就能访问到后面的pod服务。service对一组Pod进行逻辑集合,通常是通过
LabelSelector实现的1ServiceKuberntes核心资源解析Pod被ReplicaSet管理,ReplicaSet控制pod的数量:ReplicaSet被Deployment管理,Deployment控制pod应用的升级、回滚,当然也能控制pod的数量;Service提供一个统一固定入口,负责将前端请求转发给一组Pod(根据label选定)。1总结ThankYOU!Kubernetes项目案例目录华为:以用户和供应商身份拥抱云原生01任务01任务网易:利用Kubernetes支持在全球的互联网业务学习目标【知识目标】●了解kubernetes的发展现状及经典案例。1华为:以用户和供应商身份拥抱云原生华为:以用户和供应商身份拥抱云原生大型公司应用程序纷纷迁移到Kubernetes上运行1华为:以用户和供应商身份拥抱云原生早期以社区创始成员及白金会员的身份加入其中。目前拥有1个SteeringCommittee席位和5个Maintainer席位。华为通过参与和贡献Kubernetes项目,为自身带来了在规划、网络、多集群联合、应用支持、安全、可扩展性和政策执行等方面的良好设计、代码
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年合肥职业技术学院单招职业技能测试题库及1套参考答案详解
- 2026年哈尔滨职业技术学院单招职业倾向性测试题库含答案详解(a卷)
- 2026年唐山科技职业技术学院单招职业技能测试题库带答案详解(综合卷)
- 2026年吉林科技职业技术学院单招职业倾向性测试题库附答案详解(培优)
- 招聘启事范本及范例
- 前言:估摸是2009年,中国人民大学公共管理学院组织与人力资源所
- 企业人力资源管理与政府劳动工资统计
- 功血患者的病情观察
- 内窥镜技术护理进展汇报
- 就业指导感悟集
- 完整版新版陕旅版三年级英语下册教案(2025-2026学年)
- 2026年浙江高考物理试卷附答案
- Zippo2024美版年册完整版
- 全域废弃矿山生态修复项目可行性研究报告
- 2026年宜春职业技术学院单招职业适应性测试必刷测试卷及答案1套
- 申论“人工智能+”热点卷
- 2026年山东城市服务职业学院单招职业适应性测试题库附答案
- 2025年全国高校港澳台大学生中华文化知识大赛备赛考试题库-上(单选题、多选题)
- 减轻企业负担政策解读
- 标定锁定作业安全培训课件
- 焊接缺陷修复及返修技术措施总结
评论
0/150
提交评论