3.11.4. 配置 descheduler 配置集

您可以配置 descheduler 使用哪些配置集来驱除 pod。

先决条件

  • 集群管理员特权

流程

  1. 编辑 KubeDescheduler 对象:

    $ oc edit kubedeschedulers.operator.openshift.io cluster -n openshift-kube-descheduler-operator
  2. spec.profiles 部分指定一个或多个配置集。

    apiVersion: operator.openshift.io/v1beta1
    kind: KubeDescheduler
    metadata:
      name: cluster
      namespace: openshift-kube-descheduler-operator
    spec:
      deschedulingIntervalSeconds: 3600
      logLevel: Normal
      managementState: Managed
      operatorLogLevel: Normal
      profiles:
      - AffinityAndTaints       1
      - TopologyAndDuplicates   2
      - LifecycleAndUtilization 3
    1
    启用 AffinityAndTaints 配置集,它会驱除违反了 pod 间的反关联性、节点关联性和节点污点的 pod。
    2
    启用 TopologyAndDuplicates 配置集,它会驱除 pod,以便在节点间平均分配类似的 pod 或相同拓扑域的 pod。
    3
    启用 LifecycleAndUtilization 配置集,用于驱除长时间运行的 pod,并平衡节点之间的资源使用量。

    您可以启用多个配置集 ; 指定配置集的顺序并不重要。

  3. 保存文件以使改变生效。