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

Pod控制器

  pod按创建方式分类自主式pod  //kubernetes直接创建出来的pod,删除之后不会重启 控制器创建的pod  //通过控制器创建的pod,删除之后还会重建
  pod控制器分类ReplicationController //已废弃,由ReplicaSet替代  ReplicaSet //保证指定数量的Pod运行,支持pod数量变更,镜像版本变更  Deployment //控制ReplicaSet来控制Pod,支持滚动升级,版本回退  Horizontal Pod Autoscaler //根据集群负载自动调整Pod数量,实现消峰填谷  DaemonSet //在集群中的指定Node上都运行一个副本,一般用于守护进程类的任务  Job // 创建出来的pod,只有完成任务就立即退出,用于执行一次性任务  Cronjob //创建的pod会周期性的执行,执行周期性任务  StatefulSet //管理由状态应用
  ReplicaSet(RS)
  保证一定数量的pod能够正常运行,持续监听这些pod的运行状态
  pod发生故障,就会重启或重建
  支持pod数量的扩缩容和版本镜像的升级 apiVersion: apps/v1  kind: ReplicaSet  metadata:   name: pc-replicaset   namespace: dev   labels:    controller: rs  spec:   replicas: 3   selector:    matchLabels:     app: nginx-pod    matchExpressions:     - {key:app, operator: In, values: [nginx-pod]}   template:    labels:     app: nginx-pod    spec:     containers:     - name: nginx       image: nginx:1.17.1扩缩容  编辑yaml文件 kubectl edit rs pc-replicaset -n dev 修改spec.replicas的值  命令 kubectl scale rs pc-replicaset --replicas=2 -n dev  镜像升级 编辑yaml文件 kubectl edit rs pc-replicaset -n dev 修改spec.template.container.image的值  命令 kubectl set image rs pc-replicaset nginx=nginx:1.17.2 -n dev 删除ReplicaSet,  先replicas调整为0,删除所有pod后,再删除rs kubectl delete rs pc-replicaset -n dev  仅删除rs对象,不删除pod kubectl delete rs pc-replicaset -n dev --cascade=false  推荐 kubectl delete -f pc-replicaset.yaml
  Deployment(Deploy)
  解决服务编排的问题,
  不直接管理pod,通过管理ReplicaSet来间接管理Pod支持ReplicaSet的所有功能 支持发布的停止和继续 支持版本滚动升级和版本回退apiVersion: apps/v1  kind: Deployment  metadata:   name:    namespace: dev   labels:    controller: deploy  spec:   replicas: 3   revisionHistoryLimit: 3 //保留历史版本,默认是10   paused: false //暂停部署,默认是false   progressDeadlineSeconds: 600 //部署超时时间,默认600s   strategy:    type: RollingUpdate //滚动更新    rollingUpdate:     maxSurge: 30% //最大额外可以存在的副本数,可以为百分比,整数     maxUnavailable: 30% //最大不可用状态的Pod的最大值,可以为百分比,整数   selector:    matchLabels:     app: nginx-pod    matchExpressions:     - {key:app, operator: In, values: [nginx-pod]}   template:    metadata:     labels:      app: nginx-pod    spec:     containers:     - name: nginx       image: nginx:1.17.1 //创建deploy kubectl create -f pc-deployment.yaml --record=true  kubectl get deploy pc-deployment -n dev kubectl get rs -n dev kubectl get pod -n dev  //删除deploy kubectl delete -f pc-deployment.yaml
  扩缩容kubectl scale deploy pc-deployment --replicas=5 -n dev  kubectl edit deploy pc-deploy -n dev 修改replicas的值  kubectl get deploy pc-deployment -n dev kubectl get pods -n dev
  镜像更新
  重建更新strategy:   type: Recreate //创建新pod,会杀掉已存在的pod    验证  kubectl set image deploy pc-deployment-recreate nginx=nginx:1.17.2 -n dev    kubectl get pod -n dev -w
  滚动更新(默认)strategy;   type: RollingUpdate //滚动更新,删除一部分,重启一部分,新旧共存   RollingUpdate:    maxSurge: //在升级过程中可以超过期望的Pod的最大数量    maxUnavailable: //在升级过程中不可用的Pod的最大数量   验证  kubectl set image deploy pc-deployment-recreate nginx=nginx:1.17.2 -n dev    kubectl get pod -n dev -w
  版本回退更新镜像以后,查看rs,旧的还存在,只是相关pod数量为0,产生新的rs,相关pod数量为3 kubectl get rs -n dev
  kubectl rollout 版本升级相关功能kubectl rollout    status 显示当前升级状态   history 显示升级历史记录   pause 暂停版本升级过程   resume 继续升级   restart 重启版本升级过程   undo 回滚到上一次版本,(--to-revision回滚到指定版本)kubectl rollout status deploy pc-deployment -n dev  kubectl rollout history deploy pc-deployment -n dev //创建的时候需要 --record才能显示  //--to-revision=1 指定回退版本,不设置,返回上一版本 kubectl rollout undo deploy pc-deployment --to-revision=1 -n dev
  金丝雀发布//更新deploy的版本,并暂停更新,老的rs-pod依旧存在,并产生一个新的rs-pod,不再发生变化 kubectl set image deploy pc-deployment nginx=nginx:v1.17.4 -n dev && kubectl rollout pause deploy pc-deployment -n dev  //查看rs kubectl get rs -n dev  //观察更新状态 kubectl rollout status deploy pc-deployment -n dev  //没有问题,继续更新 kubectl rollout resume deploy pc-deployment -n dev
  Horizontal Pod Autoscaler(HPA)
  通过监测Pod的使用情况,实现Pod的自动调整
  HPA可以获得Pod的利用率,和HPA中定义的指标对比,同时计算出需要
  伸缩的具体值,实现Pod数量的调整。
  追踪分析目标Pod的负载变化情况,来决定是否需要针对性的调整Pod
  的副本数创建deployment kubectl run pc-deploy-hpa --image=nginx:1.17.1 --requests=cpu=100m -n dev kubectl apply -f pc-deploy-hpa.yaml  暴露service kubectl expose deployment pc-deploy-hpa --type=NodePort --port=80 -n dev  kubectl get deploy,pod,svc -n dev  kubectl apply -f pc-deploy-hpa.yaml  用postman对节点进行压测,分别打开三个终端,观察pod,hpa,deploy的变化
  hpa配置项spec:  minReplicas: 1  //最小副本数  maxReplicas: 10 //最大副本数  targetCPUUtilizationPercentage: 3 //cpu的占用率  scaleTargetRef: //设置deployment   apiVersion: apps/v1   kind: Deployment   name: pc-deploy-hpa
  DaemonSet (DS)
  保证集群中的每一台节点上都运行一个副本,一般用于日志收集,节点监控
  Pod提供的功能每个节点都需要且只需要一个
  每当向集群中添加一个节点时,指定的pod副本也将添加到该节点上
  当节点从集群中移除时,Pod也就被垃圾回收了apiVersion: apps/v1 kind: DaemonSet metadata:   name: //名称   namespace: dev   labels:    controller: DaemonSet spec:   revisionHistoryLimit: 3 //保留历史版本   updateStrategy:    type: RollingUpdate //滚动更新    rollingUpdate:     maxSurge: 30% //最大额外可以存在的副本数,可以为百分比,整数     maxUnavailable: 30% //最大不可用状态的Pod的最大值,可以为百分比,整数   selector:    matchLabels:     app: nginx-pod    matchExpressions:     - {key:app, operator: In, values: [nginx-pod]}   template:    metadata:     labels:      app: nginx-pod    spec:     containers:     - name: nginx       image: nginx:1.17.1
  测试kubectl apply -f pc-daemonset.yaml  查看 kubectl get ds pc-daemonset -n dev kubectl get pod -n dev  每个节点都会有一个pod
  Job
  批量处理短暂的一次性任务
  每个任务仅运行一次
  Job创建的pod执行成功时,Job将记录成功结束的pod数量
  当成功结束的pod达到指定的数量时,Job将完成执行apiVersion: batch/v1 kind: Job metadata:   name: //名称   namespace: dev   labels:    controller: Job spec:   completions: //Job需要成功运行pod的数量,默认是1   parallelism: //Job在任一时刻应该并发运行pod的数量,默认是1   activeDeadlineSeconds: //Job可运行的时间期限,超过未结束,系统会终止   backoffLimit:6 //失败尝试次数   manualSelector: true //   selector: //选择器,指定该控制器管理哪些pod    matchLabels:     app: counter-pod    matchExpressions:     - {key:app, operator: In, values: [counter-pod]}   template: //pod模版    metadata:     labels:      app: counter-pod    spec:     restartPolicy: //只能设置Never或者OnFailure     containers:     - name: counter       image: busybox:1.30       command: ["bin/sh","-c","for i in 9 8 7 6 5 4 3 2 1]; do echo $i;sleep 3;done"] kubectl apply -f pc-Job.yaml  kubectl get job -n dev -w  kubectl get pod -n dev -w
  CrobJob
  定时job
  Cronjob通过Job控制器,管理pod
  Cronjob可以在特定的时间点反复去运行job任务apiVersion: batch/v1beta1 kind: CronJob metadata:   name: //名称   namespace: dev   labels:    controller: cronjob spec:   schedule: //cron格式的任务运行时间点,   concurrencyPolicy: //并发执行策略,前一次任务未完成的情况下如何运行后一次任务                      //Allow 允许jobs并发运行,默认                      //Forbid 禁止并发运行,跳过下次                      //Replace 下次替换当前任务   failedJobHistoryLimit: //为失败的任务执行保留的历史记录数,默认1   successfulJobHistoryLimit: //为成功的任务执行保留的历史记录数,默认3   startingDeadlineSeconds: //超时时间   jobTemplate: // Job控制器模板     metadata:     spec:       completions: //Job需要成功运行pod的数量,默认是1       parallelism: //Job在任一时刻应该并发运行pod的数量,默认是1       activeDeadlineSeconds: //Job可运行的时间期限,超过未结束,系统会终止       backoffLimit:6 //失败尝试次数       manualSelector: true //       selector: //选择器,指定该控制器管理哪些pod        matchLabels:         app: counter-pod        matchExpressions:         - {key:app, operator: In, values: [counter-pod]}       template: //pod模版        metadata:         labels:          app: counter-pod        spec:         restartPolicy: //只能设置Never或者OnFailure         containers:         - name: counter           image: busybox:1.30           command: ["bin/sh","-c","for i in 9 8 7 6 5 4 3 2 1]; do echo $i;sleep 3;done"]kubectl apply -f pc-cronjob.yaml  kubectl get cronjob -n dev -w  kubectl get job -n dev -w  kubectl get pod -n dev -w

首款5G鸿蒙手机官宣!华为被截胡众所周知,自从2019年美帝宣布制裁华为那一刻起,华为就顺势推出了自己的操作系统鸿蒙OS。如今,华为旗下大多数机型已经推送到了鸿蒙3。0,据悉鸿蒙4。0也在来的路上,不出意外的话将压力给到三星了?国产折叠屏能不能打,综合对比后一目了然!折叠屏手机作为不同于传统直板机的全新手机形态,在三星的带头下,这几年无论是产品数量还是用户体验都在持续提升,值得一提的是,包括华为OPPO和荣耀等在内的国产品牌尽管作为后来者,但是三星在美国召回50万台洗衣机三星正在美国召回663,500台滚筒洗衣机,原因是短路可能导致设备过热并构成火灾风险。据美国消费者与安全委员会(CPSC)12月22日消息,三星在收到51起洗衣机冒烟过热到熔化外部插混增程式销量30强理想冲进前三,保时捷仅年销四千辆在新能源车市场中,纯电动车的销量一直领先于混动车,各种夺人眼球的新品牌新车型也大多在这个领域发力。然而不可否认的是,在续航焦虑依然存在充电配套设施发展仍不充分的当下,一辆既能烧油又顶级射手辅佐詹姆斯!太阳湖人酝酿三方交易,奇才送出库兹马?本赛季的太阳队遇到了很大的挑战,这主要源于上赛季的首发小前锋克劳德就续约问题与球队谈崩,已经拒绝为太阳队出战,而他的替代者C约翰逊也遭遇半月板伤势,已经缺席了一个半月的比赛。还好太魅族发布M3ProHi科技前线魅族M3Pro钛媒体App12月23日消息,魅族科技发布了全新魅族M3Pro全场景HiFi播放器,并在活动中预告魅族20系列旗舰款手机将于明年春季发布。此外魅族对外宣布,将以三年内射频芯片自主可控!联通发布高国产化率毫米波室内微基站12月23日,据中国联通研究院消息,在日前举行的中国联通合作伙伴大会网络论坛上,联通研究院实现毫米波自主可控基站研发的首个里程碑,成功发布国内首款高国产化率毫米波室内分布式微基站。棱角分明,设计浪漫!这块3万多末班车或让我成最大赢家!棱角分明,设计浪漫!3万多,这趟末班车竟是我今年的梦中情表点击蓝色字体进入新表速递勇而不莽照理来说,12月年底一般都是各大腕表品牌比较安静的时候,一方面大家的全年新表已经悉数放出,AnnaGeorgina2023ampampquotWhisperampampquot婚纱系列时尚浪漫婚纱系列如果优雅的旧世界魅力与现代性感是您在婚纱中寻找的,那么您会在安娜乔治娜(AnnaGeorgina)的2023年新娘系列Whisper中找到很多值得爱的东西。安娜乔治娜(AnnaGe20万元预算买家里唯一轿车,燃油还是新能源?这8款你随便挑!早上收到我们一个资深粉丝的提问一直刷蜗牛的节目,终于到我买车求助,20万左右预算买轿车,主要是家用,家里唯一的车,萌哥推荐什么?另外,我们这里不限牌虽然电车惹话题,但作为家里唯一的阳康们涌向三亚,民宿酒店租车都火了深燃(shenrancaijing)原创作者唐亚华编辑黎明全家率先阳完了,目测北京下周就得逐渐复工,趁着这个空档期,赶快来三亚浪一浪。说走就走,是久违的自由呀!某网友在社交平台分享
甘肃5条线路入选全国乡村旅游精品线路近日,文化和旅游部联合共青团中央推出128条稻花香里说丰年全国乡村旅游精品线路,我省5条乡村旅游线路入选。我省入选的5条乡村旅游线路分别是甘肃省星辰沙海生态绿洲体验之旅如画甘州桑麻经韩国回国流程极简!免签入境!答疑解惑听随着韩国入境措施的不断放宽,经韩回国成了海外回国的热门选项经韩中转赴华,不强制要求始发国健康码取消入境前PCR要求持中护照可免签入境韩国济州岛。现在入境韩国行前仅需准备w有效国际航班量翻倍,直飞回国机票降价了作者丨高江虹编辑丨张伟贤图源丨视觉中国10月11日上午1025,EY868抵达广州白云国际机场,这是疫情后阿提哈德航空开通的首个阿布扎比至广州的定期航班,阿提哈德航空也是疫情后首个到手价低至2K元大功率快充手机推荐近年来充电技术的快速发展,让许多过去看起来高端的高规格充电技术如今已能在两千元档位手机中看见,如高速闪充无线充电,甚至是能延续电池寿命的超级闪充技术。OPPOReno8OPPO在快丰巢快递柜推出洗衣服务,上门取衣不满意免费返洗,你会尝试吗?丰巢智能柜不仅能存放包裹,还能兼职提供洗衣服务了!记者获悉,今年丰巢专门辟出生活服务板块,进军洗衣业务,目前该业务已经从深圳拓展至全国,上海消费者也可下单,选择无接触的上门洗衣服务车叔观察换新标推跑车,广汽埃安估值能达千亿吗?2022年9月15日,广汽埃安在广州举办埃安品牌发布会,宣布全新品牌Logo正式公布并启用的同时,还发布了全新高端品牌Hyper昊铂,以及旗下首款车型HyperSSR,其售价区间为神回复两个人,一夜无眠1。这下商家该睡不着了!2。我全家和家里的小动物都好!!!3。客服真专业!!!4。沸羊羊我只是想让她多看我一眼,有什么错?5。姑娘那么勇的嘛?!?6。外卖拦截者!!!7。陈奕迅我没王宝强携女友开豪车聚餐,相处似老夫老妻,冯清超模身材长腿吸睛饿了吗?戳右边关注我们,每天给您送上最新出炉的娱乐硬核大餐!10月13日,有媒体爆料拍到王宝强与女友冯清一起出门会友,并晒出了两人罕见同框的视频,引发网友热议。视频中,冯清驾驶豪车万字重磅访谈!赵诣最新发声中国基金报记者吴君方丽继公募四冠王的光环之后,赵诣以个人系公募泉果基金的基金经理,作为事业的新起点。入职后管理的第一只基金即将发行,让他再一次站到了聚光灯下。在公募圈,赵诣可以说是被卡脖子有多难受?看看华为手机和笔记本的境遇就知道了华为最新推出的Mate50系列手机的一个重要特色,就是国产供应链厂家数量进一步增加,国产化率达到了一个新的高度。这些是去年华为P40系列手机的核心供应商这些是今年华为Mate50系华为路由器192。168。3。1登录页面打不开的解决方法在设置华为无线路由器时,192。168。3。1登录页面打不开的解决办法。华为路由器使用192。168。3。1作为登录地址,如果在浏览器中输入192。168。3。1打不开登录页面,请