Kubelet Configuration (v1beta1)
Типи ресурсів
FormatOptions
Зʼявляється в:
FormatOptions містить параметри для різних форматів логування.
Поле | Опис |
---|---|
text [Обовʼязково]TextOptions | [Alpha] Text містить параметри для формату логування "text". Доступно лише при увімкненій функціональній можливості LoggingAlphaOptions. |
json [Обовʼязково]JSONOptions | [Alpha] JSON містить параметри для формату журналювання "json". Доступно лише при увімкненій функціональній можливості LoggingAlphaOptions. |
JSONOptions
Зʼявляється в:
JSONOptions містить параметри для формату логування "json".
Поле | Опис |
---|---|
OutputRoutingOptions [Обовʼязково]OutputRoutingOptions | (Члени OutputRoutingOptions вбудовані в цей тип.)
Опис не надано. |
LogFormatFactory
LogFormatFactory забезпечує підтримку певного додаткового формату логу, який не є стандартним.
LoggingConfiguration
Зʼявляється в:
LoggingConfiguration містить параметри для логування.
Поле | Опис |
---|---|
format [Обовʼязково]string | Format Flag визначає структуру повідомлень логу. Станадртне значення для формату — |
flushFrequency [Обовʼязково]TimeOrMetaDuration | Максимальний час між очищенням логів. Якщо рядок, розбирається як тривалість (наприклад, "1s"). Якщо ціле число, максимальна кількість наносекунд (наприклад, 1с = 1000000000). Ігнорується, якщо обраний механізм логування записує повідомлення без буферизації. |
verbosity [Обовʼязково]VerbosityLevel | Verbosity є порогом, який визначає, які повідомлення логу записуються. Стандартне значення — нуль, що записує лише найбільш важливі повідомлення. Більші значення дозволяють додаткові повідомлення. Повідомлення про помилки завжди записуються. |
vmodule [Обовʼязково]VModuleConfiguration | VModule переозначає поріг детальності для окремих файлів. Підтримується тільки для формату логу "text". |
options [Обовʼязково]FormatOptions | [Alpha] Options містить додаткові параметри, специфічні для різних форматів логування. Використовуються лише параметри для обраного формату, але всі вони перевіряються. Доступно тільки при увімкненій функціональній можливості LoggingAlphaOptions. |
LoggingOptions
LoggingOptions можна використовувати з ValidateAndApplyWithOptions для перевизначення деяких глобальних стандартних значень.
Поле | Опис |
---|---|
ErrorStream [Обовʼязково]io.Writer | ErrorStream можна використовувати для перевизначення стандартного значення os.Stderr. |
InfoStream [Обовʼязково]io.Writer | InfoStream можна використовувати для перевизначення стандартного значення os.Stdout. |
OutputRoutingOptions
Зʼявляється в:
OutputRoutingOptions містить параметри, що підтримуються як для формату "text", так і для "json".
Поле | Опис |
---|---|
splitStream [Обовʼязково]bool | [Alpha] SplitStream перенаправляє повідомлення про помилки на stderr, тоді як інформаційні повідомлення відправляються на stdout з буферизацією. Стандартне значення — записувати обидва потоки у stdout без буферизації. Доступно тільки коли увімкнено функціональну можливість LoggingAlphaOptions. |
infoBufferSize [Обовʼязково]k8s.io/apimachinery/pkg/api/resource.QuantityValue | [Alpha] InfoBufferSize встановлює розмір інформаційного потоку при використанні розділених потоків. Стандартне значення — нуль, що вимикає буферизацію. Доступно тільки коли увімкнено функціональну можливість LoggingAlphaOptions. |
TextOptions
Зʼявляється в:
TextOptions містить параметри для формату логування "text".
Поле | Опис |
---|---|
OutputRoutingOptions [Обовʼязково]OutputRoutingOptions | (Члени OutputRoutingOptions вбудовані в цей тип.)
Опис не надано. |
TimeOrMetaDuration
Зʼявляється в:
TimeOrMetaDuration присутній лише для зворотної сумісності з полем flushFrequency, і нові поля повинні використовувати metav1.Duration.
Поле | Опис |
---|---|
Duration [Обовʼязково]meta/v1.Duration | Duration містить тривалість |
- [Обовʼязково]bool | SerializeAsString контролює, чи буде значення серіалізоване як рядок чи ціле число |
TracingConfiguration
Зʼявляється в:
TracingConfiguration надає версіоновану конфігурацію для клієнтів OpenTelemetry tracing.
Поле | Опис |
---|---|
endpoint string | Endpoint колектора, до якого цей компонент буде відправляти трасування. Зʼєднання не є захищеним і наразі не підтримує TLS. Рекомендується не задавати, і endpoint буде за замовчуванням otlp grpc, localhost:4317. |
samplingRatePerMillion int32 | SamplingRatePerMillion — кількість зразків для збору на мільйон спанів. Рекомендується не задавати. Якщо не задано, пробник поважає темп рідного спану, але в іншому випадку ніколи не здійснює пробу. |
VModuleConfiguration
(Аліас для []k8s.io/component-base/logs/api/v1.VModuleItem
)
Зʼявляється в:
VModuleConfiguration — це колекція окремих імен файлів або шаблонів та відповідний поріг докладності.
VerbosityLevel
(Аліас для uint32
)
Зʼявляється в:
VerbosityLevel представляє поріг докладності для klog або logr.
CredentialProviderConfig
CredentialProviderConfig — це конфігурація, яка містить інформацію про кожного постачальника облікових даних exec. Kubelet зчитує цю конфігурацію з диска та активує кожного постачальника, як зазначено в типі CredentialProvider.
Поле | Опис |
---|---|
apiVersion string | kubelet.config.k8s.io/v1beta1 |
kind string | CredentialProviderConfig |
providers [Обовʼязково][]CredentialProvider | providers — це список втулків постачальників облікових даних, які будуть активовані kubelet. Кілька постачальників можуть відповідати одному образу, у такому випадку облікові дані від усіх постачальників будуть повернуті kubelet. Якщо кілька постачальників викликаються для одного образуу, результати обʼєднуються. Якщо постачальники повертають перекриваючі ключі автентифікації, використовується значення від постачальника, який знаходиться раніше в цьому списку. |
KubeletConfiguration
KubeletConfiguration містить конфігурацію для Kubelet.
Поле | Опис |
---|---|
apiVersion string | kubelet.config.k8s.io/v1beta1 |
kind string | KubeletConfiguration |
enableServer [Обовʼязково]bool | enableServer вмикає захищений сервер Kubelet. Примітка: незахищений порт Kubelet контролюється параметром readOnlyPort. Стандартне значення: true |
staticPodPath string | staticPodPath — це шлях до теки з локальними (статичними) Podʼами для запуску, або шлях до окремого статичного файлу Podʼа. Стандартно: "" |
podLogsDir string | podLogsDir - власний шлях до кореневої теки, який kubelet використовуватиме для розміщення лог-файлів под'ів. Стандартно: "/var/log/pods/" Примітка: не рекомендується використовувати теку temp як теку логу, оскільки це може спричинити неочікувану поведінку у багатьох місцях. |
syncFrequency meta/v1.Duration | syncFrequency — максимальний період між синхронізацією запущених контейнерів і конфігурацією. Стандартно: "1m"]; |
fileCheckFrequency meta/v1.Duration | fileCheckFrequency — тривалість між перевірками конфігураційних файлів на наявність нових даних. Стандартно: "20s"]; |
httpCheckFrequency meta/v1.Duration | httpCheckFrequency — інтервал між перевірками http на наявність нових даних. Стандартно: "20s"]; |
staticPodURL string | staticPodURL — це URL-адреса для доступу до статичних Podʼів для запуску. Стандартно: "" |
staticPodURLHeader map[string][]string | staticPodURLHeader — map slice із заголовками HTTP, які потрібно використовувати при доступі до podURL. Стандартно: nil |
address string | address — IP-адреса, на якій буде працювати Kubelet (встановлено на 0.0.0.0 для всіх інтерфейсів). Стандартно: "0.0.0.0"; |
port int32 | port — це порт, на якому буде обслуговуватися Kubelet. Номер порту має бути в діапазоні від 1 до 65535 включно. Стандартно: 10250 |
readOnlyPort int32 | readOnlyPort - це порт тільки для читання, на якому Kubelet буде працювати без автентифікації/авторизації. Номер порту повинен бути в діапазоні від 1 до 65535 включно. Встановлення цього поля у 0 вимикає сервіс тільки для читання. Стандартно: 0 (вимкнено) |
tlsCertFile string | tlsCertFile — файл, що містить сертифікат x509 для HTTPS. (Сертифікат центру сертифікації, якщо такий є, додається після сертифіката сервера). Якщо tlsCertFile і tlsPrivateKeyFile не вказано, самопідписаний сертифікат і ключ генеруються для публічної адреси і зберігаються у теці, яку передано у прапорці Kubelet --cert-dir. Стандартно: "" |
tlsPrivateKeyFile string | tlsPrivateKeyFile — файл, що містить приватний ключ x509, який відповідає tlsCertFile. Стандартно: "" |
tlsCipherSuites []string | tlsCipherSuites — список дозволених наборів шифрів для сервера. Зверніть увагу, що набори шифрів TLS 1.3 не налаштовуються. Значення беруться з констант пакета tls (https://golang.org/pkg/crypto/tls/#pkg-constants). Стандартно: nil |
tlsMinVersion string | tlsMinVersion — мінімальна підтримувана версія TLS. Значення беруться з констант пакета tls (https://golang.org/pkg/crypto/tls/#pkg-constants). Стандартно: "" |
rotateCertificates bool | rotateCertificates дозволяє ротацію клієнтських сертифікатів. Kubelet запросить новий сертифікат з API certificates.k8s.io. Для цього потрібен затверджувач, який схвалює запити на підписання сертифікатів. Стандартно: false |
serverTLSBootstrap bool | serverTLSBootstrap вмикає bootstrap серверного сертифікату. Замість того, щоб самостійно підписувати серверний сертифікат, Kubelet буде запитувати сертифікат з API 'certificates.k8s.io'. Для цього потрібен затверджувач для схвалення запитів на підписання сертифікатів (CSR). Функція RotateKubeletServerCertificate має бути ввімкнена при встановленні цього поля. Стандартно: false |
authentication KubeletAuthentication | authentication визначає спосіб автентифікації запитів до сервера Kubelet. Стандартно: anonymous: enabled: false webhook: enabled: true cacheTTL: "2m" |
authorization KubeletAuthorization | authorization визначає спосіб авторизації запитів до сервера Kubelet. Стандартно: mode: Webhook webhook: cacheAuthorizedTTL: "5m" cacheUnauthorizedTTL: "30s" |
registryPullQPS int32 | registryPullQPS — ліміт отримання образів з реєстру за секунду. Значення не повинно бути відʼємним числом. Встановлення значення 0 означає відсутність обмеження. Стандартно: 5 |
registryBurst int32 | registryBurst — максимальний розмір стрімких витягань, тимчасово дозволяє стрімким витяганням досягати цього числа, але при цьому не перевищувати registryPullQPS. Значення не повинно бути відʼємним числом. Використовується тільки якщо registryPullQPS більше 0. Стандартно: 10 |
eventRecordQPS int32 | eventRecordQPS — максимальна кількість створених подій за секунду. Якщо 0, то обмеження не застосовується. Значення не може бути відʼємним. Стандартно: 50 |
eventBurst int32 | eventBurst - максимальний розмір сплеску створення подій, тимчасово дозволяє створювати події до цього числа, але не більше ніж eventRecordQPS. Це поле не може бути відʼємним числом і використовується лише тоді, коли eventRecordQPS > 0. Стандартно: 100 |
enableDebuggingHandlers bool | enableDebuggingHandlers вмикає точки доступу до логів на сервері та локальний запуск контейнерів і команд, включно з функціями exec, attach, logs та portforward. Стандартно: true |
enableContentionProfiling bool | enableContentionProfiling вмикає профілювання блоків, якщо enableDebuggingHandlers має значення true. Стандартно: false |
healthzPort int32 | healthzPort — порт точки доступу localhost healthz (для вимкнення встановлюється на 0). Допустиме значення від 1 до 65535. Стандартне значення: 10248 |
healthzBindAddress string | healthzBindAddress - IP-адреса для сервера healthz. Стандартно: "127.0.0.1"; |
oomScoreAdj int32 | oomScoreAdj — значення oom-score-adj для процесу kubelet. Значення має бути в діапазоні [-1000, 1000]. Стандартно: -999 |
clusterDomain string | clusterDomain — DNS-домен для цього кластера. Якщо задано, kubelet налаштує всі контейнери на пошук у цьому домені на додаток до пошукових доменів хоста. Стандартно: "" |
clusterDNS []string | clusterDNS — список IP-адрес для DNS-сервера кластера. Якщо встановлено, kubelet налаштує всі контейнери на використання цього списку для DNS-розпізнавання замість DNS-серверів хоста. Стандартно: nil |
streamingConnectionIdleTimeout meta/v1.Duration | streamingConnectionIdleTimeout — максимальний час, протягом якого потокове зʼєднання може простоювати, перш ніж зʼєднання буде автоматично закрито. Стандартно: "4h"; |
nodeStatusUpdateFrequency meta/v1.Duration | nodeStatusUpdateFrequency - частота, з якою kubelet обчислює статус вузла. Якщо функцію оренди вузлів не увімкнено, це також частота, з якою kubelet надсилає статус вузла майстру. Примітка: Якщо функцію оренди вузла не увімкнено, будьте обережні при зміні константи, вона має працювати з nodeMonitorGracePeriod у nodecontroller. Стандартно: "10s" |
nodeStatusReportFrequency meta/v1.Duration | nodeStatusReportFrequency — частота, з якою kubelet надсилає статус вузла майстру, якщо статус вузла не змінюється. Kubelet ігноруватиме цю частоту і відправлятиме статус вузла негайно, якщо буде виявлено будь-яку зміну. Використовується лише тоді, коли увімкнено функцію оренди вузлів. nodeStatusReportFrequency має стандартне значення 5m. Але якщо nodeStatusUpdateFrequency задано явно, стандартне значення nodeStatusReportFrequency буде встановлено на nodeStatusUpdateFrequency для зворотної сумісності. Стандартно: "5m"]; |
nodeLeaseDurationSeconds int32 | nodeLeaseDurationSeconds - це тривалість, яку Kubelet встановить для відповідного lease. NodeLease надає індикатор справності вузла, змушуючи Kubelet створювати та періодично поновлювати договір оренди, названий на честь вузла, у просторі імен kube-node-lease. Якщо термін дії договору закінчується, вузол можна вважати несправним. Наразі оренда поновлюється кожні 10 секунд, згідно з KEP-0009. У майбутньому інтервал поновлення оренди може бути встановлений на основі тривалості оренди. Значення поля має бути більше 0. Стандартно: 40 |
imageMinimumGCAge meta/v1.Duration | imageMinimumGCAge — мінімальний вік невикористаного образу перед тим, як його буде вилучено. Стандартно: "2m"]; |
imageMaximumGCAge meta/v1.Duration | imageMaximumGCAge — максимальний вік, протягом якого образ може бути невикористаним, перш ніж його буде вилучено у смітник. Стандартне значення цього поля - "0s", що вимикає це поле - тобто образи не буде вилучено у смітник через те, що їх не було використано надто довго. Стандартно: "0s" (вимкнено) |
imageGCHighThresholdPercent int32 | imageGCHighThresholdPercent — це відсоток використання диска, після якого завжди запускається прибирання образів. Відсоток обчислюється діленням значення цього поля на 100, тому значення цього поля має бути від 0 до 100 включно. Якщо вказано, значення має бути більшим за imageGCLowThresholdPercent. Стандартно: 85 |
imageGCLowThresholdPercent int32 | imageGCLowThresholdPercent — це відсоток використання диска, до якого прибирання образів ніколи не виконуватиметься. Найнижчий відсоток використання диска для збирання сміття. Відсоток обчислюється діленням значення цього поля на 100, тому значення поля має бути у діапазоні від 0 до 100 включно. Якщо вказано, значення має бути меншим за imageGCHighThresholdPercent. Стандартно: 80 |
volumeStatsAggPeriod meta/v1.Duration | volumeStatsAggPeriod — це частота для обчислення та кешування обсягу використання диска для всіх Podʼів. Стандартно: "1m" |
kubeletCgroups string | kubeletCgroups — абсолютна назва cgroups для ізоляції kubelet. Стандартно: "" |
systemCgroups string | systemCgroups — абсолютна назва cgroups, до якої слід помістити усі неядерні процеси, які ще не знаходяться у контейнері. Порожньо, якщо немає контейнера. Скидання прапорця вимагає перезавантаження. Якщо це поле не порожнє, слід вказати cgroupRoot. Стандартно: "" |
cgroupRoot string | cgroupRoot - це коренева cgroup, яку слід використовувати для Podʼів. Ця група обробляється під час виконання контейнера на основі принципу найкращих зусиль. |
cgroupsPerQOS bool | cgroupsPerQOS вмикає ієрархію CGroup на основі QoS: CGroups верхнього рівня для класів QoS і всі Burstable та BestEffort Pods підпорядковуються певній CGroup QoS верхнього рівня. Стандартно: true |
cgroupDriver string | cgroupDriver — це драйвер, який kubelet використовує для керування CGroups на хості (cgroupfs або systemd). Стандартно: "cgroupfs"; |
cpuManagerPolicy string | cpuManagerPolicy - назва політики, яку буде використано. Потребує увімкнення функціональних можливостей CPUManager. Стандартно: "None" |
cpuManagerPolicyOptions map[string]string | cpuManagerPolicyOptions — це набір key=value, який дозволяє встановити додаткові опції для точного налаштування поведінки політик диспетчера процесорів. Потребує увімкнення функціональних можливостей "CPUManager" та "CPUManagerPolicyOptions". Стандартно: nil |
cpuManagerReconcilePeriod meta/v1.Duration | cpuManagerReconcilePeriod - період узгодження для CPU Manager. Потребує увімкнення функціональної можливості CPUManager. Стандартне значення: "10s" |
memoryManagerPolicy string | memoryManagerPolicy - назва політики, яку використовуватиме менеджер памʼяті. Потребує увімкнення функціональної можливості MemoryManager. Стандартно: "none" |
topologyManagerPolicy string | topologyManagerPolicy — назва політики менеджера топології, яку слід використовувати. Допустимі значення включають:
Default: "none" |
topologyManagerScope string | topologyManagerScope представляє обсяг генерації підказок топології, які запитує менеджер топології та генерують постачальники підказок. Допустимі значення включають:
Default: "container" |
topologyManagerPolicyOptions map[string]string | TopologyManagerPolicyOptions - це набір key=value, який дозволяє встановити додаткові опції для точного налаштування поведінки політик менеджера топології. Потребує увімкнення обох функціональних можливостей — "TopologyManager" та "TopologyManagerPolicyOptions". Стандартно: nil |
qosReserved map[string]string | qosReserved — це набір пар імені ресурсу та відсотка, які визначають мінімальний відсоток ресурсу, зарезервований для ексклюзивного використання на рівні гарантованого QoS. Наразі підтримувані ресурси: "памʼять" Потребує увімкнення функціональної можливості QOSReserved. Стандартно: nil |
runtimeRequestTimeout meta/v1.Duration | runtimeRequestTimeout — це таймаут для всіх запитів часу виконання, окрім довготривалих запитів — pull, logs, exec та attach. Стандартно: "2m" |
hairpinMode string | hairpinMode вказує, як Kubelet має налаштувати міст контейнера для пакета hairpin. Встановлення цього прапорця дозволяє точкам доступу в Service перерозподіляти навантаження на себе, якщо вони намагаються отримати доступ до свого власного Service. Значення:
Зазвичай, для досягнення hairpin NAT потрібно встановити |
maxPods int32 | maxPods — максимальна кількість Podʼів, які можуть бути запущені на цьому Kubelet. Значення має бути цілим невідʼємним числом. Стандартно: 110 |
podCIDR string | podCIDR — це CIDR для IP-адрес pod, який використовується лише в режимі standalone. У кластерному режимі він отримується з панелі управління. Стандартно: "" |
podPidsLimit int64 | podPidsLimit — максимальна кількість PID у будь-якому pod. Default: -1 |
resolvConf string | resolvConf — це файл конфігурації резолвера, який використовується як основа для налаштування DNS-резолюції контейнера. Якщо встановлено порожній рядок, він перевизначає стандартне значення і фактично вимикає DNS-запити. Стандартно: "/etc/resolv.conf" |
runOnce bool | runOnce змушує Kubelet один раз перевірити сервер API на наявність Podʼів, запустити ті з них, які вказані у статичних файлах Podʼів, і вийти. Стандартно: false |
cpuCFSQuota bool | cpuCFSQuota вмикає застосування квоти CPU CFS для контейнерів, які визначають ліміти процесора. Стандартно: true |
cpuCFSQuotaPeriod meta/v1.Duration | cpuCFSQuotaPeriod — це значення періоду квоти CFS процесора, |
nodeStatusMaxImages int32 | nodeStatusMaxImages обмежує кількість зображень, про які повідомляється у Node.status.images. Значення має бути більшим за -2. Зауваження: Якщо вказано -1, обмеження не буде застосовано. Якщо вказано 0, жодного образу не буде повернуто. Стандартно: 50 |
maxOpenFiles int64 | maxOpenFiles - кількість файлів, які може відкрити процес Kubelet. Значення має бути невідʼємним числом. Стандартно: 1000000 |
contentType string | contentType — тип вмісту запитів, що надсилаються до apiserver. Стандартно: "application/vnd.kubernetes.protobuf"; |
kubeAPIQPS int32 | kubeAPIQPS - це QPS, який слід використовувати під час спілкування з apiserver'ом kubernetes. Стандартно: 50 |
kubeAPIBurst int32 | kubeAPIBurst — це кількість пакетів, які слід дозволити під час спілкування з сервером API kubernetes. Це поле не може бути відʼємним числом. Стандартно: 100 |
serializeImagePulls bool | serializeImagePulls, якщо увімкнено, вказує Kubelet завантажувати образи один за одним. Ми рекомендуємо не змінювати стандартні значення на вузлах, де працює демон docker версії < 1.9 або сховище Aufs. Деталі наведено у Issue #10959. Стандартно: true |
maxParallelImagePulls int32 | MaxParallelImagePulls задає максимальну кількість паралельних завантажень образів. Це поле не можна встановити, якщо SerializeImagePulls має значення true. Встановлення значення nil означає відсутність обмежень. Стандартно: nil |
evictionHard map[string]string | evictionHard — це map назв сигналів до величин, що визначає жорсткі пороги виселення. Наприклад: memory.available: "100Mi" nodefs.available: "10%" nodefs.inodesFree: "5%" imagefs.available: "15%" |
evictionSoft map[string]string | evictionSoft це map імен сигналів до величин, яка визначає мʼякі пороги виселення. Наприклад: |
evictionSoftGracePeriod map[string]string | evictionSoftGracePeriod це map назв сигналів до величин, яка визначає пільгові періоди для кожного сигналу мʼякого виселення. Наприклад: |
evictionPressureTransitionPeriod meta/v1.Duration | evictionPressureTransitionPeriod — це тривалість, протягом якої kubelet має зачекати, перш ніж вийти зі стану тиску витіснення. Стандартно: "5m" |
evictionMaxPodGracePeriod int32 | evictionMaxPodGracePeriod - це максимально дозволений пільговий період (у секундах), який можна використовувати при завершенні роботи pods у відповідь на досягнення порогу мʼякого виселення. Це значення фактично обмежує значення terminationGracePeriodSeconds під час мʼякого виселення. Примітка: У звʼязку з issue #64530 у поведінці є помилка, коли це значення наразі просто перевизначає пільговий період під час мʼякого виселення, що може збільшити пільговий період порівняно з тим, що встановлено в Pod. Ця помилка буде виправлена в наступному випуску. Стандартно: 0 |
evictionMinimumReclaim map[string]string | evictionMinimumReclaim це map імен сигналів до величин, що визначає мінімальні відновлення, які описують мінімальну кількість заданого ресурсу, яку kubelet буде відновлювати при виконанні виселення pod, поки цей ресурс знаходиться під тиском. Наприклад: |
podsPerCore int32 | podsPerCore — максимальна кількість Podʼів на ядро. Не може перевищувати maxPods. Значення має бути цілим невідʼємним числом. Якщо 0, то немає обмеження на кількість Podʼів. Стандартно: 0 |
enableControllerAttachDetach bool | enableControllerAttachDetach дозволяє контролеру Attach/Detach керувати приєднанням/відʼєднанням томів, запланованих для цього вузла, і забороняє kubelet виконувати будь-які операції приєднання/відʼєднання. Зауваження: приєднання/відʼєднання томів CSI не підтримується kubelet, тому для цього варіанту використання ця опція має мати значення true. Стандартно: true |
protectKernelDefaults bool | protectKernelDefaults, якщо значення true, призводить до помилки Kubelet, якщо прапорці ядра не відповідають його очікуванням. В іншому випадку Kubelet спробує змінити прапорці ядра так, щоб вони відповідали його очікуванням. Стандартно: false |
makeIPTablesUtilChains bool | makeIPTablesUtilChains, якщо значення true, змушує Kubelet створювати ланцюжок KUBE-IPTABLES-HINT у iptables як підказку іншим компонентам про конфігурацію iptables у системі. Стандартно: true |
iptablesMasqueradeBit int32 | iptablesMasqueradeBit раніше контролював створення ланцюжка KUBE-MARK-MASQ. Застарілий: більше не має жодного впливу. Стандартно: 14 |
iptablesDropBit int32 | iptablesDropBit раніше контролював створення ланцюжка KUBE-MARK-DROP. Застаріла: більше не має жодного впливу. Стандартно: 15 |
featureGates map[string]bool | featureGates - це map імен функціональних можливостей до bools, які вмикають або вимикають експериментальні можливості. Це поле змінює вбудовані стандартні значення з "k8s.io/kubernetes/pkg/features/kube_features.go". Стандартно: nil |
failSwapOn bool | failSwapOn вказує Kubelet не запускатися, якщо на вузлі увімкнено підкачку. Стандартно: true |
memorySwap MemorySwapConfiguration | memorySwap налаштовує памʼять підкачки, доступну для контейнерних робочих навантажень. |
containerLogMaxSize string | containerLogMaxSize — величина, що визначає максимальний розмір лог-файлу контейнера перед його ротацією. Наприклад: "5Mi" або "256Ki". Стандартно: "10Mi""; |
containerLogMaxFiles int32 | containerLogMaxFiles визначає максимальну кількість файлів логу контейнера, які можуть бути присутніми для контейнера. Стандартно: 5 |
containerLogMaxWorkers int32 | ContainerLogMaxWorkers визначає максимальну кількість паралельних робочих процесів для виконання операцій ротації логів. Встановіть це значення рівним 1, щоб вимкнути паралельні робочі процеси ротації логу. Стандартно: 1 |
containerLogMonitorInterval meta/v1.Duration | ContainerLogMonitorInterval визначає тривалість, протягом якої контейнерні логи відстежуються для виконання операції ротації логів. Стандартно це значення дорівнює 10 * time.Seconds. Але його можна налаштувати на менше значення залежно від частоти генерації логів і розміру, щодо якого потрібно виконати ротацію. Стандартно: 10s |
configMapAndSecretChangeDetectionStrategy ResourceChangeDetectionStrategy | configMapAndSecretChangeDetectionStrategy - режим, у якому працюють менеджери ConfigMap і Secret. Допустимі значення включають:
Default: "Watch" |
systemReserved map[string]string | systemReserved - це набір пар ResourceName=ResourceQuantity (наприклад, cpu=200m,memory=150G), які описують ресурси, зарезервовані для компонентів, що не належать до kubernetes. Наразі підтримуються лише процесор і памʼять. Дивіться http://kubernetes.io/docs/user-guide/compute-resources для більш детальної інформації. Стандартно: nil |
kubeReserved map[string]string | kubeReserved — це набір пар ResourceName=ResourceQuantity (наприклад, cpu=200m,memory=150G), які описують ресурси, зарезервовані для компонентів системи kubernetes. Наразі підтримуються процесор, памʼять та локальне сховище для кореневої файлової системи. Більш детальну інформацію можна знайти на сторінці https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/. Стандартно: nil |
reservedSystemCPUs [Обовʼязково]string | Параметр reservedSystemCPUs визначає список процесорів, зарезервованих для системних потоків рівня хоста та потоків, повʼязаних з kubernetes. Це забезпечує "статичний" список процесорів, а не "динамічний" список за допомогою systemReserved та kubeReserved. Цей параметр не підтримує systemReservedCgroup або kubeReservedCgroup. |
showHiddenMetricsForVersion string | showHiddenMetricsForVersion — це попередня версія, для якої ви хочете показати приховані метрики. Тільки попередня мінорна версія є значущою, інші значення не допускаються. Формат |
systemReservedCgroup string | systemReservedCgroup допомагає kubelet ідентифікувати абсолютну назву верхнього рівня CGroup, який використовується для забезпечення |
kubeReservedCgroup string | kubeReservedCgroup допомагає kubelet ідентифікувати абсолютну назву верхнього рівня CGroup, який використовується для забезпечення |
enforceNodeAllocatable []string | Цей прапорець визначає різні примусові дії Node Allocatable, які Kubelet повинен виконувати. Цей прапорець приймає список опцій. Прийнятні опції: |
allowedUnsafeSysctls []string | Список небезпечних sysctl або шаблонів sysctl, розділених комами (які закінчуються на |
volumePluginDir string | volumePluginDir — це повний шлях до теки, в якій слід шукати додаткові втулки томів сторонніх розробників. Стандартно: "/usr/libexec/kubernetes/kubelet-plugins/volume/exec/" |
providerID string | providerID, якщо вказано, встановлює унікальний ID екземпляра, який зовнішній постачальник (наприклад, хмарний постачальник) може використовувати для ідентифікації конкретного вузла. Стандартно: "" |
kernelMemcgNotification bool | kernelMemcgNotification, якщо вказано, інструктує kubelet інтегруватися з нотифікацією memcg ядра для визначення, чи перевищені порогові значення памʼяті для виселення, замість опитування. Стандартно: false |
logging [Обовʼязково]LoggingConfiguration | logging вказує параметри логування. Для отримання додаткової інформації зверніться до Options for Logs. стандартно: Format: text |
enableSystemLogHandler bool | enableSystemLogHandler дозволяє отримати доступ до системних логів через веб-інтерфейс за адресою host:port/logs/. Стандартно: true |
enableSystemLogQuery bool | enableSystemLogQuery активує функцію запиту логів вузла на точці доступу /logs. Для роботи цієї функції також потрібно включити EnableSystemLogHandler. Стандартно: false |
shutdownGracePeriod meta/v1.Duration | shutdownGracePeriod вказує загальну тривалість, на яку вузол повинен затримати завершення роботи і загальний період належного завершення роботи для завершення роботи Podʼів під час завершення роботи вузла. Стандартно: "0s" |
shutdownGracePeriodCriticalPods meta/v1.Duration | shutdownGracePeriodCriticalPods вказує тривалість, що використовується для завершення критичних Podʼів під час завершення роботи вузла. Це повинно бути менше ніж shutdownGracePeriod. Наприклад, якщо shutdownGracePeriod=30s, і shutdownGracePeriodCriticalPods=10s, під час завершення роботи вузла перші 20 секунд будуть зарезервовані для мʼякого завершення роботи звичайних Podʼів, а останні 10 секунд будуть зарезервовані для завершення роботи критичних Podʼів. Стандартно: "0s" |
shutdownGracePeriodByPodPriority []ShutdownGracePeriodByPodPriority | shutdownGracePeriodByPodPriority вказує період часу для належного завершення роботи Podʼів на основі їх значення класу пріоритету. Коли отримано запит на завершення роботи, Kubelet ініціює завершення роботи для всіх Podʼів, що працюють на вузлі, з періодом часу, що залежить від пріоритету Podʼа, і потім чекає на завершення роботи всіх Podʼів. Кожен запис у масиві представляє час належного завершення роботи для Podʼа з значенням класу пріоритету, що лежить у діапазоні цього значення та наступного вищого запису в списку під час завершення роботи вузла. Наприклад, щоб дозволити критичним Podʼам 10 секунд для завершення роботи, Podʼам з пріоритетом >=10000 — 20 секунд, а всім іншим Podʼам — 30 секунд. shutdownGracePeriodByPodPriority:
Час, який Kubelet чекатиме перед завершенням роботи, буде максимумом з усіх shutdownGracePeriodSeconds для кожного діапазону класів пріоритету, представленого на вузлі. Коли всі Podʼи завершать роботу або досягнуть своїх періодівналежного завершення, Kubelet звільнить блокування інгібіції завершення роботи. Потрібно, щоб була ввімкнена функція GracefulNodeShutdown. Ця конфігурація має бути порожньою, якщо встановлено або ShutdownGracePeriod, або ShutdownGracePeriodCriticalPods. Стандартно: nil |
reservedMemory []MemoryReservation | reservedMemory визначає список резервувань памʼяті для NUMA-вузлів, розділений комами. Цей параметр має сенс лише в контексті функції керування памʼяттю. Менеджер памʼяті не виділятиме зарезервовану памʼять для робочих навантажень контейнерів. Наприклад, якщо у вас є NUMA0 з 10Gi памʼяті, і reservedMemory було вказано для резервування 1Gi памʼяті на NUMA0, менеджер памʼяті передбачатиме, що лише 9Gi доступні для виділення. Ви можете вказати різну кількість вузлів NUMA та типів памʼяті. Ви можете взагалі опустити цей параметр, але повинні знати, що кількість зарезервованої памʼяті з усіх вузлів NUMA повинна бути рівною кількості памʼяті, вказаній у node allocatable. Якщо хоча б один параметр node allocatable має ненульове значення, вам потрібно буде вказати принаймні один вузол NUMA. Також уникайте вказування:
Стандартно: nil |
enableProfilingHandler bool | enableProfilingHandler дозволяє профілювання через веб-інтерфейс host:port/debug/pprof/. Стандартно: true |
enableDebugFlagsHandler bool | enableDebugFlagsHandler дозволяє доступ до прапорців через веб-інтерфейс host:port/debug/flags/v. Стандартно: true |
seccompDefault bool | SeccompDefault дозволяє використовувати |
memoryThrottlingFactor float64 | MemoryThrottlingFactor визначає множник, який множиться на обмеження памʼяті або доступну памʼять вузла при встановленні значення cgroupv2 memory.high для забезпечення MemoryQoS. Зменшення цього коефіцієнта встановить нижчу високу межу для cgroups контейнера і створить більший тиск на відновлення памʼяті, тоді як збільшення зменшить тиск на відновлення. Детальніше дивіться за посиланням: KEP-2570. Стандартно: 0.9 |
registerWithTaints []core/v1.Taint | registerWithTaints — це масив "taints" (міток) для додавання до обʼєкта вузла під час реєстрації kubelet. Набирає чинності лише тоді, коли параметр registerNode встановлено в значення true і під час початкової реєстрації вузла. Стандартно: nil |
registerNode bool | registerNode дозволяє автоматичну реєстрацію з apiserver. Стандартно: true |
tracing TracingConfiguration | Tracing визначає версійовану конфігурацію для клієнтів трасування OpenTelemetry. Див. kep.k8s.io/2832 для отримання додаткової інформації. Стандартно: nil |
localStorageCapacityIsolation bool | LocalStorageCapacityIsolation дозволяє використовувати функцію ізоляції локального тимчасового зберігання. Стандартно: true. Ця функція дозволяє користувачам встановлювати запити/межі для тимчасового зберігання контейнерів та керувати ним так само, як процесорами та памʼяттю. Вона також дозволяє встановлювати sizeLimit для томів emptyDir, що призведе до видалення Podʼа, якщо використання диска з тома перевищить межу. Ця функція залежить від можливості правильної детекції використання кореневої файлової системи диска. Для деяких систем, таких як kind rootless, якщо ця можливість не підтримується, функцію LocalStorageCapacityIsolation слід вимкнути. Після вимкнення користувач не повинен встановлювати запити/межі для тимчасового зберігання контейнерів або sizeLimit для emptyDir. Стандартно: true |
containerRuntimeEndpoint [Обовʼязково]string | ContainerRuntimeEndpoint є точкою доступу середовища виконання контейнерів. В Linux підтримуються Unix Domain Sockets, а у Windows підтримуються точки npipe та tcp. Приклади: 'unix:///path/to/runtime.sock', 'npipe:////./pipe/runtime' |
imageServiceEndpoint string | ImageServiceEndpoint є точкою доступу сервісу контейнерних образів. Unix Domain Socket підтримуються в Linux, а npipe та tcp точки підтримуються у Windows. Приклади: 'unix:///path/to/runtime.sock', 'npipe:////./pipe/runtime'. Якщо не вказано, використовується значення з containerRuntimeEndpoint. |
failCgroupV1 bool | FailCgroupV1 забороняє запуск kubelet на хостах, які використовують cgroup v1. Стандартно цей параметр має значення false, що означає, що kubelet дозволяється запускати на хостах cgroup v1, якщо цей параметр явно не ввімкнено. Стандартно: false |
SerializedNodeConfigSource
SerializedNodeConfigSource дозволяє серіалізувати v1.NodeConfigSource. Цей тип використовується всередині Kubelet для відстеження збережених динамічних конфігурацій. Він існує в API групі kubeletconfig, оскільки класифікується як версійний вхідний параметр для Kubelet.
Поле | Опис |
---|---|
apiVersion string | kubelet.config.k8s.io/v1beta1 |
kind string | SerializedNodeConfigSource |
source core/v1.NodeConfigSource | source є джерелом, яке ми серіалізуємо. |
CredentialProvider
Зʼявляється в:
CredentialProvider представляє втулок exec, який викликається kubelet. Втулок викликається тільки тоді, коли образ, що завантажується, відповідає образам, що обробляються втулком (див. matchImages).
Поле | Опис |
---|---|
name [Обовʼязково]string | name є обовʼязковою назвою постачальника облікових даних. Має відповідати назві виконуваного файлу постачальника, яку бачить kubelet. Виконуваний файл повинен бути в теці bin kubelet (встановлений прапорцем --image-credential-provider-bin-dir). |
matchImages [Обовʼязково][]string | matchImages є обовʼязковим списком рядків, які використовуються для порівняння з образами, щоб визначити, чи слід викликати цього постачальника. Якщо один із рядків відповідає запитаному образу від kubelet, втулок буде викликаний і отримає можливість надати облікові дані. Очікується, що образи міститимуть домен реєстрації та URL-адресу. Кожен запис у matchImages є шаблоном, який може містити порт і шлях. Глоби можна використовувати в домені, але не в порту чи шляху. Глоби підтримуються як піддоменами, такими як '*.k8s.io' або 'k8s.*.io', а також топ-рівневими доменами, такими як 'k8s.*'. Часткові піддомени, такі як 'app*.k8s.io', також підтримуються. Кожен глоб може відповідати лише одному сегменту піддомену, тому '*.io' не відповідає '*.k8s.io'. Відповідність існує між образом і matchImage, коли всі з нижченаведених умов виконані:
Приклади значень matchImages:
|
defaultCacheDuration [Обовʼязково]meta/v1.Duration | defaultCacheDuration є стандартним періодом, протягом якого втулок буде кешувати облікові дані в памʼяті, якщо в відповіді втулка не вказано період кешування. Це поле є обовʼязковим. |
apiVersion [Обовʼязково]string | Обовʼязкова версія введення запиту CredentialProvider. Повернутий CredentialProviderResponse МУСИТЬ використовувати таку ж версію кодування, як і ввод. Поточні підтримувані значення:
|
args []string | Аргументи, які передаються команді при її виконанні. |
env []ExecEnvVar | Env визначає додаткові змінні середовища, які потрібно надати процесу. Вони обʼєднуються з середовищем хоста, а також змінними, які client-go використовує для передачі аргументів втулку. |
ExecEnvVar
Зʼявляється в:
ExecEnvVar використовується для встановлення змінних середовища при виконанні втулку облікових даних на основі exec.
Поле | Опис |
---|---|
name [Обовʼязково]string | name визначає імʼя змінної середовища. |
value [Обовʼязково]string | value визначає значення змінної середовища. |
KubeletAnonymousAuthentication
Зʼявляється в:
Поле | Опис |
---|---|
enabled bool | enabled дозволяє анонімні запити до сервера kubelet. Запити, які не відхиляються іншим методом автентифікації, обробляються як анонімні запити. Анонімні запити мають імʼя користувача |
KubeletAuthentication
Зʼявляється в:
Поле | Опис |
---|---|
x509 KubeletX509Authentication | x509 містить налаштування, що стосуються автентифікації за допомогою клієнтських сертифікатів x509. |
webhook KubeletWebhookAuthentication | webhook містить налаштування, що стосуються автентифікації за допомогою webhook токенів на предʼявника. |
anonymous KubeletAnonymousAuthentication | anonymous містить налаштування, що стосуються анонімної автентифікації. |
KubeletAuthorization
Зʼявляється в:
Поле | Опис |
---|---|
mode KubeletAuthorizationMode | mode визначає режим авторизації для запитів до сервера kubelet. Дійсні значення: |
webhook KubeletWebhookAuthorization | webhook містить налаштування, що стосуються авторизації через Webhook. |
KubeletAuthorizationMode
(Аліас до string
)
Зʼявляється в:
KubeletWebhookAuthentication
Зʼявляється в:
Поле | Опис |
---|---|
enabled bool | enabled дозволяє автентифікацію за допомогою токенів, підтримувану API tokenreviews.authentication.k8s.io. |
cacheTTL meta/v1.Duration | cacheTTL дозволяє кешування результатів автентифікації. |
KubeletWebhookAuthorization
Зʼявляється в:
Поле | Опис |
---|---|
cacheAuthorizedTTL meta/v1.Duration | cacheAuthorizedTTL — тривалість кешування відповідей 'authorized' від веб-хук авторизатора. |
cacheUnauthorizedTTL meta/v1.Duration | cacheUnauthorizedTTL — тривалість кешування відповідей 'unauthorized' від веб-хук авторизатора. |
KubeletX509Authentication
Зʼявляється в:
Поле | Опис |
---|---|
clientCAFile string | clientCAFile — шлях до файлу сертифікатів у форматі PEM. Якщо встановлено, будь-який запит, що надає клієнтський сертифікат, підписаний одним з органів сертифікації з цього пакету, автентифікується з іменем користувача, що відповідає CommonName, та групами, що відповідають організації у клієнтському сертифікаті. |
MemoryReservation
Зʼявляється в:
MemoryReservation визначає різні типи резервування памʼяті для кожного взула NUMA.
Поле | Опис |
---|---|
numaNode [Обовʼязково]int32 | Номер NUMA вузла, для якого задається резервування памʼяті. |
limits [Обовʼязково]core/v1.ResourceList | Список ресурсів для резервування, які визначають обмеження памʼяті. |
MemorySwapConfiguration
ЗустрЗʼявляється в:
Поле | Опис |
---|---|
swapBehavior string | swapBehavior налаштовує використання swap-пам’яті для контейнерних навантажень. Може бути однією з таких опцій:
|
ResourceChangeDetectionStrategy
(Аліас string
)
ЗустрЗʼявляється в:
ResourceChangeDetectionStrategy позначає режим, у якому внутрішні менеджери (секрети, configmap) виявляють зміни об’єктів.
ShutdownGracePeriodByPodPriority
ЗустрЗʼявляється в:
ShutdownGracePeriodByPodPriority визначає період належного завершення перед завершенням роботи для Podʼів на основі їхнього значення пріоритету.
Поле | Опис |
---|---|
priority [Обовʼязкове]int32 | priority — це значення пріоритету, яке повʼязане з періодом належного завершення перед завершенням роботи |
shutdownGracePeriodSeconds [Обовʼязкове]int64 | shutdownGracePeriodSeconds — це період належного завершення перед завершенням роботи в секундах |