前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >K8S调度器优选策略讲解(1)简介

K8S调度器优选策略讲解(1)简介

原创
作者头像
keke.
修改2021-06-11 15:38:40
1.7K0
修改2021-06-11 15:38:40
举报
文章被收录于专栏:K8S疑难杂症K8S疑难杂症

在K8S集群中,调度器负责将客户提交的pod绑到某个node节点上,完成pod调度的调度工作。

在这个调度过程中,调度器的优选策略会对集群中的每个node节点都打上一个分数(score),得分最高的节点,调度器将调度pod到该节点上运行。

调度器的优选策略及相关说明

(基于k8s 1.18版本)

名称

权重(weight)

插件(plugin)

说明

默认

相关特性

取值

决定因素

SelectorSpreadPriority

1

DefaultPodTopologySpread

最小化同一节点或者zone上的Pod数量(属于同一服务或复制控制器)

0-100

InterPodAffinityPriority

1

InterPodAffinity

pod应该或不应该与其他pod放置在相同的拓扑域中

preferredDuringSchedulingIgnoredDuringExecution配置中的weight字段相关

亲和性调度的preferredDuringSchedulingIgnoredDuringExecution配置

NodeAffinityPriority

1

NodeAffinity

优先调度pod到node标签匹配了nodeAffinity的节点

preferredDuringSchedulingIgnoredDuringExecution配置中的weight字段相关

亲和性调度的preferredDuringSchedulingIgnoredDuringExecution配置

TaintTolerationPriority

1

TaintToleration

调度pod到容忍了污点的node

0

节点是否有配置污点,且effect值为PreferNoSchedule

ImageLocalityPriority

1

ImageLocality

优先调度pod到已经具有需求的镜像的node

0-100

节点是否已经具有pod所需求的镜像

BalancedResourceAllocation

1

NodeResourcesBalancedAllocation

平衡node的资源使用

0-100

node节点的资源情况

LeastRequestedPriority

1

NodeResourcesLeastAllocated

优先调度pod到requested使用最少的节点

0-100

node节点的资源情况

MostRequestedPriority

1

NodeResourcesMostAllocated

优先调度pod到requested使用最多的节点

0-100

node节点的资源情况

RequestedToCapacityRatioPriority

1

RequestedToCapacityRatio

待补充

0

NodePreferAvoidPodsPriority

10000

NodePreferAvoidPods

根据节点的注释" scheduler.alpha.kubernetes.io/preferAvoidPods"对节点进行优先级排序

0或者1000000

节点是否配置annotation: "scheduler.alpha.kubernetes.io/preferAvoidPods"

EvenPodsSpreadPriority

1

PodTopologySpread

pod的拓扑扩展约束

EvenPodsSpread

0-100

是否配置拓扑扩展约束

ResourceLimitsPriority

1

NodeResourceLimits

待补充

ResourceLimitsPriorityFunction

1

补充说明:

1 优选策略都会使用某个具体的打分插件来进行打分。

2 插件的打分逻辑中一般都有score逻辑,部分插件还提供了preScore和NormalizeScore逻辑。

3 优选策略EvenPodsSpreadPriorityResourceLimitsPriority是通过特性开启的。虽然不在默认列表中,但是如果对应的特性有开启,则开始工作。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 调度器的优选策略及相关说明
相关产品与服务
容器服务
腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
http://www.vxiaotou.com