Подготовка к обновлению Nova Container Platform

Перед обновлением платформы Nova Container Platform обратите внимание на рекомендации и предварительные условия, представленные в данном разделе.

1. Предварительные условия

  • Вы ознакомились с общими сведениями об обновлении, а также с описание процессов обновления платформы.

  • У вас есть доступ к кластеру с учетной записью, имеющей роль cluster-admin в Kubernetes.

  • У вас есть токен доступа к хранилищу секретов Secrets Manager с привилегиями root.

  • Вы установили утилиту kubectl для работы с Kubernetes.

  • Вы установили утилиту nova-ctl для работы с платформой.

  • У вас есть доступ к узлам кластера по протоколу SSH с машины, где вы используете утилиты nova-ctl и kubectl.

  • Вы сохранили резервную копию хранилища Etcd на случай экстренного восстановления.

  • Вы убедились, что все ваши приложения поддерживают новую версию Kubernetes (в случае мажорного обновления платформы).

  • Вы убедились, что все ваши приложения запущены в достаточном количестве реплик и распределены по разным узлам платформы или временная недоступность ваших приложений допустима в рамках окна обновления.

  • Вы обновили сервер управления Nova Universe, если выполнялась офлайн-установка платформы.

  • Проверьте, что все узлы платформы находятся в состоянии Ready:

    kubectl get nodes
    
    NAME                                           STATUS   ROLES            AGE    VERSION
    node-master-lm0jxax0.nova-zig4kntx30g3.local   Ready    control-plane    115d   v1.26.8
    node-worker-1ig440y8.nova-zig4kntx30g3.local   Ready    infra            115d   v1.26.8
    node-worker-paknej6b.nova-zig4kntx30g3.local   Ready    ingress,worker   115d   v1.26.8
  • Проверьте, что все объекты реконсиляции Cluster Kustomizations находятся в состоянии Ready:

    kubectl get ks -l kustomization.nova-platform.io/cluster=true -A
    
    NAMESPACE     NAME                                   AGE   READY   STATUS
    nova-gitops   nova-release-cadvisor-main             23m   True    Applied revision: v2.3.1@sha1:1621385e63a481153346cb1fdde5116193decc61
    nova-gitops   nova-release-cert-manager-main         23m   True    Applied revision: v2.3.1@sha1:1621385e63a481153346cb1fdde5116193decc61
    nova-gitops   nova-release-cert-manager-post         23m   True    Applied revision: v2.3.1@sha1:1621385e63a481153346cb1fdde5116193decc61
    nova-gitops   nova-release-cilium-hubble             23m   True    Applied revision: v2.3.1@sha1:1621385e63a481153346cb1fdde5116193decc61
    nova-gitops   nova-release-cluster-crds              23m   True    Applied revision: v2.3.1@sha1:1621385e63a481153346cb1fdde5116193decc61
    nova-gitops   nova-release-console-main              23m   True    Applied revision: v2.3.1@sha1:1621385e63a481153346cb1fdde5116193decc61
    nova-gitops   nova-release-csi-local-main            23m   True    Applied revision: v2.3.1@sha1:1621385e63a481153346cb1fdde5116193decc61
    nova-gitops   nova-release-descheduler-main          23m   True    Applied revision: v2.3.1@sha1:1621385e63a481153346cb1fdde5116193decc61
    nova-gitops   nova-release-git-main                  23m   True    Applied revision: v2.3.1@sha1:1621385e63a481153346cb1fdde5116193decc61
    nova-gitops   nova-release-grafana-main              23m   True    Applied revision: v2.3.1@sha1:1621385e63a481153346cb1fdde5116193decc61
    nova-gitops   nova-release-ingress-internal-main     23m   True    Applied revision: v2.3.1@sha1:1621385e63a481153346cb1fdde5116193decc61
    nova-gitops   nova-release-ingress-public-main       23m   True    Applied revision: v2.3.1@sha1:1621385e63a481153346cb1fdde5116193decc61
    nova-gitops   nova-release-logging-operator-main     23m   True    Applied revision: v2.3.1@sha1:1621385e63a481153346cb1fdde5116193decc61
    nova-gitops   nova-release-metrics-server-main       23m   True    Applied revision: v2.3.1@sha1:1621385e63a481153346cb1fdde5116193decc61
    nova-gitops   nova-release-prometheus-adapter-main   23m   True    Applied revision: v2.3.1@sha1:1621385e63a481153346cb1fdde5116193decc61
    nova-gitops   nova-release-prometheus-pre            23m   True    Applied revision: v2.3.1@sha1:1621385e63a481153346cb1fdde5116193decc61
    nova-gitops   nova-release-reflector-main            23m   True    Applied revision: v2.3.1@sha1:1621385e63a481153346cb1fdde5116193decc61
    nova-gitops   nova-release-reloader-main             23m   True    Applied revision: v2.3.1@sha1:1621385e63a481153346cb1fdde5116193decc61
    nova-gitops   nova-release-vpa-main                  23m   True    Applied revision: v2.3.1@sha1:1621385e63a481153346cb1fdde5116193decc61
  • Проверьте, что в кластере Kubernetes отсутствуют сервисы в состоянии ошибки:

    kubectl get pods -A | grep -vi "run\comp"

Если вы обнаружили в кластере сбои в работе собственных или платформенных сервисов, то рекомендуется сначала устранить их, а затем выполнять обновление. В противном случае обновление кластера может завершиться с ошибкой.