kubeadm Configuration (v1beta4)
Огляд
Пакунок v1beta4 визначає версію v1beta4 формату конфігураційного файлу kubeadm. Ця версія покращує формат v1beta3, виправляючи деякі незначні проблеми і додаючи кілька нових полів.
Список змін з версії v1beta3:
- TODO https://github.com/kubernetes/kubeadm/issues/2890
- Підтримуйте власні змінні оточення у компонентах панелі управління у розділі ClusterConfiguration. Використовуйте
apiServer.extraEnvs
,controllerManager.extraEnvs
,scheduler.extraEnvs
,etcd.local.extraEnvs
. - Тип API
ResetConfiguration
тепер підтримується у v1beta4. Користувачі можуть скинути конфігурацію вузла, передавши kubeadm reset файл--config
. - режим
dry-run
тепер налаштовується у InitConfiguration та JoinConfiguration. - Замінено існуючі map додаткових аргументів типу рядок/рядок на структуровані додаткові аргументи, які підтримують дублікати. Зміни застосовано до
ClusterConfiguration
—apiServer.extraArgs
,controllerManager.extraArgs
,scheduler.extraArgs
,etcd.local.extraArgs
. Також доnodeRegistration.kubeletExtraArgs
. - Додано
ClusterConfiguration.encryptionAlgorithm
, за допомогою якого можна задати алгоритм асиметричного шифрування, що використовується для ключів і сертифікатів цього кластера. Може бути один з "RSA-2048" (стандартно), "RSA-3072", "RSA-4096" або "ECDSA-P256". - Додано
ClusterConfiguration.dns.disabled
таClusterConfiguration.proxy.disabled
, за допомогою яких можна вимкнути надбудови CoreDNS та kube-proxy під час ініціалізації кластера. Якщо пропустити повʼязані з ними етапи під час створення кластера, ці ж поля буде встановлено у значенняfalse
. - Додано поле
nodeRegistration.imagePullSerial
уInitConfiguration
таJoinConfiguration
, за допомогою якого можна контролювати, чи kubeadm витягує образи послідовно або паралельно. - API kubeadm
UpgradeConfiguration
тепер підтримується у v1beta4 при передачі--config
до командkubeadm upgrade
. Використання конфігурації компонентів дляkubelet
таkube-proxy
,InitConfiguration
таClusterConfiguration
є застарілим і буде проігноровано при передачі--config
до командupgrade
. - Додано структуру
Timeouts
доInitConfiguration
,JoinConfiguration
,ResetConfiguration
таUpgradeConfiguration
, яку можна використовувати для налаштування різних тайм-аутів. - Додано поля
certificateValidityPeriod
таcaCertificateValidityPeriod
доClusterConfiguration
. Ці поля можна використовувати для контролю терміну дії сертифікатів, згенерованих kubeadm під час виконання таких підкоманд, якinit
,join
,upgrade
іcerts
. Стандартні значення залишаються 1 рік для сертифікатів без CA і 10 років для сертифікатів з CA. Лише сертифікати без CA можна поновлювати командоюkubeadm certs renew
.
Міграція зі старих версій конфігурації kubeadm
- kubeadm v1.15.x і новіше можна використовувати для міграції з v1beta1 на v1beta2.
- kubeadm v1.22.x і новіші більше не підтримують v1beta1 і старіші API, але можуть бути використані для міграції з v1beta2 на v1beta3.
- kubeadm v1.27.x і новіші більше не підтримують v1beta2 і старіші API.
- TODO: https://github.com/kubernetes/kubeadm/issues/2890 додати версію, яку можна використовувати для конвертації у v1beta4
Основи
Найкращим способом налаштування kubeadm є передача конфігураційного файлу у форматі YAML з опцією --config
. Деякі з параметрів конфігурації, визначених у конфігураційному файлі kubeadm, також доступні як прапорці командного рядка, але цей спосіб підтримує лише найпоширеніші/найпростіші випадки використання.
Конфігураційний файл kubeadm може містити декілька типів конфігурацій, розділених трьома тире (---
).
kubeadm підтримує наступні типи конфігурацій:
apiVersion: kubeadm.k8s.io/v1beta4
kind: InitConfiguration
apiVersion: kubeadm.k8s.io/v1beta4
kind: ClusterConfiguration
apiVersion: kubelet.config.k8s.io/v1beta1
kind: KubeletConfiguration
apiVersion: kubeproxy.config.k8s.io/v1alpha1
kind: KubeProxyConfiguration
apiVersion: kubeadm.k8s.io/v1beta4
kind: JoinConfiguration
apiVersion: kubeadm.k8s.io/v1beta4
kind: ResetConfiguration
apiVersion: kubeadm.k8s.io/v1beta4
kind: UpgradeConfiguration
Для виведення стандартних значень для дій init
та join
скористайтеся наступними командами:
kubeadm config print init-defaults
kubeadm config print join-defaults
kubeadm config print reset-defaults
kubeadm config print upgrade-defaults
Перелік типів конфігурацій, які необхідно включити до конфігураційного файлу, залежить від дії, яку ви виконуєте (init
або join
), а також від параметрів конфігурації, які ви збираєтеся використовувати (стандартні або розширені налаштування).
Якщо деякі типи конфігурацій не передбачено або передбачено лише частково, kubeadm використовуватиме стандартні значення; стандартне налаштування kubeadm включає також забезпечення узгодженості значень між компонентами, коли це необхідно (наприклад, прапорець --cluster-cidr
на менеджері контролерів та clusterCIDR
на kube-proxy).
Користувачам завжди дозволено перевизначати стандартні значення, за винятком невеликої підгрупи налаштувань, що мають відношення до безпеки (наприклад, включення режиму авторизації Node і RBAC на api-сервері).
Якщо користувач надасть типи конфігурації, які не очікуються для дії, яку ви виконуєте, kubeadm проігнорує ці типи та виведе попередження.
Типи конфігурацій Kubeadm init
При виконанні kubeadm init з опцією --config
можуть бути використані наступні типи конфігурацій: InitConfiguration, ClusterConfiguration, KubeProxyConfiguration, KubeletConfiguration, але тільки один з них між InitConfiguration і ClusterConfiguration є обовʼязковим.
apiVersion: kubeadm.k8s.io/v1beta4
kind: InitConfiguration
bootstrapTokens:
...
nodeRegistration:
...
Тип InitConfiguration слід використовувати для налаштування параметрів часу виконання, якими у випадку kubeadm init є конфігурація токена завантажувача та всі параметри, специфічні для вузла, на якому виконується kubeadm, включно з:
- NodeRegistration, що містить поля, які стосуються реєстрації нового вузла у кластері; використовуйте його, щоб налаштувати імʼя вузла, сокет CRI для використання або будь-які інші параметри, які мають застосовуватися лише до цього вузла (наприклад, ip вузла).
- LocalAPIEndpoint, що представляє точку доступу до екземпляра сервера API, який буде розгорнуто на цьому вузлі; використовуйте його, наприклад, для налаштування адреси оголошень сервера API.
apiVersion: kubeadm.k8s.io/v1beta4
kind: ClusterConfiguration
networking:
...
etcd:
...
apiServer:
extraArgs:
...
extraVolumes:
...
...
Тип ClusterConfiguration слід використовувати для налаштування параметрів всього кластера, включаючи налаштування для:
networking
, що зберігає конфігурацію мережевої топології кластера; використовуйте його, наприклад, для налаштування підмережі Pod або підмережі сервісів.etcd
: використовуйте його, наприклад, для налаштування локального etcd або для налаштування сервера API для використання зовнішнього кластера etcd.- конфігурації kube-apiserver, kube-scheduler, kube-controller-manager; використовуйте його для налаштування компонентів панелі управління, додаючи індивідуальні налаштування або перевизначаючи стандартні налаштування kubeadm.
apiVersion: kubeproxy.config.k8s.io/v1alpha1
kind: KubeProxyConfiguration
...
Тип KubeProxyConfiguration слід використовувати для зміни конфігурації, що передається екземплярам kube-proxy, розгорнутим у кластері. Якщо цей обʼєкт не надано або надано лише частково, kubeadm застосовує стандартні значення.
Офіційну документацію про kube-proxy можна знайти на https://kubernetes.io/docs/reference/command-line-tools-reference/kube-proxy/ або https://pkg.go.dev/k8s.io/kube-proxy/config/v1alpha1#KubeProxyConfiguration.
apiVersion: kubelet.config.k8s.io/v1beta1
kind: KubeletConfiguration
...
Тип KubeletConfiguration слід використовувати для зміни конфігурацій, які буде передано всім екземплярам kubelet, розгорнутим у кластері. Якщо цей обʼєкт не надано або надано лише частково, kubeadm застосовує стандартні налаштування.
Офіційну документацію про kubelet можна знайти на https://kubernetes.io/docs/reference/command-line-tools-reference/kubelet/ або https://pkg.go.dev/k8s.io/kubelet/config/v1beta1#KubeletConfiguration.
Ось повністю заповнений приклад одного YAML-файлу, що містить декілька типів конфігурації для використання під час запуску kubeadm init
.
apiVersion: kubeadm.k8s.io/v1beta4
kind: InitConfiguration
bootstrapTokens:
- token: "9a08jv.c0izixklcxtmnze7"
description: "kubeadm bootstrap token"
ttl: "24h"
- token: "783bde.3f89s0fje9f38fhf"
description: "another bootstrap token"
usages:
- authentication
- signing
groups:
- system:bootstrappers:kubeadm:default-node-token
nodeRegistration:
name: "ec2-10-100-0-1"
criSocket: "unix:///var/run/containerd/containerd.sock"
taints:
- key: "kubeadmNode"
value: "someValue"
effect: "NoSchedule"
kubeletExtraArgs:
- name: v
value: 5
ignorePreflightErrors:
- IsPrivilegedUser
imagePullPolicy: "IfNotPresent"
localAPIEndpoint:
advertiseAddress: "10.100.0.1"
bindPort: 6443
certificateKey: "e6a2eb8581237ab72a4f494f30285ec12a9694d750b9785706a83bfcbbbd2204"
skipPhases:
- preflight
timeouts:
controlPlaneComponentHealthCheck: "60s
kubernetesAPICall: "40s"
---
apiVersion: kubeadm.k8s.io/v1beta4
kind: ClusterConfiguration
etcd:
# локальний або зовнішній etcd
local:
imageRepository: "registry.k8s.io"
imageTag: "3.2.24"
dataDir: "/var/lib/etcd"
extraArgs:
- name: listen-client-urls
value: http://10.100.0.1:2379
extraEnvs:
- name: SOME_VAR
value: SOME_VALUE
serverCertSANs:
- "ec2-10-100-0-1.compute-1.amazonaws.com"
peerCertSANs:
- "10.100.0.1"
# external:
# endpoints:
# - "10.100.0.1:2379"
# - "10.100.0.2:2379"
# caFile: "/etcd/kubernetes/pki/etcd/etcd-ca.crt"
# certFile: "/etcd/kubernetes/pki/etcd/etcd.crt"
# keyFile: "/etcd/kubernetes/pki/etcd/etcd.key"
networking:
serviceSubnet: "10.96.0.0/16"
podSubnet: "10.244.0.0/24"
dnsDomain: "cluster.local"
kubernetesVersion: "v1.21.0"
controlPlaneEndpoint: "10.100.0.1:6443"
apiServer:
extraArgs:
- name: authorization-mode
value: "Node,RBAC"
extraEnvs:
- name: SOME_VAR
value: SOME_VALUE
extraVolumes:
- name: "some-volume"
hostPath: "/etc/some-path"
mountPath: "/etc/some-pod-path"
readOnly: false
pathType: File
certSANs:
- "10.100.1.1"
- "ec2-10-100-0-1.compute-1.amazonaws.com"
controllerManager:
extraArgs:
- name: node-cidr-mask-size
value: "20"
extraVolumes:
- name: "some-volume"
hostPath: "/etc/some-path"
mountPath: "/etc/some-pod-path"
readOnly: false
pathType: File
scheduler:
extraArgs:
- name: address
value: "10.100.0.1"
extraVolumes:
- name: "some-volume"
hostPath: "/etc/some-path"
mountPath: "/etc/some-pod-path"
readOnly: false
pathType: File
certificatesDir: "/etc/kubernetes/pki"
imageRepository: "registry.k8s.io"
clusterName: "example-cluster"
encryptionAlgorithm: ECDSA-P256
dns:
disabled: true # disable CoreDNS
proxy:
diabled: true # disable kube-proxy
---
apiVersion: kubelet.config.k8s.io/v1beta1
kind: KubeletConfiguration
# параметри kubelet вказуються тут
---
apiVersion: kubeproxy.config.k8s.io/v1alpha1
kind: KubeProxyConfiguration
# параметри kube-proxy вказуються тут
Типи конфігурацій Kubeadm join
При виконанні kubeadm join з опцією --config слід вказати тип JoinConfiguration.
apiVersion: kubeadm.k8s.io/v1beta4
kind: JoinConfiguration
discovery:
bootstrapToken:
apiServerEndpoint: some-address:6443
token: abcdef.0123456789abcdef
unsafeSkipCAVerification: true
tlsBootstrapToken: abcdef.0123456789abcdef
Тип JoinConfiguration слід використовувати для налаштування параметрів часу виконання, якими у випадку kubeadm join є метод виявлення, що використовується для доступу до інформації про кластер, а також всі налаштування, специфічні для вузла, на якому виконується kubeadm, включно з:
nodeRegistration
, що містить поля, які стосуються реєстрації нового вузла у кластері; використовуйте його, щоб налаштувати імʼя вузла, сокет CRI для використання або будь-які інші параметри, які мають застосовуватися лише до цього вузла (наприклад, ip вузла).apiEndpoint
, що представляє точку доступу до екземпляра сервера API, який буде розгорнуто на цьому вузлі.
Типи конфігурацій Kubeadm reset
При виконанні kubeadm reset
з опцією --config
слід вказати тип ResetConfiguration
.
apiVersion: kubeadm.k8s.io/v1beta4
kind: ResetConfiguration
...
Типи конфігурацій Kubeadm upgrade
При виконанні kubeadm upgrade
з опцією --config
слід вказати тип UpgradeConfiguration
.
apiVersion: kubeadm.k8s.io/v1beta4
kind: UpgradeConfiguration
apply:
...
diff:
...
node:
...
plan:
...
Структура UpgradeConfiguration
містить кілька підструктур, які застосовуються тільки різних команд kubeadm upgrade
. Наприклад, apply
використовується з командою kubeadm upgrade apply
тож всі інші підструктури будуть проігноровані.
Типи ресурсів
BootstrapToken
Зʼявляється в:
BootstrapToken описує один bootstrap token, зберігається як Secret у кластері
Поле | Опис |
---|---|
token [Обовʼязкове]BootstrapTokenString |
|
description string |
|
ttl meta/v1.Duration |
|
expires meta/v1.Time |
|
usages []string |
|
groups []string |
|
BootstrapTokenString
Зʼявляється в:
BootstrapTokenString є токеном формату abcdef.abcdef0123456789
, який використовується як для перевірки практичності API сервера з погляду вузла, що приєднується, так і як метод автентифікації вузла в фазі bootstrap команди "kubeadm join". Цей токен є і має бути короткочасним.
Поле | Опис |
---|---|
- [Обовʼязкове]string | Опис не надано. |
- [Обовʼязкове]string | Опис не надано. |
ClusterConfiguration
ClusterConfiguration містить конфігурацію на рівні кластера для кластера kubeadm.
Поле | Опис |
---|---|
apiVersion string | kubeadm.k8s.io/v1beta4 |
kind string | ClusterConfiguration |
etcd Etcd |
|
networking Networking |
|
kubernetesVersion string |
|
controlPlaneEndpoint string |
|
apiServer APIServer |
|
controllerManager ControlPlaneComponent |
|
scheduler ControlPlaneComponent |
|
dns DNS |
|
proxy [Обовʼязкове]Proxy |
|
certificatesDir string |
|
imageRepository string |
|
featureGates map[string]bool |
|
clusterName string | Назва кластера. |
encryptionAlgorithm EncryptionAlgorithmType |
|
certificateValidityPeriod meta/v1.Duration |
|
caCertificateValidityPeriod meta/v1.Duration |
|
InitConfiguration
InitConfiguration містить список елементів, що специфічні для тільки для запуску kubeadm init
. Ці поля використовуються лише під час першого запуску kubeadm init
. Після цього інформація в цих полях НЕ завантажується до ConfigMap kubeadm-config
, який використовується, наприклад, при kubeadm upgrade
. Ці поля повинні бути опущені.
Поле | Опис |
---|---|
apiVersion string | kubeadm.k8s.io/v1beta4 |
kind string | InitConfiguration |
bootstrapTokens []BootstrapToken |
|
dryRun [Обовʼязкове]bool |
|
nodeRegistration NodeRegistrationOptions |
|
localAPIEndpoint APIEndpoint |
|
certificateKey string |
|
skipPhases []string |
|
patches Patches |
|
timeouts Timeouts |
|
JoinConfiguration
JoinConfiguration містить елементи, що описують конкретний вузол.
Поле | Опис |
---|---|
apiVersion string | kubeadm.k8s.io/v1beta4 |
kind string | JoinConfiguration |
dryRun bool |
|
nodeRegistration NodeRegistrationOptions |
|
caCertPath string |
|
discovery [Обовʼязкове]Discovery |
|
controlPlane JoinControlPlane |
|
skipPhases []string |
|
patches Patches |
|
timeouts Timeouts |
|
ResetConfiguration
ResetConfiguration містить список полів, що є специфічними для режиму kubeadm reset
.
Поле | Опис |
---|---|
apiVersion string | kubeadm.k8s.io/v1beta4 |
kind string | ResetConfiguration |
cleanupTmpDir bool |
|
certificatesDir string |
|
criSocket string |
|
dryRun bool |
|
force bool | Флаг |
ignorePreflightErrors []string |
|
skipPhases []string |
|
unmountFlags []string |
|
timeouts Timeouts |
|
UpgradeConfiguration
UpgradeConfiguration містить список опцій, специфічних для підкоманд kubeadm upgrade
.
Поле | Опис |
---|---|
apiVersion string | kubeadm.k8s.io/v1beta4 |
kind string | UpgradeConfiguration |
apply UpgradeApplyConfiguration |
|
diff UpgradeDiffConfiguration |
|
node UpgradeNodeConfiguration |
|
plan UpgradePlanConfiguration |
|
timeouts Timeouts |
|
APIEndpoint
Зʼявляється в:
Структура APIEndpoint містить елементи для екземпляра API сервера, розгорнутого на вузлі.
Поле | Опис |
---|---|
advertiseAddress string |
|
bindPort int32 |
|
APIServer
Зʼявляється в:
APIServer містить налаштування, необхідні для розгортання API сервера в кластері.
Поле | Опис |
---|---|
ControlPlaneComponent [Обовʼязкове]ControlPlaneComponent | (Члени ControlPlaneComponent вбудовані в цей тип.)
Опис не надано. |
certSANs []string |
|
Arg
Зʼявляється в:
Arg представляє собою аргумент з імʼям і значенням.
Поле | Опис |
---|---|
name [Обовʼязкове]string | Імʼя аргументу. |
value [Обовʼязкове]string | Значення аргументу. |
BootstrapTokenDiscovery
Зʼявляється в:
BootstrapTokenDiscovery використовується для налаштування параметрів для виявлення з використанням токенів.
Поле | Опис |
---|---|
token [Обовʼязкове]string |
|
apiServerEndpoint string |
|
caCertHashes []string |
|
unsafeSkipCAVerification bool |
|
ControlPlaneComponent
Зʼявляється в:
ControlPlaneComponent містить налаштування, загальні для компонентів панелі управління кластера.
Поле | Опис |
---|---|
extraArgs []Arg |
|
extraVolumes []HostPathMount |
|
extraEnvs []EnvVar |
|
DNS
Зʼявляється в:
DNS визначає аддон DNS, який має бути використаний у кластері.
Поле | Опис |
---|---|
ImageMeta [Обовʼязково]ImageMeta | (Члени ImageMeta вбудовані в цей тип.)
|
disabled [Обовʼязково]bool |
|
Discovery
Зʼявляється в:
Discovery визначає параметри для kubelet під час процесу TLS Bootstrap.
Поле | Опис |
---|---|
bootstrapToken BootstrapTokenDiscovery |
|
file FileDiscovery |
|
tlsBootstrapToken string |
|
EncryptionAlgorithmType
(Аліас для string
)
Зʼявляється в:
EncryptionAlgorithmType може визначити тип асиметричного алгоритму шифрування.
EnvVar
Зʼявляється в:
EnvVar представляє змінну середовища, присутню в контейнері.
Поле | Опис |
---|---|
EnvVar [Обовʼязкове]core/v1.EnvVar | (Члени EnvVar вбудовані в цей тип.)
Опис не надано. |
Etcd
Зʼявляється в:
Etcd містить елементи, що описують конфігурацію Etcd.
Поле | Опис |
---|---|
local LocalEtcd |
|
external ExternalEtcd |
|
ExternalEtcd
Зʼявляється в:
ExternalEtcd описує зовнішній кластер etcd. Kubeadm не має інформації про те, де знаходяться файли сертифікатів, і їх необхідно надати.
Поле | Опис |
---|---|
endpoints [Обовʼязкове][]string |
|
caFile [Обовʼязкове]string |
|
certFile [Обовʼязкове]string |
|
keyFile [Обовʼязкове]string |
|
FileDiscovery
Зʼявляється в:
FileDiscovery використовується для вказівки файлу або URL на kubeconfig файл, з якого слід завантажити інформацію про кластер.
Поле | Опис |
---|---|
kubeConfigPath [Обовʼязкове]string |
|
HostPathMount
Зʼявляється в:
HostPathMount містить елементи, що описують томи, які монтуються з хоста.
Поле | Опис |
---|---|
name [Обовʼязкове]string |
|
hostPath [Обовʼязкове]string |
|
mountPath [Обовʼязкове]string |
|
readOnly bool |
|
pathType core/v1.HostPathType |
|
ImageMeta
Зʼявляється в:
ImageMeta дозволяє налаштувати образ, що використовується для компонентів, які не походять з процесу релізу Kubernetes/Kubernetes.
Поле | Опис |
---|---|
imageRepository string |
|
imageTag string |
|
JoinControlPlane
Зʼявляється в:
JoinControlPlane містить елементи, що описують додатковий екземпляр контрольної плити, який має бути розгорнуто на приєднуючому вузлі.
Поле | Опис |
---|---|
localAPIEndpoint APIEndpoint |
|
certificateKey string |
|
LocalEtcd
Зʼявляється в:
LocalEtcd описує, що kubeadm має запустити кластер etcd локально.
Поле | Опис |
---|---|
ImageMeta [Обовʼязково]ImageMeta | (Члени ImageMeta вбудовані в цей тип.)
|
dataDir [Обовʼязково]string |
|
extraArgs [Обовʼязково][]Arg |
|
extraEnvs []EnvVar |
|
serverCertSANs []string |
|
peerCertSANs []string |
|
Networking
Зʼявляється в:
Networking містить елементи, що описують конфігурацію мережі кластера.
Поле | Опис |
---|---|
serviceSubnet string |
|
podSubnet string |
|
dnsDomain string |
|
NodeRegistrationOptions
Зʼявляється в:
NodeRegistrationOptions містить поля, що стосуються реєстрації новоїпанелі управління або вузла в кластері, або через kubeadm init
, або kubeadm join
.
Поле | Опис |
---|---|
name string |
|
criSocket string |
|
taints [Обовʼязкове][]core/v1.Taint |
|
kubeletExtraArgs []Arg |
|
ignorePreflightErrors []string |
|
imagePullPolicy core/v1.PullPolicy |
|
imagePullSerial bool |
|
Patches
Зʼявляється в:
Patches містить опції, повʼязані із застосуванням патчів до компонентів, розгорнутих kubeadm.
Поле | Опис |
---|---|
directory string |
|
Proxy
Зʼявляється в:
Proxy визначає надбудову проксі, яка має використовуватися в кластері.
Поле | Опис |
---|---|
disabled [Обовʼязкове]bool |
|
Timeouts
Зʼявляється в:
Timeouts містить різні тайм-аути, які застосовуються до команд kubeadm.
Поле | Опис |
---|---|
controlPlaneComponentHealthCheck meta/v1.Duration |
|
kubeletHealthCheck meta/v1.Duration |
|
kubernetesAPICall meta/v1.Duration |
|
etcdAPICall meta/v1.Duration |
|
tlsBootstrap meta/v1.Duration |
|
discovery meta/v1.Duration |
|
upgradeManifests [Обовʼязкове]meta/v1.Duration |
|
UpgradeApplyConfiguration
Зʼявляється в:
UpgradeApplyConfiguration містить список параметрів конфігурації, які специфічні для команди kubeadm upgrade apply
.
Поле | Опис |
---|---|
kubernetesVersion string |
|
allowExperimentalUpgrades bool |
|
allowRCUpgrades bool | Увімкнення |
certificateRenewal bool |
|
dryRun bool |
|
etcdUpgrade bool |
|
forceUpgrade bool |
|
ignorePreflightErrors []string |
|
patches Patches |
|
printConfig bool |
|
skipPhases [Обовʼязкове][]string |
|
imagePullPolicy core/v1.PullPolicy |
|
imagePullSerial bool |
|
UpgradeDiffConfiguration
Зʼявляється в:
UpgradeDiffConfiguration містить список параметрів конфігурації, які специфічні для команди kubeadm upgrade diff
.
Поле | Опис |
---|---|
kubernetesVersion string |
|
contextLines int |
|
UpgradeNodeConfiguration
Зʼявляється в:
UpgradeNodeConfiguration містить список параметрів конфігурації, які специфічні для команди "kubeadm upgrade node".
Поле | Опис |
---|---|
certificateRenewal bool |
|
dryRun bool |
|
etcdUpgrade bool |
|
ignorePreflightErrors []string |
|
skipPhases []string |
|
patches Patches |
|
imagePullPolicy core/v1.PullPolicy |
|
imagePullSerial bool |
|
UpgradePlanConfiguration
Зʼявляється в:
UpgradePlanConfiguration містить список параметрів конфігурації, які специфічні для команди "kubeadm upgrade plan".
Поле | Опис |
---|---|
kubernetesVersion [Обовʼязкове]string |
|
allowExperimentalUpgrades bool |
|
allowRCUpgrades bool | Увімкнення |
dryRun bool |
|
ignorePreflightErrors []string |
|
printConfig bool |
|