K8s调度策略与资源限制_第1页
K8s调度策略与资源限制_第2页
K8s调度策略与资源限制_第3页
K8s调度策略与资源限制_第4页
K8s调度策略与资源限制_第5页
已阅读5页,还剩22页未读 继续免费阅读

下载本文档

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

文档简介

20XX/XX/XXK8s调度策略与资源限制汇报人:XXXCONTENTS目录01

课程入门概述02

K8s调度核心逻辑03

K8s资源限制体系04

常见调度策略配置05

生产实践案例演示06

课程总结与拓展课程入门概述01掌握核心调度策略逻辑理解K8s主流调度策略如节点亲和性、污点容忍的运行逻辑,能独立完成基础调度规则配置。精通资源限制配置方法学会为Pod设置CPU、内存等资源请求与限制,可参照字节跳动容器集群的优化案例实操。面向云原生运维从业者适用于负责K8s集群运维的工程师,帮助其解决日常调度冲突与资源过载问题。赋能开发人员容器化部署适合需要将应用容器化部署的开发人员,掌握调度规则实现应用的高效稳定运行。学习目标与适用人群核心概念基础回顾Pod与节点核心关系Pod是K8s调度的基本单位,节点是运行Pod的物理/虚拟机器,调度器负责将Pod匹配到合适节点。调度器核心调度逻辑K8s默认调度器通过预选和优选两步筛选节点,类似阿里云ACK集群的默认调度决策流程。资源请求与限制定义资源请求是Pod运行所需最小资源,限制是最大可用资源,如CPU、内存的数值化配置规则。K8s调度核心逻辑02整体调度流程梳理

待调度Pod筛选K8s调度器先从集群中筛选出符合调度要求的待调度Pod,排除已绑定节点或不符合条件的Pod。

节点预选评估调度器通过一系列规则对集群节点进行预选,如资源充足性、节点亲和性等,过滤掉不适合的节点。

节点优先级排序对预选通过的节点进行优先级打分,依据资源使用率、污点容忍度等维度,选出最优节点。

Pod绑定节点调度器将最终选定的节点与Pod绑定,完成调度流程,通知kubelet启动Pod相关容器。节点资源匹配规则该规则会检查节点CPU、内存等资源是否满足Pod需求,如阿里云EKS节点需预留足够资源给Pod。节点亲和性匹配规则依据Pod指定的节点亲和性标签筛选节点,比如将数据库Pod调度至标注有存储节点标签的节点。污点与容忍度匹配规则检查节点污点与Pod容忍度是否匹配,带有NoSchedule污点的节点仅能被对应容忍度的Pod选中。节点预选阶段规则节点优先级排序规则

节点资源剩余量排序K8s会优先将Pod调度到CPU、内存等资源剩余充足的节点,如阿里云EKS集群会依据该规则筛选最优节点。

节点亲和性规则匹配排序当Pod配置了节点亲和性策略,K8s会优先选择满足匹配条件的节点,例如指定运行在带SSD标签的节点上。

节点污点与容忍度匹配排序K8s会优先调度Pod到其容忍度与节点污点匹配的节点,如避免将普通Pod调度到带NoSchedule污点的专用节点。调度绑定最终流程节点预选结果校验调度器会对预选阶段筛选出的节点再次校验,确认节点资源状态与标签等仍符合Pod调度要求。优先级排序确定最优节点调度器通过优先级函数对备选节点打分,像阿里云ACK集群会依据资源使用率等维度排序选最优节点。绑定请求提交与确认调度器向APIServer发送绑定请求,确认节点接受Pod后,完成Pod与目标节点的最终绑定。K8s资源限制体系03CPU资源请求与限制CPU资源请求是Pod运行时所需最小CPU值,限制为最大可用值,比如电商Pod会设1核请求、2核限制。内存资源请求与限制内存资源请求是Pod运行最低内存需求,限制为内存上限,像数据库Pod常设2G请求、4G限制。存储资源请求与限制存储资源请求指Pod需占用的最小存储容量,限制为最大可用存储,如日志Pod会设10G请求、20G限制。资源请求与限制概念资源QoS等级划分

Guaranteed(保障级)该等级为Pod配置固定CPU和内存请求与限制,如电商核心支付Pod,可确保资源优先分配。

Burstable(弹性级)Pod请求资源小于限制,如企业内部办公系统Pod,空闲时可释放资源供其他Pod使用。

BestEffort(尽力而为级)不对Pod设置资源请求与限制,如临时测试Pod,系统资源不足时会被优先回收。资源驱逐机制说明触发驱逐的资源阈值判定当节点内存、CPU等资源使用率达预设阈值时,K8s会启动驱逐流程,如内存使用率超90%触发优先级驱逐。驱逐优先级排序规则K8s依据Pod优先级QoS等级排序,BestEffort类Pod会被优先驱逐,保障Guaranteed类核心业务Pod运行。驱逐执行的优雅终止流程触发驱逐后,K8s会向Pod发送终止信号,给予30秒默认优雅终止时间,避免业务突然中断。常见调度策略配置04硬节点亲和性规则设置通过requiredDuringSchedulingIgnoredDuringExecution字段,配置Pod必须部署在匹配指定标签的节点,如指定SSD节点。软节点亲和性规则设置通过preferredDuringSchedulingIgnoredDuringExecution字段,优先将Pod部署在匹配节点,如优先选择GPU节点提升性能。节点亲和性权重配置为软亲和性规则设置权重值,数值越高优先级越高,例如给就近机房节点规则设置权重80。节点亲和性配置方法Pod亲和反亲和配置同节点Pod亲和配置通过配置PodAffinity规则,可让关联业务Pod部署在同一节点,如电商系统的订单与支付Pod。跨节点Pod反亲和配置借助PodAntiAffinity规则,可避免同类Pod集中部署,像分布式数据库Pod分散在不同节点保障高可用。基于标签的Pod亲和配置以标签为匹配依据配置亲和策略,比如将日志采集Pod与业务Pod部署至带有特定标签的节点组。污点与容忍配置方法

节点污点添加操作通过kubectltaint命令可给节点添加污点,如给node1添加key=value:NoSchedule污点,限制普通Pod调度。

Pod容忍度配置在Pod的spec.tolerations字段中配置容忍规则,可让Pod忽略节点污点,比如匹配特定key和effect。

污点效果层级设置可设置NoSchedule、PreferNoSchedule、NoExecute三种污点效果,分别对应不同调度限制强度。自定义调度器配置自定义调度器部署与注册通过YAML文件定义调度器Deployment,向K8sAPIServer注册,独立于默认调度器运行。节点亲和性规则定制为自定义调度器设置专属节点亲和性规则,比如指定仅调度至GPU标签节点,适配AI算力场景。调度优先级权重配置为自定义调度器配置差异化优先级权重,优先调度核心业务Pod,保障关键服务运行稳定性。生产实践案例演示05离线任务资源隔离案例基于节点亲和性的资源隔离部署某电商平台将离线数据计算任务部署至专属CPU节点,通过节点亲和性避免与在线交易任务争抢资源。利用污点与容忍度实现资源隔离短视频平台为离线模型训练任务设置节点污点,仅允许带对应容忍度的任务调度,保障资源独占。借助命名空间+ResourceQuota的资源隔离金融企业为离线对账任务创建独立命名空间,配置ResourceQuota限制CPU、内存使用量,避免干扰核心业务。关键业务高可用调度案例01金融核心交易Pod抗干扰调度某国有银行通过K8s调度策略隔离交易Pod与低优先级Pod,避免资源抢占,保障交易零中断。02电商大促多区域容灾调度天猫618期间,K8s将核心订单业务Pod调度至多可用区节点,实现故障时秒级切换。03医疗数据中心业务连续性调度某三甲医院利用K8s亲和性规则,将病历系统Pod调度至同城双活节点,确保数据不丢失。资源争抢问题排查案例CPU资源争抢排查某电商平台大促时Pod因CPU配额不足抢占资源,通过kubectltop命令定位后调整requests与limits参数解决。内存资源争抢排查某金融系统Pod因内存限制过低引发OOM,借助Prometheus监控定位后扩容内存资源阈值恢复稳定。存储IO资源争抢排查某大数据集群Pod因共享存储IO争抢导致任务卡顿,通过PVCQoS分级配置优化后缓解拥堵。课程总结与拓展06K8s调度核心策略解析梳理节点亲和性、污点与容忍度等核心策略,比如利用节点亲和性将Pod调度至指定硬件节点。资源限制关键规则总结总结CPU、内存等资源的requests与limits配置规则,例如通过limits避免Pod占用过多节点资源。调度器核心工作流程梳理梳理调度器过滤、打分、绑定的全流程,比如kube-scheduler通过多维度打分筛选最优节点。核心知识点梳理进阶学习方向指引深入探索自定义调度器

温馨提示

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

评论

0/150

提交评论