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
иstrategies
идентичны официальной документации.- 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.globalParameters.evictFailedBarePodsбулевый
- 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.highNodeUtilization.enabledбулевый
- 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.lowNodeUtilization.enabledбулевый
- 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.removeDuplicates.enabledбулевый
- 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.removeFailedPods.enabledбулевый
- 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.removePodsHavingTooManyRestarts.enabledбулевый
- 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.removePodsViolatingInterPodAntiAffinity.enabledбулевый
- 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.removePodsViolatingNodeAffinity.enabledбулевый
- 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.removePodsViolatingNodeTaints.enabledбулевый
- 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
будут учитываться в этой стратегии.
- spec.deschedulerPolicy.strategies.removePodsViolatingTopologySpreadConstraint.enabledбулевый
- spec.deschedulerPolicy.strategies.highNodeUtilizationобъект
- spec.deschedulerPolicy.globalParametersобъект
- spec.deploymentTemplateобъект