范文健康探索娱乐情感热点
投稿投诉
热点动态
科技财经
情感日志
励志美文
娱乐时尚
游戏搞笑
探索旅游
历史星座
健康养生
美丽育儿
范文作文
教案论文

Docker与k8s的恩怨情仇(六)容器编排上演终结者大片

  在上节中,我们为大家介绍了Pod的基础内容,Kubernetes如何站在上帝视角上处理容器和容器之间的关系。但仅仅有Pod却还不够,对于大部分用户而言如何调度和管理自己的应用才是真正核心的问题,而对这一内容的解决方案才是Kubernetes最终极大杀器。Pod间的编排管理
  让我们从一个例子出发,假设现在的用户需求是:
  以3机负载均衡的形式部署一个私有云客户的活字格应用,应该如何实现呢?
  Docker的"古典"做法
  在活字格开发组之前开发的版本中,实现方法大概是这样:使用三个不同的物理机,先把用户的应用run成容器,然后安装在在这三个物理机上,在三台服务器之外再买一个负载均衡服务,最后通过域名解析配置,将流量分别导向三个不同的服务机。
  有没有感觉So easy!!!听起来似乎也挺简单的。
  耳朵会了,脑袋也跟上了吗?在现实中,我们会遇到很多烧脑的问题,比如:如果我们只有两台服务器呢?如果有一台服务器中的container挂了呢?如果两台服务器CPU跑满了呢?
  这些调度方面的内容看起来很简单,但是实现起来却需要长时间的编码和调试。而且一通输出之后,最终做出来也可能只是个Docker Swarm而已。
  Kubernetes里的容器编排
  现在我们把上述需求看做是我们最终的目标,来看kubernetes是如何一步一步进行容器编排从而解决了这个问题。相信大家看完这部分内容之后,以上问题便会迎刃而解。
  Kubernetes所做的容器编排核心内容其实是Pod编排,如何让这些Pod配合起来协同工作,则是编排的核心。在上一节中我们一起了解了kubernetes所做的是将各种关系进行了抽象,这些关系本质其实是Pod之间的关系。kubernetes将Pod的关系抽象成了以下几种,并且为这些关系定义了相对的控制器便于进行编排管理:无状态Pod副本之间的协同关系——Deployment有状态Pod副本之间的拓扑关系——StatefulSet容器化守护进程——DaemonSet离线业务——Job和CronJob
  这些概念看起来可能让你有些不知所云,其实这些内容只是不同控制器对Pod不同的管理方式而已。
  限于篇幅和对这部分内容的理解深度,这里我们将只分享活字格开发组中最多使用到kubernetes最常用的一种控制器——Deployment。Deployment控制器功能介绍
  我们先解释什么是控制器:控制器是kubernetes中管理待编排对象的程序,我们把一个对象管理另一个对象的模式称为控制器模式。
  kubernetes中的所有待编排对象都是通过控制器模式管理的。
  其核心就是一个死循环,在循环中不停地判断当前编排对象的状态,如果不满足预期状态就更新它,如下的伪代码就是描述一个控制器的工作原理:
  Deployment控制器的功能是:维护多个相同的无状态Pod副本以规定的数量运行,并且支持水平扩展以及滚动更新。
  有了这个控制,为了实现我们的最终需求——负载均衡中的活字格服务,这个Pod就可以通过Deployment管理。我们可以通过Deployment让我们的Pod在kubernetes集群中始终以3个副本的形式存在。
  只需要用Deployment来编排我们定义的Pod,并且要求副本数量是3,Deployment控制循环中就会不停地判断我们的Pod的副本数量是否是3,如果不是,就会触发水平扩展功能进行调整,最终达到满足期望状态(副本数==3)。Deployment工作原理演示
  介绍了这么多,我们从实例出发为大家演示Deployment是如何工作的。
  由于活字格的镜像配置过于复杂,因此这里我们通过一个Nginx的多副本配置来感受一下Deployment控制器的控制结果。
  我们可以通过以下yaml定义一个维护了3个nginx副本的deployment:
  其实Kubernetes在最初的版本中只有ReplicaSet这种控制器模式,控制的是多副本Pod编排逻辑,后来出现了滚动更新逻辑,为了解决滚动更新的需求,在ReplicaSet基础上扩展出了Deployment。apiVersion: apps/v1 kind: Deployment metadata:   name: sample-deployment-nginx spec:   selector:     matchLabels:       app: sample-deployment-nginx   replicas: 3   template:     metadata:       labels:         app: sample-deployment-nginx     spec:       containers:       - name: sample-nginx         image: nginx:1.9.1         ports:         - containerPort: 80
  这里出现了三个特殊字段:selector:选择器,类似于js中的选择器,其功能就是选择指定的pod运行,这个实例中我们指定所有app==sample-deployment-nginx的pod才会被这个Deployment所部署replicas:指明这个Deployment维护的副本个数template:控制器中提供了template这个语法,可以让我们直接在控制器的yaml中直接编写所需要编排的Pod信息
  编写完这个sample-deployment-nginx.yaml后,执行一下:kubectl apply -f sample-deployment-nginx.yaml
  这个三副本的控制器就被成功运行了,使用该指令查看运行结果:kubectl get pods -l app=sample-deployment-nginx
  可以看到3副本Pod已经成功在kubernetes中运行了
  如果这时我们执行以下命令删除podname==sample-deployment-nginx-54545f95cd-wtllm的副本kubectl delete pod sample-deployment-nginx-54545f95cd-wtllm
  可以自动生成一个新的pod来维持replicas==3:
  通过上述实例,我们可以看到Deployment控制器对副本数量的控制结果,其实是ReplicaSet控制器在控制副本的数量。Deployment是ReplicaSet控制器的控制器,这种多层之间相互控制的模式在kubernetes也十分常见,其之间的关系如下图所示:
  至此,一个deployment管理pod的所有功能都已经展示完成了,可以看到kubernetes中控制器管理之间的精巧关系:多个控制器协同工作,既保证精准控制,也能拆分进程阻塞从而提升性能。其他控制器的介绍
  当你理解了deployment控制器,就很容易理解其他控制器的工作原理。
  在这里我们简单做个说明,为大家介绍其他控制器的控制逻辑:StatefulSet:控制满足有拓扑状态或者持久化存储的Pod,拓扑状态的意思就是Pod之间存在明确的先后生成关系,持久化存储就是当副本被删除或者修改了,其内部保存的数据还会存在DaemonSet:守护进程控制器,是一个Node(服务器节点)仅能存在一个的Pod,比如系统的日志采集器等就应该用这种方式调度Job与CronJob:Job就是任务调度,一个Pod在调度完成后就结束了不会再有新的任务产生,Job用于维护一个任务Pod运行中的各种状态正常,异常状态重启等。对应的CronJob就是定时任务,使用过Quartz的同学一定不陌生总结
  综上,kubernetes中就是通过上述的各种控制器维护所有Pod的编排工作的,并且其还提供了完善的API可以让用户自行定义满足自己需求的各种Pod编排控制器。但是对于deployment本文只是简单的展示了一些常用的功能点,其内部还有滚动更新的最大资源、金丝雀发布和灰度发布等各种功能需要继续细致的学习。
  本章中以活字格公有云为例,为大家介绍了k8s容器编排部分的实现。在下节中我们将继续为大家分享,为了实现这个终极需求的另一部分——如何实现 "人与狗的交往过程"。

苹果14将不再采用刘海屏,升级挖孔屏,网友外观平庸苹果手机从iPhoneX开始升级为全面屏设计,到了iPhone13刘海屏的设计方案一直在延续,而从网上曝光的消息得知,苹果14将不再采用刘海屏的设计,将会采用挖孔设计,给用户提供更这才是华为手机正确清理垃圾的方法,怪不得别人能清理出20GB分享手机小技巧,传递科技新知识,大家好,欢迎来到科技办公室!很多人都在用华为手机,可每次清理垃圾都没有显著效果,久而久之空间越来越小。下面就来教你华为手机正确清理垃圾的方法,怪不得实体店的一地鸡毛是电商崛起的必然结果吗?曾经人头攒动熙熙攘攘的街道和商业区,很多城市这二年变的冷冷清清,店面门可罗雀,缺失了以前逛街的感觉和乐趣,很多店门上贴着大大的旺店转让,让人产生虚幻的超现实主义的感觉,并且具有全国明天高抛备战!12月28日昨天将仓位打到9成,今天市场果然稳步回升,但会发现这些个股的上涨没有新能源的超跌反弹股涨得凶。不要急,昨天与今天的市场还只是缩量企稳,真正的上涨在明天。这样,上证的买点已经过去了,从薇娅偷税被罚开始短短两年,营业额几百亿,可以赶上大多数的上市公司。直播行业真的是那么赚钱吗?我们国家推行科技创新,淘宝购物。美团外卖。支付宝。微信钱包。都是科技创新的产物。的确有些功能我们是方便了花7000元控股一家上市公司你敢吗?全球经济一体化之下,奔赴海外上市的国内公司渐渐增多,除了早年间的新浪网易搜狐等先行者,也有近年来的百度阿里拼多多等新锐,显示了中国经济在全球份额的日长夜大。金融投资报记者注意到,截iPhone13ProMax与OnePlus10Pro对比你更喜欢哪款手机?iPhone13ProMax是苹果今年最大的顶级旗舰手机,但即将到来的OnePlus10Pro,其独特的设计超快速充电新的处理器和相机,将与苹果顶级旗舰手机抗衡。经过许多爆料,On苹果手机蝉联11月国内销售榜第一但全年销量预测只排第三每经记者可杨每经实习记者李明会每经编辑文多发布两个月后,iPhone13依然真香,再次稳坐国内市场单机销量第一把交椅。而在11月,苹果手机销售总量高达670万台,环比增长3。7,同第一部跑分过百万的安卓手机有多强,2999元值不值?12月9日,摩托罗拉发布了两款超高性价比手机2999元起全球首发骁龙8Gen1的edgeX301799元起搭载骁龙888Plus的edgeS30。其中,摩托罗拉edgeX30是第一商汤科技三个高管半年薪酬12亿,联想的杨元庆也不敢这么办了解更多科技资讯尽在圈聊科技。今天跟大家聊一聊天价薪酬再现,商汤科技三个高管半年拿走12亿工资,联想的杨元庆也不敢这么办!在联想高层高薪事件受到广泛关注之后,越来越多的企业开始瑟瑟苹果1200W像素,凭啥能吊打安卓一亿像素?手机相机你真的会用吗在智能手机市场,除了手机能在外观上做点差异之外,更关键的还是后置的影像系统,好看有好用的后置摄像设计能让手机增色不少,就比如华为Mate40系列的星环设计,一度成为消费者心中的白月
哪款ipad影音效果好?非常感谢题主的邀请!根据在苹果体验店的体验,个人认为iPadPro影音效果更好1。机体设计与iPadAir2和iPadmini5相比,iPadPro的四周设计才是真正特别的地方,也明星基金经理展望2022,刘格崧坚称继续分化,赵诣押注新能源风险释放随着基金经理四季报渐次出炉,部分明星基金经理的调仓思路也浮出水面。以广发基金明星基金经理刘格崧为例,在其前十大重仓股中,新能源汽车医药等行业仍是其配置的重点方向而农银汇理明星基金经春节换手机选哪款?看看年轻人眼中的热门究竟是谁随着春节日渐临近,我与家人或好友聚会的时间越来越多。在近期的聚会中,我发现不少同学好友以及亲戚家的孩子等这些同龄人中,有很多人都用上了和我同款的华为nova9系列手机。为此我还特意世界上存在着三大未解之谜,一是人的身体之谜,二是地球内核之谜,三是浩翰宇宙之谜,这些都因何成谜?人类是号称智慧超群的灵类,万物之中一花独秀。但是人类独独不能了解自己的身世,是野生的还是外来的,抑或野生与外来混血的。造成了宗教丶进化论和龙的传人等多种社会形态。智慧在大自然面前也2022年最值得入手的空净,苹果的技术小米的价格北上广深必备时刻关注家电行业的我,对一些兴起的家电可谓是了如指掌。今天我要给大家分享的空净,也是最近非常火的,可以说是苹果的技术小米的价格。其实我最开始看到它是在去年,不过那时候我对它的兴趣并陪伴我15年的组合音响和那些怀旧磁带90年代满满的幸福感2010年7月的某一天,我把久已不用的一台日本爱华NSXV50台式组合音响低价卖掉了。这台并不HiFi的音响足足陪伴了我15年。有人看到我这个售卖帖后发出感慨眼前一下子温暖,仿佛回环球网评显示IP属地,抓住了谁的狐狸尾巴?来源环球网近日,据微信微信珊瑚安全公告显示,为维护网络传播秩序,进一步打击仿冒搬运造谣传谣等行为,微信公众平台将显示用户发布内容时的IP属地,用户暂时无法主动开启或关闭相关展示。除支付宝上线数字人民币钱包,附详细开通方式头号周刊支付宝数字人民币开通教程1首先,我们打开支付宝搜索框输入数字人民币就是第一个小程序,进入数字人民币2点击前往开通网商钱包3如果我们手机没有下载数字人民币APP,这时候会提示外媒称苹果减少京东方OLED供应,原因是后者改变设计作为国产屏幕供应商巨头,京东方多年来一直试图打入苹果供应链,甚至为其单独开辟生产线以满足需求。功夫不负有心人,京东方在2021年成功入围,给iPhone1213系列供货,但最新消息366亿美元罚款?美企对俄断供出现反效果,美国科技巨头惹麻烦?还记得在俄乌冲突刚爆发的时候,包括苹果谷歌英特尔Facebook等知名科技企业在内的众所美企就像提前商量好的一样,接二连三官宣对俄断供。然而俄方面的处事风格和中国大不相同,面对美企地大热能智慧能源管理系统优势助力实现碳达峰碳中和地大热能地热多能互补新闻网讯能源是我国经济发展的主要基础,对经济发展起到十分重要的作用,通过优化互补以及新能源供给以及互联网信息技术的融入,可实现更加高效可持续的能源发展。互联网智