Обновление кластера

Для обновления кластера выполните следующие действия:

  1. Перейдите на страницу Дашборд кластера.
  2. В блоке Обновление кластера:
  • Выберите версию кластера в списке.
  • Нажмите кнопку Обновить. После запуска обновления вы можете отслеживать процесс обновления по состоянию, прописанному в блоке обновления. Если вы видите текст “Обновлений нет”, значит у вас последняя доступная версия клиентского кластера.

Troubleshooting

Иногда между минорными вериями платформы появляются breaking changes, из-за которых для обновления необходимы дополнительные действия. В версии 2.3.0 изменили механизм аутентификации в клиентских кластерах с помощью kubeconfig файла. Чтобы механизм работал корректно, необходимо внести небольшие изменения в клиентских кластерах.

После обновления клиентских кластеров с версии 2.2.x, произведите обновление каждого клиентского кластера согласно инструкции:

  1. Скачайте сертификат сервера авторизации кластера управления и разместите его на обновляемом клиентском кластере. Для этого последовательно подключитесь по SSH к каждому Мастер-узлу обновляемого клиентского кластера и на каждом Мастер-узле выполните команду:
</dev/null openssl s_client -connect auth.apps.my-manage-cluster.domain.local:443 -servername auth.apps.my-manage-cluster.domain.local | openssl x509 > /etc/ssl/certs/oidc.crt

Замените apps.my-manage-cluster.domain.local на Ingress вашего кластера управления.

  1. Выполните резервное копирование (бэкап) всей директории /etc/kubernetes на каждом Мастер-узле обновляемого клиентского кластера. Для этого введите в консоли команду:
tar -zcvf /root/kubernetes-`date '+%Y%m%d-%H%M%S'`.tar.gz /etc/kubernetes
  1. Отредактируйте конфигурацию кластера в обновляемом клиентском кластере:
kubectl -n kube-system edit cm kubeadm-config

Добавьте опции oidc в extraArgs для apiServer:

...
data:
  ClusterConfiguration: |
    apiServer:
      certSANs:
      - 10.31.145.48
      extraArgs:
        oidc-ca-file: /etc/ssl/certs/oidc.crt
        oidc-client-id: backend
        oidc-groups-claim: claims
        oidc-groups-prefix: "shturval:"
        oidc-issuer-url: https://auth.apps.my-manage-cluster.domain.local
        oidc-username-claim: sub
        oidc-username-prefix: "shturval:"
        authorization-mode: Node,RBAC
...

Замените apps.my-manage-cluster.domain.local на Ingress вашего кластера управления.

  1. Перегенерируйте конфиги на каждом Мастер-узле клиентского кластера, последовательно выполнив команду на каждом Мастер-узле:
sudo kubeadm upgrade node phase control-plane --etcd-upgrade=false

При возниконовлении трудностей в процессе обновления, вы можете обратиться для консультации и сопровождения к команде разработки Платформы “Штурвал”. Для этого из раздела “О системе” графического интерфейса платформы перейдите в сервис-деск и оставьте заявку на поддержку.