kubeadm upgrade
kubeadm upgrade
— це зручна команда, яка обгортає складну логіку оновлення однією командою, з підтримкою як планування оновлення, так і його фактичного виконання.
Інструкція kubeadm upgrade
Кроки для виконання оновлення за допомогою kubeadm викладені в цьому документі. Для старіших версій kubeadm, будь ласка, зверніться до старих наборів документації на сайті Kubernetes.
Ви можете використовувати kubeadm upgrade diff
для перегляду змін, які будуть застосовані до маніфестів статичних Pod.
У Kubernetes версії v1.15.0 і пізніше, kubeadm upgrade apply
та kubeadm upgrade node
також автоматично оновлять сертифікати, керовані kubeadm на цьому вузлі, включаючи ті, що зберігаються у файлах kubeconfig. Щоб відмовитися від цього, можна передати прапорець --certificate-renewal=false
. Для отримання додаткової інформації про оновлення сертифікатів дивіться документацію з управління сертифікатами.
Примітка:
Командиkubeadm upgrade apply
та kubeadm upgrade plan
мають застарілий прапорець --config
, який дозволяє переналаштувати кластер під час планування або оновлення конкретного вузла панелі управління. Будь ласка, зверніть увагу, що робочий процес оновлення не був розроблений для цього сценарію, і можуть бути повідомлення про несподівані результати.kubeadm upgrade plan
Перевіряє, до яких версій можна оновитися, і перевіряє, чи можна оновити ваш поточний кластер.
Опис
Перевіряє, до яких версій можна оновитися, і перевіряє, чи можна оновити ваш поточний кластер. Ця команда може бути виконана лише на вузлах панелі управління, де існує файл kubeconfig "admin.conf". Щоб пропустити перевірку Інтернету, вкажіть необовʼязковий параметр [version].
kubeadm upgrade plan [version] [flags]
Параметри
--allow-experimental-upgrades | |
Показати нестабільні версії Kubernetes як альтернативу для оновлення і дозволити оновлення до альфа/бета/кандидатів на випуск версій Kubernetes. | |
--allow-missing-template-keys Типово: true | |
Якщо true, ігнорувати будь-які помилки в шаблонах, коли поле або ключ map відсутній у шаблоні. Застосовується лише до форматів виведення golang та jsonpath. | |
--allow-release-candidate-upgrades | |
Показати версії кандидатів на випуск Kubernetes як альтернативу для оновлення і дозволити оновлення до версій кандидатів на випуск Kubernetes. | |
--config string | |
Шлях до файлу конфігурації kubeadm. | |
-h, --help | |
довідка plan | |
--ignore-preflight-errors strings | |
Список перевірок, помилки яких будуть показані як попередження. Приклад: 'IsPrivilegedUser,Swap'. Значення 'all' ігнорує помилки з усіх перевірок. | |
--kubeconfig string Типово: "/etc/kubernetes/admin.conf" | |
Файл kubeconfig, який буде використовуватися при зверненні до кластера. Якщо прапорець не заданий, буде проведено пошук файлу kubeconfig в стандартнх місцях. | -o, --output string Типово: "text" |
Формат виводу. Один із: text|json|yaml|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file. | |
--print-config | |
Вказує, чи потрібно надрукувати файл конфігурації, який буде використаний під час оновлення. | |
--show-managed-fields | |
Якщо true, зберігати managedFields під час виводу обʼєктів у форматі JSON або YAML. |
Параметри успадковані від батьківських команд
--rootfs string | |
Шлях до реальної кореневої файлової системи хоста. Це призведе до зміни корення (chroot) kubeadm на вказаних шлях |
kubeadm upgrade apply
Оновлює кластер Kubernetes до вказаної версії.
Опис
Оновлює кластер Kubernetes до вказаної версії.
Команда "apply [version]" виконує наступні етапи:
preflight Виконання перевірок перед запуском
control-plane Оновлення панелі управління
upload-config Завантаження конфігурації kubeadm та kubelet у ConfigMapі
/kubeadm Завантаження конфігурації кластера kubeadm у ConfigMap
/kubelet Завантаження конфігурації компоненту kubelet у ConfigMap
kubelet-config Оновлення конфігурації kubelet для цього вузла
bootstrap-token Налаштування токену bootstrap та правил cluster-info RBAC
addon Оновлення типових надбудов kubeadm
/coredns Оновлення надбудови CoreDNS
/kube-proxy Оновлення надбудови kube-proxy
post-upgrade Запуск завдань після оновлення
kubeadm upgrade apply [version]
Параметри
--allow-experimental-upgrades | |
Показує нестабільні версії Kubernetes як альтернативу для оновлення і дозволяє оновлювати до альфа/бета/версій кандидатів Kubernetes. | |
--allow-release-candidate-upgrades | |
Показує версії кандидатів на випуск Kubernetes як альтернативу для оновлення і дозволяє оновлювати до версій кандидатів на випуск Kubernetes. | |
--certificate-renewal Типово: true | |
Виконує оновлення сертифікатів, які використовуються компонентами під час оновлення. | |
--config string | |
Шлях до файлу конфігурації kubeadm. | |
--dry-run | |
Не змінює жодного стану, просто показує дії, які будуть виконані. | |
--etcd-upgrade Типово: true | |
Виконує оновлення etcd. | |
-f, --force | |
Примусове оновлення, навіть якщо деякі вимоги можуть бути не виконані. Це також передбачає неітерактивний режим. | |
-h, --help | |
довідка apply | |
--ignore-preflight-errors strings | |
Список перевірок, помилки яких будуть показані як попередження. Приклад: 'IsPrivilegedUser,Swap'. Значення 'all' ігнорує помилки з усіх перевірок. | |
--kubeconfig string Типово: "/etc/kubernetes/admin.conf" | |
Файл kubeconfig, який буде використовуватися при зверненні до кластера. Якщо прапорець не заданий, буде проведено пошук файлу kubeconfig в стандартних місцях. | |
--patches string | |
Шлях до теки, що містить файли з іменами "target[suffix][+patchtype].extension". Наприклад, "kube-apiserver0+merge.yaml" або просто "etcd.json". "target" може бути одним із "kube-apiserver", "kube-controller-manager", "kube-scheduler", "etcd", "kubeletconfiguration", "corednsdeployment". "patchtype" може бути одним із "strategic", "merge" або "json", і вони відповідають форматам патчів, які підтримуються kubectl. За замовчуванням "patchtype" - "strategic". "extension" повинен бути або "json", або "yaml". "suffix" є необовʼязковим рядком, який може використовуватися для визначення порядку застосування патчів за алфавітом. | |
--print-config | |
Вказує, чи потрібно надрукувати файл конфігурації, який буде використаний під час оновлення. | |
--skip-phases strings | |
Список етапів, які потрібно оминути | |
-y, --yes | |
Виконати оновлення і не запитувати підтвердження (режим без взаємодії). |
Параметри успадковані від батьківських команд
--rootfs string | |
Шлях до реальної кореневої файлової системи хоста. Це призведе до зміни корення (chroot) kubeadm на вказаних шлях |
kubeadm upgrade diff
Показує які відмінності можуть бути застосовані до наявних маніфестів статичних Pod. Дивіться також: kubeadm upgrade apply --dry-run
Опис
Показує які відмінності можуть бути застосовані до наявних маніфестів статичних Pod. Дивіться також: kubeadm upgrade apply --dry-run
kubeadm upgrade diff [version] [flags]
Параметри
--config string | |
Шлях до файлу конфігурації kubeadm. | |
-c, --context-lines int Типово: 3 | |
Скільки рядків контексту в виведенні diff. | |
-h, --help | |
довідка diff | |
--kubeconfig string Типово: "/etc/kubernetes/admin.conf" | |
Файл kubeconfig, який буде використовуватися при зверненні до кластера. Якщо прапорець не заданий, буде проведено пошук файлу kubeconfig в стандартних місцях. |
Параметри успадковані від батьківських команд
--rootfs string | |
Шлях до реальної кореневої файлової системи хоста. Це призведе до зміни корення (chroot) kubeadm на вказаних шлях |
kubeadm upgrade node
Команда upgrade для вузлів в кластері
Опис
Команда upgrade для вузлів в кластері.
Команда "node" виконує наступні фази:
preflight Виконання попереднії перевірок оновлення вузла
control-plane Оновлення екземпляру панелі управління, розгорнутий на цьому вузлі, якщо такий є
kubelet-config Оновлення конфігурацію kubelet для цього вузла
addon Оновлення стандартних надбудов kubeadm
/coredns Оновлення надбудови CoreDNS
/kube-proxy Оновлення надбудови kube-proxy
post-upgrade Запуск завдань після оновлення
kubeadm upgrade node [flags]
Параметри
--certificate-renewal Типово: true | |
Виконати оновлення сертифікатів, використовуваних компонентами, які змінюються під час оновлення. | |
--config string | |
Шлях до файлу конфігурації kubeadm. | |
--dry-run | |
Не змінює жодного стану, просто показує дії, які будуть виконані. | |
--etcd-upgrade Типово: true | |
Виконати оновлення etcd. | |
-h, --help | |
довідка node | |
--ignore-preflight-errors strings | |
Список перевірок, помилки в яких будуть відображені як попередження. Приклад: 'IsPrivilegedUser,Swap'. Значення 'all' ігнорує помилки з усіх перевірок. | |
--kubeconfig string Типово: "/etc/kubernetes/admin.conf" | |
Файл kubeconfig, який буде використовуватися при зверненні до кластера. Якщо прапорець не заданий, буде проведено пошук файлу kubeconfig в стандартних місцях. | |
--patches string | |
Шлях до теки, що містить файли з іменами "target[suffix][+patchtype].extension". Наприклад, "kube-apiserver0+merge.yaml" або просто "etcd.json". "target" може бути одним із "kube-apiserver", "kube-controller-manager", "kube-scheduler", "etcd", "kubeletconfiguration", "corednsdeployment". "patchtype" може бути одним із "strategic", "merge" або "json", і вони відповідають форматам патчів, що підтримуються kubectl. Стандартно "patchtype" - "strategic". "extension" повинен бути або "json", або "yaml". "suffix" - це необовʼязковий рядок, який може використовуватися для визначення порядку застосування патчів за алфавітном. | |
--skip-phases strings | |
Список фаз, які слід пропустити. |
Параметри успадковані від батьківських команд
--rootfs string | |
Шлях до реальної кореневої файлової системи хоста. Це призведе до зміни корення (chroot) kubeadm на вказаних шлях |
Що далі
- kubeadm config якщо ви ініціалізували свій кластер за допомогою kubeadm версії 1.7.x або нижче, щоб налаштувати ваш кластер для оновлення за допомогою
kubeadm upgrade
.