Рубрики
Uncategorized

Автоматизированные обновления для K3S

Мой кластер падал за последнюю версию K3S. Время обновления. Введите систему UPG … Теги с Куберовщиками, дежопами, гитами.

Мой кластер падал за последнюю версию K3S. Время обновления.

Введите контроллер обновления системы

Я в основном только инструкции связали здесь Отказ

Он разворачивает контроллер обновления системы в собственное пространство имен, где он пока ничего не будет делать.

Вы должны дать ему несколько планов.

Он будет читать планы в том же пространстве имен и выполнять указанное изображение. Я использовал план, связанный выше. Вместо того, чтобы связывать его в конкретную версию, я установил его на новейший канал.

# Server plan
apiVersion: upgrade.cattle.io/v1
kind: Plan
metadata:
name: server-plan
namespace: system-upgrade
spec:
concurrency: 1
cordon: true
nodeSelector:
matchExpressions:
- key: node-role.kubernetes.io/master
operator: In
values:
- "true"
serviceAccountName: system-upgrade
upgrade:
image: rancher/k3s-upgrade
channel: https://update.k3s.io/v1-release/channels/stable
---
# Agent plan
apiVersion: upgrade.cattle.io/v1
kind: Plan
metadata:
name: agent-plan
namespace: system-upgrade
spec:
concurrency: 1
cordon: true
nodeSelector:
matchExpressions:
- key: node-role.kubernetes.io/master
operator: DoesNotExist
prepare:
args:
- prepare
- server-plan
image: rancher/k3s-upgrade:v1.17.4-k3s1
serviceAccountName: system-upgrade
upgrade:
image: rancher/k3s-upgrade
channel: https://update.k3s.io/v1-release/channels/stable

Вы заметите, что на самом деле есть 2 планы. Один нанесен на главные узлы и другие рабочие узлы. Это позволяет обновить главный узел к новой версии перед рабочими.

Весь процесс взял на себя 5 минут для моего 3 узла кластера. Я смог Kubectl Получить узлы периодически и наблюдать за прогрессом.

Оригинал: «https://dev.to/kasuboski/automated-upgrades-for-k3s-b7o»