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

Node Config Operator. Архитектура

1. Структура и функционал оператора

Node Config Operator (NCO) обеспечивает координацию применения пользовательских конфигураций к узлам кластера. Архитектура оператора включает ряд компонентов, функциональность которых приведена в таблице.

Компонент

Тип

Описание

Node Config Operator

Deployment (1 Pod)

Deployment (1 pod) Pod с оператором, который обслуживает CR, представляющий из себя набор контроллеров:

  • Facts Controller - отслеживает изменения ресурсов Node Config и инициирует создание ресурса Node Current Config через Render Controller.

  • Render Controller - формирует новый ресурс Node Current Config и удаляет устаревший после его успешного применения.

  • Update Controller - передает конфигурацию Node Current Config агенту NCO для применения на узлах.

  • Retry Controller - контролирует состояние Node Current Config и управляет взаимодействием с агентом NCO.

  • Sync Controller - обеспечивает автоматическую синхронизацию актуальных конфигураций Node Current Config (NCC). При выявлении несоответствий с Node Config (NC) корректирует их, исключая возможность ручного изменения конфигураций вне оператора.

Node Config

CRD

Все конфигурации для узлов, определяемые пользоватем.

Node Current Config

CRD

Генерируемый оператором ресурс, содержащий итоговую (применяемую) конфигурацию узлов.

NCO Agent

Daemon Set

Pod с агентом, который взаимодействует и с оператором, и с Puppet-агентом на нодах.

Ниже представлена схема взаимодействия компонентов.

Архитектура Node Config Operator