Cluster Version Operator#

Cluster Version Operator (CVO) - один из операторов кластера, которые выполняются в каждом кластере DropApp Plus. CVO использует артефакт, называемый Выпуск образа полезной нагрузки, который представляет определенную версию DropApp Plus. Образ полезной нагрузки содержит файлы манифестов, необходимые для функционирования кластера.

CVO согласовывает ресурсы внутри кластера, чтобы они соответствовали манифестам в образе полезной нагрузки. В результате CVO реализует обновления кластера. После предоставления образа полезной нагрузки для более новой версии DropApp Plus CVO согласовывает все операторы кластера с их обновленными версиями, и операторы кластера аналогичным образом обновляют свои операнды.

Последовательность выполнения#

Как и другие операторы кластера, Cluster Version Operators настраивается с помощью ресурса Config API в кластере ClusterVersion:

oc explain clusterversion
  KIND:     ClusterVersion
  VERSION:  config.openshift.io/v1

  DESCRIPTION:
       ClusterVersion is the configuration for the ClusterVersionOperator. This is
       where parameters related to automatic updates can be set. Compatibility
       level 1: Stable within a major release for a minimum of 12 months or 3
       minor releases (whichever is longer).

  FIELDS:
     ...
     spec   <Object> -required-
       spec is the desired state of the cluster version - the operator will work
       to ensure that the desired version is applied to the cluster.

     status   <Object>
       status contains information about the available updates and any in-progress
       updates.

Ресурс ClusterVersion следует установленному шаблону DropApp Plus, где свойство spec описывает желаемое состояние, которого CVO должен достичь и поддерживать, а свойство status заполняется CVO для описания его статуса и наблюдаемого состояния.

В типовом кластере DropApp Plus ресурс ClusterVersion с областью действия кластера, называется версией:

$ oc get clusterversion version
NAME      VERSION   AVAILABLE   PROGRESSING   SINCE   STATUS
version   4.11.17   True        False         6d5h    Cluster version is 4.11.17

Результат#

Cluster Version Operator настроен и готов к работе.