Kubernetes技术与架构-调度 1

Kubernetes技术与架构集群对Pod的资源调度策略分为三个部分,其中包括匹配调度、优先调度以及终止调度,匹配调度是指将Pod匹配到适合、指定的Node服务器节点中运行,优先调度是指终止优先级低的Pod而优先匹配优先级高的Pod到适合的Node服务器节点中运行,终止调度是指停止Node服务器节点中的Pod的运行。

kube-scheduler调度器

Kubernetes集群的调度Pod资源分为两个步骤,第一个步骤是过滤(Filtering),第二步骤是打分(Scoring),过滤是指从集群的全部Node服务器节点找到调度该Pod的可行性Node集合,打分是指以评分的方式对过滤的Node集合实行排名而找出最适合调度该Pod的Node服务器节点。

如上所示,定义一个Pod,设定Pod的调度策略是使用Node选择器,在调度策略中设定匹配Node服务器节点的约束条件,required指定的是严格匹配的条件,即不匹配条件则不调度节点,preferred指定的是非严格匹配的条件,即优先调度匹配条件的节点,不匹配条件则调度其他节点

如上所示,指定weight权重的值,即在匹配过程中,计算到Node的服务器节点的权重值的总和,权重值的总和最大的Node服务器节点优先调度

如上所示,在Kubernetes集群中设置通用调度规则,即在pod中的.spec.schedulerName属性中可以指定foo-scheduler的调度策略

如上所示,定义一个Pod,设定Pod的调度策略是使用Pod选择器,匹配指定的topologyKey拓扑关系的区域内的Node节点,其中,podAffinity与podAntiAffinity的调度策略是相反的关系,即包括以及不包括的关系

如上所示,定义一个部署的模板,匹配的Pod则使用对应的调度策略

如上所示,定义一个Pod,同时定义podAffinity以及podAntiAffinity调度策略,其中,mismatchLabelKeys指定约束条件是不调度到其他已匹配的标签为tenant的Node服务器节点

如上所示,定义一个部署模板,在指定的拓扑关系内同时部署web以及cache,其中,使用podAntiAffinity部署规则指定每个Node服务器节点只能调度一个cache

如上所示,定义部署模板,podAffinity调度规则指定每个cache对应的Node服务器节点中只能调度一个web,podAntiAffinity调度规则指定不能在同一个Node服务器节点中调度多个web

如上所示,在三个Node服务器节点的Kubernetes集群中,部署web以及cache,每个Node服务器节点分别部署一个web以及一个cache

如上所示,定义一个Pod,在指定的nodeName服务器节点中调度

相关推荐
倦王4 分钟前
在docker下部署Xinference
运维·docker·容器
阿火~9 分钟前
docker完整镜像迁移【亲测有效】
linux·运维·服务器·docker·容器
两点王爷34 分钟前
在离线的Ubuntu机器中安装docker
运维·docker·容器
Devin~Y40 分钟前
大厂Java面试实战:Spring Boot/WebFlux、Redis+Kafka、K8s可观测性与Spring AI RAG/Agent三轮连环问
java·spring boot·redis·kafka·kubernetes·resilience4j·spring webflux
万粉变现经纪人1 小时前
如何解决 pip install flash-attention 报错 需要 SM_80+(Ampere)架构 问题
python·架构·django·bug·virtualenv·pip·pygame
ldj20202 小时前
从 API 调用到事件驱动:用 RabbitMQ /RocketMQ重构微服务通信架构
架构·rabbitmq
Harvy_没救了2 小时前
Docker Desktop 部署新项目详细步骤
运维·docker·容器
PH = 72 小时前
解决Docker Hub无法访问的问题二
运维·docker·容器
2301_780789662 小时前
什么是端口?端口攻击如何检测和防御
服务器·人工智能·游戏·架构·零信任
xixixi777772 小时前
智算中心建设新范式:GPT-6/Rubin架构+1.6T光模块+量子安全网关+AI安全沙箱,算力·效率·安全·成本的最优平衡
人工智能·gpt·安全·机器学习·架构·大模型·通信