k8s 常用调度策略使用详解

Posted 小码农叔叔

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了k8s 常用调度策略使用详解相关的知识,希望对你有一定的参考价值。

一、前言

通过之前的学习,我们了解到k8s集群中最小工作单位是pod,对于k8s集群来说,一个pod的完整生命周期是由一系列调度策略来控制,这些调度策略具体是怎么工作的呢?本文将详细讨论下这个问题。

二、k8s调度策略简介

默认情况下,k8s集群中某个Pod在哪个Node节点运行,是由Scheduler组件采用相应的算法计算出来的。这个过程是不受人工控制的,从下图中通过Scheduler的位置也可以看出来;

但在实际使用中,这并不满足的需求,因为很多情况下,我们想控制某些Pod到达某些节点上,那么应该怎么做呢?这就要求了解kubernetes对Pod的调度规则;

三、k8s 四大调度策略

k8s提供了常用的4大调度规则,如下:

  • 自动调度:运行在哪个节点上完全由Scheduler经过一系列的算法计算得出;
  • 定向调度:NodeName、NodeSelector;
  • 亲和性调度:NodeAffinity、PodAffinity、PodAntiAffinity;
  • 污点(容忍)调度:Taints、Toleration;

接下来,将结合实际操作对每种调度策略做详细的说明;

四、定向调度</

以上是关于k8s 常用调度策略使用详解的主要内容,如果未能解决你的问题,请参考以下文章

k8s部署-37-带你了解并自定义pod调度策略(上)

k8s的调度器架构和策略

k8s的pod的资源调度

k8s基本概念-配置调度策略之(Taints-and-Tolerations)

影响K8S Pod分配和调度策略的两大关键特性

影响K8S Pod分配和调度策略的两大关键特性