kube-scheduler Configuration (v1)

Типи ресурсів

ClientConnectionConfiguration

Зʼявляється у:

ClientConnectionConfiguration містить деталі для створення клієнта.

ПолеОпис
kubeconfig [Обовʼязкове]
string

kubeconfig — шлях до файлу KubeConfig.

acceptContentTypes [Обовʼязкове]
string

acceptContentTypes визначає заголовок Accept, який надсилається клієнтами при підключенні до сервера, перевизначаючи стандатне значення 'application/json'. Це поле буде контролювати всі зʼєднання з сервером, що використовуються певним клієнтом.

contentType [Обовʼязкове]
string

contentType — тип вмісту, який використовується при надсиланні даних на сервер від цього клієнта.

qps [Обовʼязкове]
float32

qps контролює кількість запитів на секунду, дозволених для цього зʼєднання.

burst [Обовʼязкове]
int32

burst дозволяє накопичувати додаткові запити, коли клієнт перевищує свою норму.

DebuggingConfiguration

Зʼявляється у:

DebuggingConfiguration містить конфігурацію для функцій, що повʼязані з налагодженням.

ПолеОпис
enableProfiling [Обовʼязкове]
bool

enableProfiling увімкне профілювання через веб-інтерфейс host:port/debug/pprof/

enableContentionProfiling [Обовʼязкове]
bool

enableContentionProfiling увімкне профілювання блокувань, якщо enableProfiling увімкнено.

LeaderElectionConfiguration

Зʼявляється у:

LeaderElectionConfiguration визначає конфігурацію клієнтів вибору лідера для компонентів, які можуть працювати з увімкненим вибором лідера.

ПолеОпис
leaderElect [Обовʼязкове]
bool

leaderElect увімкне клієнта вибору лідера для отримання лідерства перед виконанням основного циклу. Увімкніть це при запуску реплікованих компонентів для високої доступності.

leaseDuration [Обовʼязкове]
meta/v1.Duration

leaseDuration — це період часу, протягом якого кандидати, які не є лідерами, чекатимуть після поновлення лідерства, перш ніж спробувати зайняти лідерство в лідерському слоті, який вже зайнятий, але не поновлений. Це фактично максимальний термін, на який лідер може бути зупинений, перш ніж його замінить інший кандидат. Це може бути застосовано лише у випадку, якщо вибори лідера увімкнено.

renewDeadline [Обовʼязкове]
meta/v1.Duration

renewDeadline — це інтервал між спробами діючого лідера оновити слот лідерства перед тим, як він припинить лідирування. Це має бути менше або дорівнювати тривалості оренди. Це застосовно тільки тоді, коли вибір лідера увімкнено.

retryPeriod [Обовʼязкове]
meta/v1.Duration

retryPeriod — це тривалість, яку клієнти повинні чекати між спробами отримання та оновлення лідерства. Це застосовно тільки тоді, коли вибір лідера увімкнено.

resourceLock [Обовʼязкове]
string

resourceLock вказує тип обʼєкта ресурсу, який буде використовуватися для блокування під час циклів вибору лідера.

resourceName [Обовʼязкове]
string

resourceName вказує на імʼя обʼєкта ресурсу, який буде використовуватися для блокування під час циклів вибору лідера.

resourceNamespace [Обовʼязкове]
string

resourceNamespace вказує на простір імен обʼєкта ресурсу, який буде використовуватися для блокування під час циклів вибору лідера.

DefaultPreemptionArgs

DefaultPreemptionArgs містить аргументи, які використовуються для налаштування втулка DefaultPreemption.

ПолеОпис
apiVersion
string
kubescheduler.config.k8s.io/v1
kind
string
DefaultPreemptionArgs
minCandidateNodesPercentage [Обовʼязкове]
int32

MinCandidateNodesPercentage — це мінімальна кількість кандидатів для відбору при тестуванні виселення як відсоток від кількості вузлів. Має бути в межах [0, 100]. Стандартно дорівнює 10% від розміру кластера, якщо не вказано.

minCandidateNodesAbsolute [Обовʼязкове]
int32

MinCandidateNodesAbsolute — це абсолютна мінімальна кількість кандидатів для відбору. Ймовірна кількість кандидатів, які будуть перераховані для тестування виселення, розраховується за формулою:

numCandidates = max(numNodes * minCandidateNodesPercentage, minCandidateNodesAbsolute).

Ми говоримо "ймовірна", оскільки є й інші фактори, такі як порушення PDB, які впливають на кількість кандидатів для відбору. Має бути не менше 0 вузлів. Стандартно дорівнює 100 вузлам, якщо не вказано.

InterPodAffinityArgs

InterPodAffinityArgs містить аргументи, які використовуються для налаштування втулка InterPodAffinity.

ПолеОпис
apiVersion
string
kubescheduler.config.k8s.io/v1
kind
string
InterPodAffinityArgs
hardPodAffinityWeight [Обовʼязкове]
int32

HardPodAffinityWeight — це вага оцінки для наявних Podʼів з відповідною жорсткою спорідненністю до вхідного Podʼа.

ignorePreferredTermsOfExistingPods [Обовʼязкове]
bool

IgnorePreferredTermsOfExistingPods налаштовує планувальник ігнорувати бажані правила спорідненості наявних Podʼів при оцінці кандидатів вузлів, якщо вхідний Pod не має спорідненості між Podʼами.

KubeSchedulerConfiguration

KubeSchedulerConfiguration налаштовує планувальник

ПолеОпис
apiVersion
string
kubescheduler.config.k8s.io/v1
kind
string
KubeSchedulerConfiguration
parallelism [Обовʼязкове]
int32

Parallelism визначає кількість паралелізму в алгоритмах для планування Podʼів. Має бути більше 0. Стандартно — 16

leaderElection [Обовʼязкове]
LeaderElectionConfiguration

LeaderElection визначає конфігурацію клієнта виборів лідера.

clientConnection [Обовʼязкове]
ClientConnectionConfiguration

ClientConnection визначає файл kubeconfig і налаштування підключення клієнта для використання проксі-сервером при спілкуванні з apiserver.

DebuggingConfiguration [Обовʼязкове]
DebuggingConfiguration
(Члени DebuggingConfiguration вбудовані в цей тип.)

DebuggingConfiguration містить налаштування для функцій, повʼязаних із налагодженням. TODO: Ми можемо зробити це підструктурою як налагодження componentbaseconfigv1alpha1.DebuggingConfiguration

percentageOfNodesToScore [Обовʼязкове]
int32

PercentageOfNodesToScore — це відсоток усіх вузлів, які, як тільки будуть визнані придатними для запуску Podʼа, планувальник припиняє пошук інших придатних вузлів у кластері. Це допомагає покращити продуктивність планувальника. Планувальник завжди намагається знайти принаймні "minFeasibleNodesToFind" придатних вузлів незалежно від значення цього прапорця. Приклад: якщо розмір кластера 500 вузлів і значення цього прапорця 30, то планувальник припиняє пошук далі придатних вузлів, як тільки знайде 150 придатних. Коли значення дорівнює 0, стандартно буде оцінено відсоток вузлів (5%—50% залежно від розміру кластера). Він перекривається рівнем профілю PercentageOfNodesToScore.

podInitialBackoffSeconds [Обовʼязкове]
int64

PodInitialBackoffSeconds — це початкова фора для непридатних для планування Podʼів. Якщо вказано, він повинен бути більше 0. Якщо це значення нульове, буде використано стандартне значення (1s).

podMaxBackoffSeconds [Обовʼязкове]
int64

PodMaxBackoffSeconds — це максимальна фора для непридатних для планування Podʼів. Якщо вказано, він повинен бути більше podInitialBackoffSeconds. Якщо це значення нульове, буде використано стандартне значення (10s).

profiles [Обовʼязкове]
[]KubeSchedulerProfile

Profiles — це профілі планування, які підтримує kube-scheduler. Podʼи можуть вибрати, щоб їх планували за певним профілем, встановивши відповідну назву планувальника. Podʼи, які не вказують жодної назви планувальника, плануються за допомогою профілю "default-scheduler", якщо він присутній тут.

extenders [Обовʼязкове]
[]Extender

Extenders — це список розширень планувальника, кожне з яких містить значення, як спілкуватися з розширенням. Ці розширення використовуються всіма профілями планувальника.

delayCacheUntilActive [Обовʼязкове]
bool

DelayCacheUntilActive визначає, коли починати кешування. Якщо це true і вибори лідера увімкнені, планувальник чекатиме, щоб заповнити кеші інформаторів, поки не стане лідером. Це призведе до повільнішого перемикання з резервного на основний вузол із перевагою нижчого використання пам’яті під час очікування стати лідером. Стандартно — false.

NodeAffinityArgs

NodeAffinityArgs містить аргументи для налаштування втулка NodeAffinity.

ПолеОпис
apiVersion
string
kubescheduler.config.k8s.io/v1
kind
string
NodeAffinityArgs
addedAffinity
core/v1.NodeAffinity

AddedAffinity застосовується до всіх Podʼів додатково до NodeAffinity, вказаного в PodSpec. Тобто вузли повинні відповідати AddedAffinity І .spec.NodeAffinity. AddedAffinity є станадртно порожнім (є збіг зі всіма вузлами). Коли використовується AddedAffinity, деякі Podʼи з вимогами щодо спорідненості, які збігаються з конкретним вузлом (наприклад, Podʼи Daemonset), можуть залишатися непридатними для планування.

NodeResourcesBalancedAllocationArgs

NodeResourcesBalancedAllocationArgs містить аргументи для налаштування втулка NodeResourcesBalancedAllocation.

ПолеОпис
apiVersion
string
kubescheduler.config.k8s.io/v1
kind
string
NodeResourcesBalancedAllocationArgs
resources [Обовʼязково]
[]ResourceSpec

Ресурси, якими потрібно керувати, стандартно: "cpu" та "memory", якщо не вказано інше.

NodeResourcesFitArgs

NodeResourcesFitArgs містить аргументи для налаштування втулка NodeResourcesFit.

ПолеОпис
apiVersion
string
kubescheduler.config.k8s.io/v1
kind
string
NodeResourcesFitArgs
ignoredResources [Обовʼязково]
[]string

IgnoredResources — список ресурсів, які фільтр NodeResources повинен ігнорувати. Це не застосовується до оцінювання.

ignoredResourceGroups [Обовʼязково]
[]string

IgnoredResourceGroups визначає список груп ресурсів, які фільтр NodeResources повинен ігнорувати. наприклад, якщо група - ["example.com"], вона ігноруватиме всі імена ресурсів, які починаються з "example.com", такі як "example.com/aaa" і "example.com/bbb". Імʼя групи ресурсів не може містити '/'. Це не застосовується до оцінювання.

scoringStrategy [Обовʼязково]
ScoringStrategy

ScoringStrategy вибирає стратегію оцінювання ресурсів вузлів. Стандартно використовується стратегія LeastAllocated з рівною вагою "cpu" та "memory".

PodTopologySpreadArgs

PodTopologySpreadArgs містить аргументи для налаштування втулка PodTopologySpread.

ПолеОпис
apiVersion
string
kubescheduler.config.k8s.io/v1
kind
string
PodTopologySpreadArgs
defaultConstraints
[]core/v1.TopologySpreadConstraint

DefaultConstraints визначає обмеження на розподіл топології, які будуть застосовані до Podʼів, що не мають визначених обмежень у pod.spec.topologySpreadConstraints. .defaultConstraints[*].labelSelectors повинні бути порожніми, оскільки вони виводяться з приналежності Podʼа до Services, ReplicationControllers, ReplicaSets або StatefulSets. Якщо не порожньо, .defaultingType має бути "List".

defaultingType
PodTopologySpreadConstraintsDefaulting

DefaultingType визначає, як виводяться .defaultConstraints. Може бути одним з "System" або "List".

  • "System": Використовувати визначені kubernetes обмеження, які розподіляють Podʼи серед вузлів і зон.
  • "List": Використовувати обмеження, визначені в .defaultConstraints.

Стандартно "System".

VolumeBindingArgs

VolumeBindingArgs містить аргументи для налаштування втулка VolumeBinding.

ПолеОпис
apiVersion
string
kubescheduler.config.k8s.io/v1
kind
string
VolumeBindingArgs
bindTimeoutSeconds [Обовʼязкове]
int64

BindTimeoutSeconds — це тайм-аут в секундах у операції привʼязки томів. Значення повинно бути невідʼємним цілим числом. Значення нуль означає, що немає очікування. Якщо це значення не вказано, буде використано стандартне значення (600).

shape
[]UtilizationShapePoint

Shape вказує точки, що визначають форму функції оцінки, яка використовується для оцінки вузлів на основі використання статично наданих PV. Використання розраховується шляхом поділу загального запитаного обсягу сховища Podʼа на загальну ємність доступних PV на кожному вузлі. Кожна точка містить використання (у діапазоні від 0 до 100) та відповідну оцінку (у діапазоні від 0 до 10). Ви можете налаштувати пріоритет, вказуючи різні оцінки для різних рівнів використання. Стандартні точки Shape:

  1. 0 для 0 використання
  2. 10 для 100 використання. Всі точки повинні бути відсортовані у зростаючому порядку за використанням.

Extender

Зʼявляється в:

Extender містить параметри, що використовуються для звʼязку з розширювачем. Якщо дієслово не вказано/пусте, вважається, що розширювач вирішів не надавати це розширення.

ПолеОпис
urlPrefix [Обовʼязкове]
string

URLPrefix за яким доступний розширювач

filterVerb [Обовʼязкове]
string

Дієслово для виклику фільтрації, порожнє, якщо не підтримується. Це дієслово додається до URLPrefix при виконанні виклику фільтрації розширювача.

preemptVerb [Обовʼязкове]
string

Дієслово для виклику витіснення, порожнє, якщо не підтримується. Це дієслово додається до URLPrefix при виконанні виклику витіснення розширювача.

prioritizeVerb [Обовʼязкове]
string

Дієслово для виклику пріоритезації, порожнє, якщо не підтримується. Це дієслово додається до URLPrefix при виконанні виклику пріоритезації розширювача.

weight [Обовʼязкове]
int64

Числовий множник для оцінок вузлів, які генерує виклик пріоритезації. Вага повинна бути додатним цілим числом

bindVerb [Обовʼязкове]
string

Дієслово для виклику привʼязки, порожнє, якщо не підтримується. Це дієслово додається до URLPrefix при виконанні виклику привʼязки розширювача. Якщо цей метод реалізовано розширювачем, це відповідальність розширювача привʼязати Pod до apiserver. Тільки один розширювач може реалізовувати цю функцію.

enableHTTPS [Обовʼязкове]
bool

EnableHTTPS вказує, чи слід використовувати https для звʼязку з розширювачем

tlsConfig [Обовʼязкове]
ExtenderTLSConfig

TLSConfig вказує налаштування транспортного рівня безпеки

httpTimeout [Обовʼязкове]
meta/v1.Duration

HTTPTimeout вказує тривалість тайм-ауту для виклику розширювача. Тайм-аут фільтрації призводить до невдалої спроби планування Podʼа. Тайм-аут пріоритезації ігнорується, пріоритети k8s/інших розширювачів використовуються для вибору вузла.

nodeCacheCapable [Обовʼязкове]
bool

NodeCacheCapable вказує, що розширювач здатний кешувати інформацію про вузли, отже, планувальник повинен надсилати лише мінімальну інформацію про придатні вузли, припускаючи, що розширювач вже кешував повні дані про всі вузли в кластері

managedResources
[]ExtenderManagedResource

ManagedResources — це список розширених ресурсів, що керуються цим розширювачем.

  • Pod буде надіслано до розширювача на етапах фільтрації, пріоритезації та привʼязки (якщо розширювач є звʼязувальним) тільки якщо Pod запитує принаймні один з розширених ресурсів у цьому списку. Якщо список порожній або не вказаний, всі Podʼи будуть надіслані до цього розширювача.
  • Якщо IgnoredByScheduler встановлено в true для ресурсу, kube-scheduler буде пропускати перевірку ресурсу в предикатах.
ignorable [Обовʼязкове]
bool

Ignorable вказує, чи можна ігнорувати розширювач, тобто планування не повинно не вдасться, якщо розширювач повертає помилку або недоступний.

ExtenderManagedResource

Зʼявляється в:

ExtenderManagedResource описує аргументи розширених ресурсів, якими керує розширювач.

ПолеОпис
name [Обовʼязкове]
string

Назва розширеного ресурсу.

ignoredByScheduler [Обовʼязкове]
bool

IgnoredByScheduler вказує, чи слід kube-scheduler ігнорувати цей ресурс при застосуванні предикатів.

ExtenderTLSConfig

Зʼявляється в:

ExtenderTLSConfig містить налаштування для увімкнення TLS з розширювачем

ПолеОпис
insecure [Обовʼязкове]
bool

Сервер повинен бути доступний без перевірки сертифікату TLS. Тільки для тестування.

serverName [Обовʼязкове]
string

ServerName передається серверу для SNI та використовується в клієнті для перевірки сертифікатів сервера. Якщо ServerName порожній, використовується імʼя хоста, яке використовується для звʼязку з сервером.

certFile [Обовʼязкове]
string

Сервер вимагає автентифікацію клієнтського сертифікату TLS

keyFile [Обовʼязкове]
string

Сервер вимагає автентифікацію клієнтського сертифікату TLS

caFile [Обовʼязкове]
string

Довірені кореневі сертифікати для сервера

certData [Обовʼязкове]
[]byte

CertData містить PEM-кодовані байти (зазвичай зчитуються з файлу клієнтського сертифіката). CertData має пріоритет над CertFile

keyData [Обовʼязкове]
[]byte

KeyData містить PEM-кодовані байти (зазвичай зчитуються з файлу ключа клієнтського сертифіката). KeyData має пріоритет над KeyFile

caData [Обовʼязкове]
[]byte

CAData містить PEM-кодовані байти (зазвичай зчитуються з файлу з кореневими сертифікатами). CAData має пріоритет над CAFile

KubeSchedulerProfile

Зʼявляється в:

KubeSchedulerProfile є профілем планувальника.

ПолеОпис
schedulerName [Обовʼязкове]
string

SchedulerName є імʼям планувальника, асоційованого з цим профілем. Якщо SchedulerName відповідає значенню "spec.schedulerName" Podʼа, то Pod буде плануватися з цим профілем.

percentageOfNodesToScore [Обовʼязкове]
int32

PercentageOfNodesToScore є відсотком усіх вузлів, після знаходження яких, планувальник припиняє пошук більш придатних вузлів у кластері для запуску Podʼа. Це допомагає покращити продуктивність планувальника. Планувальник завжди намагається знайти принаймні "minFeasibleNodesToFind" придатних вузлів незалежно від значення цього прапорця. Наприклад, якщо розмір кластера становить 500 вузлів і значення цього прапорця становить 30, то планувальник припиняє пошук далі, як тільки знаходить 150 придатних вузлів. Коли значення 0, стандартно буде оцінено відсоток (5%–50% в залежності від розміру кластера) вузлів. Це матиме перевагу перед глобальним PercentageOfNodesToScore. Якщо це пусто, буде використано глобальний PercentageOfNodesToScore.

plugins [Обовʼязкове]
Plugins

Plugins визначають набір втулків, які мають бути увімкнені або вимкнені. Увімкнені втулки — це ті, які мають бути увімкнені додатково до стандартних втулків. Вимкнені втулки — це будь-які зі стандартних втулків, які мають бути вимкнені. Коли жоден увімкнений або вимкнений втулок не зазначений для точки розширення, будуть використані стандартні втулки для цієї точки розширення, якщо такі є. Якщо зазначено втулок QueueSort, то той самий втулок QueueSort та PluginConfig повинні бути зазначені для всіх профілів.

pluginConfig [Обовʼязкове]
[]PluginConfig

PluginConfig є необовʼязковим набором параметрів для кожного втулка. Виключення конфігураційних аргументів для втулка є еквівалентним використанню стандартної конфігурації для цього втулка.

Plugin

Зʼявляється в:

Plugin визначає імʼя втулка та його вагу, якщо це застосовується. Вага використовується лише для втулків типу Score.

ПолеОпис
name [Обовʼязкове]
string

Name визначає імʼя втулка

weight [Обовʼязкове]
int32

Weight визначає вагу втулка, використовується лише для втулків типу Score.

PluginConfig

Зʼявляється в:

PluginConfig визначає аргументи, які повинні бути передані втулку під час ініціалізації. Втулок, який викликається на кількох точках розширення, ініціалізується один раз. Args можуть мати довільну структуру. Обробка цих аргументів залежить від самого втулка.

ПолеОпис
name [Обовʼязкове]
string

Name визначає імʼя втулка, що конфігурується

args [Обовʼязкове]
k8s.io/apimachinery/pkg/runtime.RawExtension

Args визначає аргументи, що передаються втулкам під час ініціалізації. Args можуть мати довільну структуру.

PluginSet

Зʼявляється в:

PluginSet визначає включені та виключені втулки для точки розширення. Якщо масив порожній, відсутній або nil, використовуватимуться стандартні втулки для цієї точки розширення.

ПолеОпис
enabled [Обовʼязкове]
[]Plugin

Enabled визначає втулки, які повинні бути активовані додатково до стандартних втулків. Якщо стандартний втулок також конфігуровано у файлі конфігурації планувальника, вага втулка буде перезаписана відповідно. Ці втулки викликаються після стандартних втулків і в тому ж порядку, як зазначено тут.

disabled [Обовʼязкове]
[]Plugin

Disabled визначає стандартні втулки, які повинні бути вимкнені. Коли всі стандартні втулки потрібно вимкнути, слід надати масив, що містить лише один символ "*".

Plugins

Зʼявляється в:

Plugins включає кілька точок розширення. Коли вони вказані, список втулків для конкретної точки розширення є єдиними активованими втулками. Якщо точка розширення пропущена з конфігурації, тоді використовуються стандартні втулки для цієї точки розширення. Активовані втулки викликаються в порядку, зазначеному тут, після стандартних втулків. Якщо їх потрібно викликати перед стандартними втулками, стандартні втулки повинні бути вимкнені і знову увімкнені тут у бажаному порядку.

ПолеОпис
preEnqueue [Обовʼязкове]
PluginSet

PreEnqueue ` це список втулків, які повинні бути викликані перед додаванням Podʼів у чергу планування.

queueSort [Обовʼязкове]
PluginSet

QueueSort — це список втулків, які повинні бути викликані під час сортування Podʼів у черзі планування.

preFilter [Обовʼязкове]
PluginSet

PreFilter — це список втулків, які повинні бути викликані на точці розширення "PreFilter" фреймворку планування.

filter [Обовʼязкове]
PluginSet

Filter — це список втулків, які повинні бути викликані при фільтрації вузлів, що не можуть запустити Pod.

postFilter [Обовʼязкове]
PluginSet

PostFilter — це список втулків, які викликаються після фази фільтрації, але лише коли для Podʼа не були знайдені підходящі вузли.

preScore [Обовʼязкове]
PluginSet

PreScore — це список втулків, які викликаються перед оцінюванням.

score [Обовʼязкове]
PluginSet

Score — це список втулків, які повинні бути викликані при ранжуванні вузлів, які пройшли фазу фільтрації.

reserve [Обовʼязкове]
PluginSet

Reserve — це список втулків, які викликаються при резервуванні/анулюванні резервування ресурсів після того, як вузол призначений для запуску Podʼа.

permit [Обовʼязкове]
PluginSet

Permit — це список втулків, які контролюють привʼязування Podʼа. Ці втулки можуть запобігти або затримати привʼязування Podʼа.

preBind [Обовʼязкове]
PluginSet

PreBind — це список втулків, які повинні бути викликані перед привʼязуванням Podʼа.

bind [Обовʼязкове]
PluginSet

Bind — це список втулків, які повинні бути викликані на точці розширення "Bind" фреймворку планування. Планувальник викликає ці втулки по порядку. Планувальник пропускає решту цих втулків, як тільки один з них повертає успіх.

postBind [Обовʼязкове]
PluginSet

PostBind — це список втулків, які повинні бути викликані після успішного привʼязування Podʼа.

multiPoint [Обовʼязкове]
PluginSet

MultiPoint — це спрощений розділ конфігурації для активації втулків для всіх дійсних точок розширення. Втулки, активовані через MultiPoint, автоматично реєструються для кожної індивідуальної точки розширення, яку втулок реалізував. Вимкнення втулка через MultiPoint вимикає таку поведінку. Те ж саме стосується вимкнення "*" через MultiPoint (жоден стандартний втулок не буде автоматично зареєстрований). Втулки все ще можна вимкнути через їх окремі точки розширення.

Що стосується пріоритету, конфігурація втулків дотримується цієї основної ієрархії

  1. Специфічні точки розширення
  2. Явно сконфігуровані втулки MultiPoint
  3. Набір стандартних втулків, як втулки MultiPoint. Це означає, що втулок з вищим пріоритетом буде виконуватися першим і перезаписувати будь-які налаштування всередині MultiPoint. Явно сконфігуровані втулки користувача також мають вищий пріоритет над стандартними втулками. В межах цієї ієрархії, параметр Enabled має вищий пріоритет над Disabled. Наприклад, якщо втулок зазначено як в multiPoint.Enabled та multiPoint.Disabled, втулок буде активовано. Подібним чином, включення multiPoint.Disabled = '*' і multiPoint.Enabled = pluginA все ще зареєструє цей конкретний втулок через MultiPoint. Це слідує тій же поведінці, що й у всіх інших конфігураціях точок розширення.

PodTopologySpreadConstraintsDefaulting

(Аліас для string)

Зʼявляється в:

PodTopologySpreadConstraintsDefaulting визначає, як встановлювати стандартне значення для втулка PodTopologySpread.

RequestedToCapacityRatioParam

Зʼявляється в:

RequestedToCapacityRatioParam визначає параметри RequestedToCapacityRatio.

ПолеОпис
shape [Обовʼязково]
[]UtilizationShapePoint

Shape є списком точок, що визначають форму функції оцінки.

ResourceSpec

Зʼявляється в:

ResourceSpec представляє один ресурс.

ПолеОпис
name [Обовʼязково]
string

Назва ресурсу.

weight [Обовʼязково]
int64

Вага ресурсу.

ScoringStrategy

Зʼявляється в:

ScoringStrategy визначає ScoringStrategyType для втулка ресурсів вузла.

ПолеОпис
type [Обовʼязково]
ScoringStrategyType

Тип обирає стратегію для виконання.

resources [Обовʼязково]
[]ResourceSpec

Ресурси, які слід враховувати при оцінюванні. Стандартний набір ресурсів включає "cpu" та "memory" з однаковою вагою. Дозволені ваги від 1 до 100. Стандартна вага дорівнює 1, якщо не вказана або явно встановлена в 0.

requestedToCapacityRatio [Обовʼязково]
RequestedToCapacityRatioParam

Аргументи, специфічні для стратегії RequestedToCapacityRatio.

ScoringStrategyType

(Аліас string)

Зʼявляється в:

ScoringStrategyType визначає тип стратегії оцінювання, яка використовується у втулку NodeResourcesFit.

UtilizationShapePoint

Зʼявляється в:

UtilizationShapePoint представляє окрему точку функції пріоритету.

ПолеОпис
utilization [Обовʼязково]
int32

Utilization (вісь x). Дійсні значення від 0 до 100. Повністю використаний вузол відповідає 100.

score [Обовʼязково]
int32

Оцінка, присвоєна даній утилізації (вісь y). Дійсні значення від 0 до 10.

Змінено August 22, 2024 at 6:59 PM PST: upstream sync (b7f2b32b60)