Descheduler
Scope: Cluster
Version: v1alpha1
Объект Descheduler — это описание одного экземпляра descheduler.
- apiVersion
- kind
- metadata
- metadata.name
- spec
Обязательный параметр
Описывает поведение экземпляра descheduler.
- spec.deploymentTemplate
Описание шаблона Deployment’а descheduler.
- spec.deploymentTemplate.nodeSelector
- spec.deploymentTemplate.tolerations
- spec.deploymentTemplate.tolerations.effect
- spec.deploymentTemplate.tolerations.key
- spec.deploymentTemplate.tolerations.operator
- spec.deploymentTemplate.tolerations.tolerationSeconds
- spec.deploymentTemplate.tolerations.value
- spec.deschedulerPolicy.globalParameters
Параметры, применяемые ко всем политикам.
- spec.deschedulerPolicy.globalParameters.evictFailedBarePods
Разрешает эвиктить (evict) поды без
ownerReferences
или в состоянииFailed
. - spec.deschedulerPolicy.globalParameters.evictLocalStoragePods
Разрешает эвиктить (evict) поды, использующие локальное хранилище (local storage).
- spec.deschedulerPolicy.globalParameters.evictSystemCriticalPods
Разрешает эвиктить (evict) поды с любым
priority
(даже системные). - spec.deschedulerPolicy.globalParameters.ignorePvcPods
При включении запрещает эвиктить (evict) поды с PVC.
- spec.deschedulerPolicy.globalParameters.maxNoOfPodsToEvictPerNamespace
Ограничивает максимальное количество подов для одновременного эвикта (evict), разделенное по пространствам имен (namespace).
- spec.deschedulerPolicy.globalParameters.maxNoOfPodsToEvictPerNode
Ограничивает максимальное количество подов для одновременного эвикта (evict), разделенное по узлам.
- spec.deschedulerPolicy.globalParameters.nodeSelector
- spec.deschedulerPolicy.strategies
Список стратегий с их параметрами.
- spec.deschedulerPolicy.strategies.highNodeUtilization
Эта стратегия находит недогруженные узлы и эвиктит (evict) с них поды в надежде что эти поды будут компактно распределены по меньшему количеству узлов.
- spec.deschedulerPolicy.strategies.highNodeUtilization.enabled
Обязательный параметр
- spec.deschedulerPolicy.strategies.highNodeUtilization.namespaceFilter
Ограничивает список пространств имен (namespace), к которым применяется данная стратегия.
- spec.deschedulerPolicy.strategies.highNodeUtilization.nodeFilter
Фильтр, ограничивающий список узлов, к которым применится эта стратегия.
- spec.deschedulerPolicy.strategies.highNodeUtilization.nodeFit
Если включена, перед эвиктом (evict) пода descheduler будет проверять — «поместится» ли он на другой узел.
- spec.deschedulerPolicy.strategies.highNodeUtilization.priorityFilter
Только поды с
priority
будут учитываться в этой стратегии.
- spec.deschedulerPolicy.strategies.lowNodeUtilization
Эта стратегия находит перегруженные узлы и эвиктит (evict) с них поды в надежде что эти поды будут отправлены на менее загруженные узлы.
- spec.deschedulerPolicy.strategies.lowNodeUtilization.enabled
Обязательный параметр
- spec.deschedulerPolicy.strategies.lowNodeUtilization.namespaceFilter
Ограничивает список пространств имен (namespace), к которым применяется данная стратегия.
- spec.deschedulerPolicy.strategies.lowNodeUtilization.nodeFilter
Фильтр, ограничивающий список узлов, к которым применится эта стратегия.
- spec.deschedulerPolicy.strategies.lowNodeUtilization.nodeFit
Если включена, перед эвиктом (evict) пода descheduler будет проверять — «поместится» ли он на другой узел.
- spec.deschedulerPolicy.strategies.lowNodeUtilization.priorityFilter
Только поды с
priority
будут учитываться в этой стратегии.
- spec.deschedulerPolicy.strategies.removeDuplicates
Эта стратегия эвиктит (evict) поды, принадлежащие одному контроллеру (ReplicaSet (RS), ReplicationController (RC), StatefulSet), но находящиеся на одном узле.
- spec.deschedulerPolicy.strategies.removeDuplicates.enabled
Обязательный параметр
- spec.deschedulerPolicy.strategies.removeDuplicates.namespaceFilter
Ограничивает список пространств имен (namespace), к которым применяется данная стратегия.
- spec.deschedulerPolicy.strategies.removeDuplicates.nodeFilter
Фильтр, ограничивающий список узлов, к которым применится эта стратегия.
- spec.deschedulerPolicy.strategies.removeDuplicates.nodeFit
Если включена, перед эвиктом (evict) пода descheduler будет проверять — «поместится» ли он на другой узел.
- spec.deschedulerPolicy.strategies.removeDuplicates.priorityFilter
Только поды с
priority
будут учитываться в этой стратегии.
- spec.deschedulerPolicy.strategies.removeFailedPods
Эта стратегия эвиктит (evict) поды в состоянии Failed.
- spec.deschedulerPolicy.strategies.removeFailedPods.enabled
Обязательный параметр
- spec.deschedulerPolicy.strategies.removeFailedPods.namespaceFilter
Ограничивает список пространств имен (namespace), к которым применяется данная стратегия.
- spec.deschedulerPolicy.strategies.removeFailedPods.nodeFilter
Фильтр, ограничивающий список узлов, к которым применится эта стратегия.
- spec.deschedulerPolicy.strategies.removeFailedPods.nodeFit
Если включена, перед эвиктом (evict) пода descheduler будет проверять — «поместится» ли он на другой узел.
- spec.deschedulerPolicy.strategies.removeFailedPods.priorityFilter
Только поды с
priority
будут учитываться в этой стратегии.
- spec.deschedulerPolicy.strategies.removePodsHavingTooManyRestarts
Эта стратегия эвиктит (evict) поды, у которых слишком много рестартов.
- spec.deschedulerPolicy.strategies.removePodsHavingTooManyRestarts.enabled
Обязательный параметр
- spec.deschedulerPolicy.strategies.removePodsHavingTooManyRestarts.namespaceFilter
Ограничивает список пространств имен (namespace), к которым применяется данная стратегия.
- spec.deschedulerPolicy.strategies.removePodsHavingTooManyRestarts.nodeFilter
Фильтр, ограничивающий список узлов, к которым применится эта стратегия.
- spec.deschedulerPolicy.strategies.removePodsHavingTooManyRestarts.nodeFit
Если включена, перед эвиктом (evict) пода descheduler будет проверять — «поместится» ли он на другой узел.
- spec.deschedulerPolicy.strategies.removePodsHavingTooManyRestarts.priorityFilter
Только поды с
priority
будут учитываться в этой стратегии.
- spec.deschedulerPolicy.strategies.removePodsViolatingInterPodAntiAffinity
Эта стратегия эвиктит (evict) поды, нарушающие interpod anti-affinity.
- spec.deschedulerPolicy.strategies.removePodsViolatingInterPodAntiAffinity.enabled
Обязательный параметр
- spec.deschedulerPolicy.strategies.removePodsViolatingInterPodAntiAffinity.namespaceFilter
Ограничивает список пространств имен (namespace), к которым применяется данная стратегия.
- spec.deschedulerPolicy.strategies.removePodsViolatingInterPodAntiAffinity.nodeFilter
Фильтр, ограничивающий список узлов, к которым применится эта стратегия.
- spec.deschedulerPolicy.strategies.removePodsViolatingInterPodAntiAffinity.nodeFit
Если включена, перед эвиктом (evict) пода descheduler будет проверять — «поместится» ли он на другой узел.
- spec.deschedulerPolicy.strategies.removePodsViolatingInterPodAntiAffinity.priorityFilter
Только поды с
priority
будут учитываться в этой стратегии.
- spec.deschedulerPolicy.strategies.removePodsViolatingNodeAffinity
Эта стратегия эвиктит (evict) поды, нарушающие node affinity.
- spec.deschedulerPolicy.strategies.removePodsViolatingNodeAffinity.enabled
Обязательный параметр
- spec.deschedulerPolicy.strategies.removePodsViolatingNodeAffinity.namespaceFilter
Ограничивает список пространств имен (namespace), к которым применяется данная стратегия.
- spec.deschedulerPolicy.strategies.removePodsViolatingNodeAffinity.nodeFilter
Фильтр, ограничивающий список узлов, к которым применится эта стратегия.
- spec.deschedulerPolicy.strategies.removePodsViolatingNodeAffinity.nodeFit
Если включена, перед эвиктом (evict) пода descheduler будет проверять — «поместится» ли он на другой узел.
- spec.deschedulerPolicy.strategies.removePodsViolatingNodeAffinity.priorityFilter
Только поды с
priority
будут учитываться в этой стратегии.
- spec.deschedulerPolicy.strategies.removePodsViolatingNodeTaints
Эта стратегия эвиктит (evict) поды, нарушающие NoSchedule taints.
- spec.deschedulerPolicy.strategies.removePodsViolatingNodeTaints.enabled
Обязательный параметр
- spec.deschedulerPolicy.strategies.removePodsViolatingNodeTaints.namespaceFilter
Ограничивает список пространств имен (namespace), к которым применяется данная стратегия.
- spec.deschedulerPolicy.strategies.removePodsViolatingNodeTaints.nodeFilter
Фильтр, ограничивающий список узлов, к которым применится эта стратегия.
- spec.deschedulerPolicy.strategies.removePodsViolatingNodeTaints.nodeFit
Если включена, перед эвиктом (evict) пода descheduler будет проверять — «поместится» ли он на другой узел.
- spec.deschedulerPolicy.strategies.removePodsViolatingNodeTaints.priorityFilter
Только поды с
priority
будут учитываться в этой стратегии.
- spec.deschedulerPolicy.strategies.removePodsViolatingTopologySpreadConstraint
Эта стратегия эвиктит (evict) поды, нарушающие topology spread constraints.
- spec.deschedulerPolicy.strategies.removePodsViolatingTopologySpreadConstraint.enabled
Обязательный параметр
- spec.deschedulerPolicy.strategies.removePodsViolatingTopologySpreadConstraint.namespaceFilter
Ограничивает список пространств имен (namespace), к которым применяется данная стратегия.
- spec.deschedulerPolicy.strategies.removePodsViolatingTopologySpreadConstraint.nodeFilter
Фильтр, ограничивающий список узлов, к которым применится эта стратегия.
- spec.deschedulerPolicy.strategies.removePodsViolatingTopologySpreadConstraint.nodeFit
Если включена, перед эвиктом (evict) пода descheduler будет проверять — «поместится» ли он на другой узел.
- spec.deschedulerPolicy.strategies.removePodsViolatingTopologySpreadConstraint.priorityFilter
Только поды с
priority
будут учитываться в этой стратегии.