Оновлення вузлів Linux
Ця сторінка пояснює, як оновити вузли робочих навантажень Linux, створені за допомогою kubeadm.
Перш ніж ви розпочнете
Вам потрібен доступ до оболонки на всіх вузлах, а також інструмент командного рядка kubectl повинен бути налаштований для спілкування з вашим кластером. Рекомендується виконувати цю інструкцію у кластері, який має принаймні два вузли, які не виконують функції вузлів панелі управління.
Для перевірки версії введітьkubectl version
.- Ознайомтеся з процесом оновлення решти вузлів панелі управління за допомогою kubeadm. Вам потрібно буде спочатку оновити вузли панелі управління перед оновленням вузлів робочих навантажень Linux.
Зміна репозиторію пакунків
Якщо ви використовуєте репозиторії пакунків (pkgs.k8s.io
), вам потрібно увімкнути репозиторій пакунків для потрібного мінорного релізу Kubernetes. Це пояснено в документі Зміна репозиторію пакунків Kubernetes.
apt.kubernetes.io
та yum.kubernetes.io
) визнані
застарілими та заморожені станом на 13 вересня 2023.
Використання нових репозиторіїв пакунків, розміщених за адресою pkgs.k8s.io`,
настійно рекомендується і є обовʼязковим для встановлення версій Kubernetes, випущених після 13 вересня 2023 року.
Застарілі репозиторії та їхні вміст можуть бути видалені у будь-який момент у майбутньому і без попереднього повідомлення.
Нові репозиторії пакунків надають можливість завантаження версій Kubernetes, починаючи з v1.24.0.Оновлення робочих вузлів
Оновлення kubeadm
Оновіть kubeadm:
# замініть x у 1.31.x-* на останню версію патча
sudo apt-mark unhold kubeadm && \
sudo apt-get update && sudo apt-get install -y kubeadm='1.31.x-*' && \
sudo apt-mark hold kubeadm
# замініть x у 1.31.x-* на останню версію патча
sudo yum install -y kubeadm-'1.31.x-*' --disableexcludes=kubernetes
Виклик "kubeadm upgrade"
Для робочих вузлів це оновлює локальну конфігурацію kubelet:
sudo kubeadm upgrade node
Виведіть вузол з експлуатації
Підготуйте вузол до обслуговування, позначивши його як недоступний для планування та виселивши завдання:
# виконайте цю команду на вузлі панелі управління
# замініть <node-to-drain> імʼям вузла, який ви виводите з експлуатації
kubectl drain <node-to-drain> --ignore-daemonsets
Оновлення kubelet та kubectl
Оновіть kubelet та kubectl:
# замініть x у 1.31.x-* на останню версію патча sudo apt-mark unhold kubelet kubectl && \ sudo apt-get update && sudo apt-get install -y kubelet='1.31.x-*' kubectl='1.31.x-*' && \ sudo apt-mark hold kubelet kubectl
# замініть x у 1.31.x-* на останню версію патча sudo yum install -y kubelet-'1.31.x-*' kubectl-'1.31.x-*' --disableexcludes=kubernetes
Перезавантажте kubelet:
sudo systemctl daemon-reload sudo systemctl restart kubelet
Відновіть роботу вузла
Поверніть вузол в роботу, позначивши його як придатний для планування:
# виконайте цю команду на вузлі панелі управління
# замініть <node-to-uncordon> імʼям вашого вузла
kubectl uncordon <node-to-uncordon>
Що далі
- Подивіться, як оновити вузли Windows.