Сервисы и репозитории
Модуль управления сервисами
Модуль управления сервисами shturval-services в РОСА Кубис является продуктом внутренней разработки Комплекса. Модуль содержит в себе функционал ArgoCD и Flux, написан на языке Go. Функции модуля:
- управление репозиториями: позволяет подключить валидные helm repo по протоколам HTTP, HTTPS, OCI;
- получение helm-чартов репозиториев;
- установка в кластер helm-чартов из подключенных репозиториев;
- обновление в кластере helm-чартов из подключенных репозиториев.
По умолчанию в Комплексе разворачивается репозиторий shturval (публичный или из зеркала). Модуль является критическим (недоступен для отключения). Он обеспечивает автоматическую установку, развертывание helm-чартов (helm-релизов) в кластерах, развернутых на базе РОСА Кубис.
Для просмотра состояния сервиса нужно перейти на страницу "Установленные сервисы" раздела "Сервисы и репозитории", найти Модуль управления сервисами (shturval-services) и нажать Управлять.
Сервисы репозитория
По умолчанию в Комплекс в кластер подключается репозиторий Shturval, содержащий Helm-чарты сервисов (таблица 73).
ShturvalServicePatch (PatchSSC)
В РОСА Кубис реализован кастомный ресурс ShturvalServicePatch (PatchSSC) для применения к спецификации (ShturvalServiceConfig, ssc) сервисов кластера. PatchSSC может быть полезен для массового применения типовой конфигурации экземпляров сервисов в разных кластерах. Механизм PatchSSC позволяет быстро откатить изменения в customvalues сервисов в случае ошибок или неверной конфигурации.
Можно подготовить один PatchSSC сервиса, добавив требуемые параметры конфигурации SSC сервиса, и распределить его по всем необходимым кластерам.
Пример ShturvalServicePatch:
apiVersion: ops.shturval.tech/v1beta2
kind: ShturvalServicePatch
metadata:
name: patchsscname
spec:
shturvalServiceConfigName: servicename
patchOrder: 1
customvalues:
paramname: value
mode: auto
При формировании ShturvalServicePatch:
- требуется задать связанность с сервисом:
- указать системное имя (name) ShturvalServiceConfig в shturvalServiceConfigName;
- чтобы получить имя, в графическом интерфейсе кластера перейти в раздел "Сервисы и репозитории" на страницу "Установленные сервисы";
- найти необходимый сервис и перейти к управлению;
- скопировать системное имя, которое указано последним в навигационном меню сверху (рисунок 500). В следующем релизе системное имя будет добавлено отдельным полем в интерфейсе сервиса.

Рисунок 500 ‒ Системное имя ShturvalServiceConfig
- необходимо указать имя для создаваемого PatchSSC в metadata.name. Имя созданного PatchSSC недоступно для изменения;
- можно задать приоритетность применения ShturvalServicePatches в patchOrder. Чем меньше значение в patchOrder, тем выше приоритет ShturvalServicePatch. Если последовательность применения неважна, не нужно указывать данный параметр;
- можно задать необходимые параметры конфигурации SSC сервиса, указав перечень параметров в customvalues, сохраняя иерархическую структуру.
- при необходимости переопределить режим управления сервиса (автоматический, ручной, отключен). Доступные значения для mode: auto, manual, absent.
Пример примененного ShturvalServicePatch:
apiVersion: ops.shturval.tech/v1beta2
kind: ShturvalServicePatch
metadata:
creationTimestamp: 2025-07-03T08:02:17Z
generation: 1
labels:
ops.shturval.tech/ssc: servicename
name: servicename
ownerReferences:
‒ apiVersion: ops.shturval.tech/v1beta2
blockOwnerDeletion: true
controller: true
kind: ShturvalServiceConfig
name: servicename
uid: c4908b5e-df92-4996-9403-2e452a6101e1
resourceVersion: "1435845"
uid: c3ca01fb-594f-4bb8-addb-bbbafff542d0
spec:
customvalues:
paramname: value
shturvalServiceConfigName: servicename
Пример SSC c примененным ShturvalServicePatch:
apiVersion: ops.shturval.tech/v1beta1
kind: ShturvalServiceConfig
metadata:
...
name: servicename
resourceVersion: '1489960'
uid: c4908b5e-df92-
selfLink: /apis/ops.shturval.tech/v1beta1/shturvalserviceconfigs/servicename
status:
appliedCustomValues:
paramname: value
## Здесь могут быть другие параметры из customvalues
appliedPatches:
‒ patchsscname
conditions:
‒ lastTransitionTime: '2025-07-01T09:03:58Z'
message: ''
reason: Install
status: 'True'
type: Install
‒ lastTransitionTime: '2025-07-03T07:10:44Z'
message: ''
reason: Sync
status: 'True'
type: Sync
‒ lastTransitionTime: '2025-07-01T09:08:11Z'
message: ''
reason: Healthy
status: 'True'
type: Healthy
‒ lastTransitionTime: '2025-07-03T09:44:46Z'
message: ''
reason: Patch
status: 'True'
type: Patch
currentmode: auto
currentversion: 2.11.0
ready: true
spec:
chart: servicename
customvalues: |
...
dependency:
‒ servicename-crds
insecure: true
mode: auto
namespace: namespacename
reponame: shturval
version: 2.11.0
Применение в графическом интерфейсе
В графическом интерфейсе можно загрузить ShturvalServicePatch с помощью импорта манифестов.
Сведения о созданных ShturvalServicePatch сервиса доступны в разделе "Администрирование" на странице "Установленные сервисы/просмотр сервиса", на вкладке "Примененные PatchSSC" (рисунок 501).

Рисунок 501 ‒ Вкладка "Примененные PatchSSC"
Если к сервису был применен ShturvalServicePatch, то у сервиса будет состояние "Patch" и статус "Patched".
Удалить ShturvalServicePatch можно одним из способов:
- на вкладке "Примененные PatchSSC" нажать на пиктограмму
в строке объекта; - на странице просмотра манифеста PatchSSC нажать на пиктограмму
.
Важно ‒ Редактировать и удалять предустановленные системные PatchSSC строго запрещено.
Особенности работы ShturvalServicePatch:
- Для одного сервиса возможно создать неограненное количество ShturvalServicePatches.
- С помощью ShturvalServicePatch возможно добавить или переопределить значения параметров конфигурации сервиса. С помощью ShturvalServicePatch невозможно удалить параметры и их значения в customvalues сервиса.
- Если у ShturvalServicePatches заданы приоритеты, то агрегация будет произведена с учетом приоритета, иначе ‒ беспорядочно.
- Значение параметра в ShturvalServicePatch приоритетнее значения этого же параметра в customvalues самого сервиса. Значение параметра в customvalues будет игнорироваться при наличии этого же параметра в ShturvalServicePatch.
- Если в нескольких ShturvalServicePatch заданы одинаковые параметры, то будут применены параметры более приоритетного ShturvalServicePatch. Поэтому в таких случаях рекомендуется устанавливать patchOrder при создании ShturvalServicePatch. Если в таких ShturvalServicePatch не задана приоритетность, то выбор применения не предсказуем.
- При создании ShturvalServicePatch автоматически проставляется дата создания.
- ShturvalServicePatch возможно применить к спецификации сервиса в режиме автоматического (Auto) управления. Если сервис работает в ручном (Manual) режиме управления, для применения ShturvalServicePatch нужно перевести сервис в автоматический режим или установить ShturvalServicePatch параметр modeсо значением "auto".
Интерфейс сервисов и репозиториев
В разделе "Сервисы и репозитории" доступны подразделы:
- Репозитории;
- Доступные чарты;
- Установленные сервисы;
- Маркетплейс продуктов.
Репозитории
На странице "Репозитории" (рисунок 502) отображается перечень репозиториев, подключенных в кластере. При установки кластера по умолчанию подключается репозиторий Shturval. Есть возможность добавить репозиторий, содержащий Helm-чарты сервисов.

Рисунок 502 ‒ Страница "Репозитории"
Для добавления нового репозитория нужно нажать кнопку + Добавить репозиторий.
В открывшемся окне:
- задать название подключаемому репозиторию;
- в поле "URL" прописать путь до репозитория. Доступные протоколы для подключения: HTTP, HTTPS, OCI;
- выбрать, нужна ли проверка сертификата для подключения;
- в случае если к репозиторию ограничен доступ, прописать логин и пароль пользователя;
- при необходимости определить лейблы и аннотации репозитория.
Чарты из созданного репозитория будут доступны в разделе "Сервисы и репозитории" на странице "Доступные чарты" на вкладке с именем репозитория. Следует обратить внимание, что в случае подключения репозитория с протоколом OCI на вкладке репозитория необходимо ввести название чарта для его последующей установки.
Для просмотра или редактирования данных ранее созданного репозитория нужно нажать на названия репозитория в списке репозиториев (рисунок 503).

Рисунок 503 ‒ Редактирование репозитория
На вкладке "Репозиторий" можно просмотреть статус, состояние и данные подключенного репозитория.
Блок "Состояние" (рисунок 504) содержит список состояний, устанавливаемых при подключении репозитория. Чтобы просмотреть дополнительные сведения, следует нажать на название состояния из списка. В сведениях состояния отображаются: название состояния, дата и время проверки статуса состояния, причина установки статуса состояния.

Рисунок 504 ‒ Блок "Состояние"
В случае неуспешной установки статуса состояния дополнительно доступно сообщение об ошибке подключения репозитория (рисунок 505).

Рисунок 505 ‒ Ошибка подключения
При необходимости можно изменить данные пути до репозитория, данные доступа к репозиторию, проверку сертификата, определить лейблы и аннотации. После завершения редактирования необходимо нажать кнопку Сохранить.
Также изменить данные возможно с помощью манифеста объекта. Для этого следует перейти на вкладку "Манифест" (рисунок 506). После внесения изменений в манифест требуется выполнить проверку. Результат проверки будет доступен в правой части экрана. Можно раскрыть блок результата проверки, чтобы увидеть полный манифест. Если валидация формата манифеста репозитория не пройдена, недоступна проверка манифеста.

Рисунок 506 ‒ Проверка манифеста
Далее необходимо сохранить изменения, внесенные в манифест. Несохраненные данные не будут применены.
Для удаления репозитория требуется нажать на Удалить в строке репозитория.
После удаления репозитория сервисы, установленные из чартов этого репозитория в кластер, останутся установленными.
Доступные чарты
На странице "Доступные чарты" представлены Helm-чарты сервисов, доступных для установки в кластер. Чарты размещены по вкладкам в соответствии с подключенными репозиториями.
Также есть возможность выполнить поиск Helm-чарта сервиса по его названию. Строка ввода для поиска расположена под названием вкладки. Поиск работает, начиная с первого введенного символа.
По умолчанию доступны Helm-чарты сервисов в репозитории Shturval (рисунок 507).

Рисунок 507 ‒ Чарты в репозитории Shturval
Установка и настройка экземпляра сервиса
Чтобы установить экземпляр сервиса, нужно нажать на кнопку Установить на карточке чарта сервиса. На странице "Установка чарта" необходимо произвести первичную конфигурацию экземпляра сервиса (рисунок 508).

Рисунок 508 ‒ Страница "Установка чарта"
Далее следует задать название экземпляра сервиса, выбрать версию чарта (по умолчанию выбрана последняя доступная), выбрать неймспейс, в котором необходимо установить экземпляр сервиса. Внизу выпадающего списка неймспейсов доступна опция создания нового неймспейса (рисунок 509).

Рисунок 509 ‒ Создание нового неймспейса
Далее требуется определить режим управления:
- Выкл (Absent) ‒ экземпляр сервиса будет установлен отключенным. После установки сервиса на странице "Установленные сервисы" можно включить сервис в автоматическом или ручном режиме.
- Автоматический (Auto) ‒ ресурсы сервиса в неймспейсе будут созданы автоматически, что приведет к автозапуску сервиса в кластере. При внесении изменений в конфигурацию сервиса рекомендуется выбирать данный режим для автоматического применения обновлений.
- Ручной (Manual) ‒ сервис запускается и обновляется вручную. Это может быть необходимо, если требуется использовать версию сервиса, отличную от версии, которая поставляется вместе с кластером.
Важно ‒ Графический интерфейс Комплекса строго связан с поддерживаемой версией сервисов. В случае расхождений версий графический интерфейс может не соответствовать фактическим данным.
Затем при необходимости можно определить лейблы и аннотации.
Добавление чарта репозитория, подключенного по OCI
Если репозиторий подключен по протоколу OCI, на вкладке репозитория нужно ввести название чарта репозитория для установки экземпляра сервиса. Затем следует нажать Проверить версию, чтобы получить список версий чарта (рисунок 510).

Рисунок 510 ‒ Список версий чарта
Если введено корректное название чарта, будут получены доступные версии чарта для установки. Автоматически к названию подставится последняя версия чарта. Просмотреть список версий и выбрать версию чарта возможно на странице "Установка чарта" (рисунок 511).

Рисунок 511 ‒ Страница "Установка чарта"
Для последующей установки чарта и конфигурации экземпляра сервиса нужно нажать Проверить чарт, откроется страница "Установка чарта". Следует выполнить первичную конфигурацию экземпляра сервиса. Название экземпляра сервиса и версия чарта будут предзаполнены в соответствии с названием чарта и версией, указанными на вкладке репозитория (рисунок 512).

Рисунок 512 ‒ Описание сервиса
Следующие настройки экземпляра сервиса на странице "Установка чарта" идентичны настройкам экземпляра сервиса репозитория shturval в соответствии с разделом "Установка и настройка экземпляра сервиса" (п. Установка и настройка экземпляра сервиса).
Спецификация сервисов
Изначально Helm использует параметры конфигурации по умолчанию. Блок "Спецификация сервиса" есть ни что иное, как values, передаваемые в файле при установке сервиса или его обновлении. Values должен быть в формате YAML. Часть сервисов Комплекса имеют предварительную конфигурацию, которую можно увидеть сразу после развертывания кластера. Значения customvalues не перезаписываются при обновлении кластера.
Если с чартом сервиса поставляется набор доступных values, они будут отображены в правой части экрана. Values в правой части экрана отображается только для просмотра в том виде, в котором они есть в чарте. Есть возможность выполнить поиск доступных values по названию. При вводе первого символа в строку ввода выполняется поиск value. Все изменения (кастомизацию) необходимо вносить в левой части в блоке "Спецификация сервиса" (рисунок 513).

Рисунок 513 ‒ Блок "Спецификация сервиса"
Завершив первичную конфигурацию сервиса, необходимо нажать кнопку Установить.
Установленный экземпляр сервиса будет доступен для просмотра и редактирования на странице "Установленные сервисы".
Установленные сервисы
На странице отображаются карточки установленных сервисов и доступны (рисунок 514):
- счетчики по установленным, включенным и работающим сервисам;
- поиск по названиям сервисов и чартов;
- сортировка по работающим и не работающим сервисам, позволяющая оперативно увидеть проблемы с сервисами в кластере;
- фильтрация по режиму управления: Ручной, Автоматический, Отключен.
Для установленных сервисов доступно изменение режима управления:
- Выкл (Absent) ‒ отключить сервис в кластере. Режим недоступен для критически важных сервисов Комплекса.
- Авто (Auto) ‒ ресурсы сервиса в неймспейсе будут созданы автоматически, что приведет к автозапуску сервиса в кластере. При внесении изменений в конфигурацию сервиса нужно выбрать данный режим для автоматического применения обновлений.
- Ручной (Manual) ‒ сервис будет включен, при этом сервис запускается и обновляется вручную. Это может быть необходимо, если требуется использовать версию сервиса, отличную от версии, которая поставляется вместе с кластером.

Рисунок 514 ‒ Установленные сервисы
Просмотр и редактирование сервиса
Чтобы изменить спецификацию, лейблы и аннотации экземпляра сервиса, нужно нажать на кнопку Управлять на карточке установленного сервиса.
На вкладке "Сервис" отображаются сведения наименования, версии, статуса установки чарта, состояния сервиса и дата последнего изменения. Есть возможность изменить режим управления (рисунок 515).

Рисунок 515 ‒ Вкладка "Сервис"
При необходимости можно внести изменения в спецификацию (customvalues) сервиса, переопределив параметры, добавив новые в блок "Спецификация сервиса". Рекомендуется вносить изменения с помощью кастомного ресурса ShturvalServicePatch (PatchSSC).
Если с чартом установленной версии поставляется набор доступных values, они будут отображены в блоке "Доступные параметры для конфигурации сервиса" и доступны только для просмотра. Есть возможность выполнить поиск доступных values по названию. При вводе первого символа в строке ввода выполняется поиск.
На вкладке "Примененные PatchSSC" доступны созданные ShturvalServicePatch (PatchSSC) для сервиса (рисунок 516).

Рисунок 516 ‒ Вкладка "Примененные PatchSSC"
По нажатию на строку с ShturvalServicePatch можно перейти на страницу просмотра и редактирования YAML-манифеста (рисунок 10).

Рисунок 517 ‒ Просмотр и редактирование YAML-манифеста
После изменения манифеста необходимо выполнить проверку. Результат проверки будет доступен в правой части экрана. Чтобы увидеть полный манифест, нужно раскрыть блок результата проверки. Если валидация формата манифеста кастомного ресурса не пройдена, недоступна проверка манифеста.
Далее следует сохранить внесенные изменения в манифест. Изменения не применятся без сохранения.
На вкладке "Лейблы и аннотации" можно изменить лейблы и аннотации сервиса.
После внесения изменений нужно нажать на кнопку Сохранить.
Чтобы удалить экземпляр установленного сервиса требуется нажать на кнопку Удалить на карточке установленного сервиса.
Чтобы приостановить работу сервиса, нужно выбрать режим управления "Выкл".
Важно:
- Название установленного экземпляра сервиса недоступно для редактирования.
- Удаление и отключение сервисов критически важных для работы Комплекса заблокировано.
В случае необходимости самостоятельного изменения версии сервиса следует перейти к редактированию сервиса в интерфейсекастомных ресурсов. Для этого в API-группе ops.shturval.tech нужно перейти в список сервисов (ShturvalServiceConfig), выбрать требуемый сервис и внести изменение в поле version.
Маркетплейс продуктов
На странице "Маркетплейс продуктов" есть возможность подключить преднастроенные репозитории продуктов партнеров. Для подключения других репозиториев следует перейти на страницу "Управление репозиториями" (п. Интерфейс сервисов и репозиториев).
Управление продуктом партнера
Добавление продукта партнера
Чтобы добавить продукты партнеров в Комплекс, необходимо выполнить подключение к репозиторию продукта партнера. Для этого нужно перейти на страницу "Маркетплейс продуктов", выбрать продукт и нажать Добавить.

Рисунок 518 ‒ Добавление продукта
В открывшемся модальном окне на вкладке "Конфигурация" (рисунок 518) нужно заполнить поля:
- Имя пользователя ‒ необходимо указать данные учетной записи, если осуществляется подключение к приватному репозиторию продукта партнера;
- Пароль ‒ указать пароль от учетной записи с доступом к приватному репозиторию продукта партнера;
- URL ‒ (обязательное) поле содержит ссылку для перехода на репозиторий продукта партнера, содержащий Helm-чарты для установки сервисов. По умолчанию определен URL, который направляет на публичный репозиторий продукта партнера. Можно изменить указанный по умолчанию URL, если чарты необходимых сервисов находятся по другому адресу, например, на URL приватного репозитория или зеркала. Доступные протоколы: HTTP, HTTPS, OCI.
Далее требуется выбрать, необходимо ли проверять сертификат безопасности. Проверка сертификата безопасности позволит подтвердить защищенное соединение и подлинность сервера, с которым устанавливается соединение.
При необходимости можно добавить лейблы и аннотации на вкладке "Лейблы и аннотации".
Важно ‒ Если подключение к репозиторию продукта партнера происходит по протоколу OCI, то вместо выбора чарта из списка доступных необходимо ввести название чарта для его последующей установки.
Название репозитория продукта партнера определено по умолчанию и совпадает с наименованием выбранного продукта на странице "Маркетплейс продуктов". Нельзя задать или изменить название.
После заполнения обязательных полей и завершения конфигурации репозитория продукта партнера нужно нажать Подключить. В результате подключения появится вкладка "Доступные чарты" в модальном окне. Далее следует выбрать чарты сервисов и выполнить установку сервисов. Можно завершить подключение без установки сервисов, для чего нажать Завершить без установки.
Можно выбрать и установить сервисы из доступных чартов в модальном окне подключенного ранее репозитория продукта партнера. Для этого требуется открыть страницу "Маркетплейс продуктов", выбрать "Управлять" продуктом и перейти на вкладку "Доступные чарты", выбрать чарты и установить сервисы.
Также чарты подключенного репозитория продукта партнера доступны к установке на странице "Доступные чарты" на одноименной вкладке репозитория продукта партнера.
Изменение продукта партнера
В случае если подключение к репозиторию продукта партнера установлено, но чарты недоступны, следует проверить настройки URL и учетных данных, затем выполнить переподключение.
Для переподключения репозитория продукта партнера нужно перейти на страницу "Маркетплейс продуктов", выбрать "Управлять" продуктом, обновить конфигурацию репозитория и нажать Переподключиться. После переподключения данные конфигурации и доступные чарты будут обновлены.
Кроме того, редактирование данных ранее подключенного репозитория продукта партнера возможно на странице "Репозитории", для чего нажать на название репозитория в списке подключенных репозиториев, при необходимости обновить данные. Далее необходимо Сохранить внесенные изменения. После сохранения данные конфигурации и доступные чарты будут обновлены.
Установленные ранее сервисы из чартов репозитория продукта партнера продолжат работать без изменений.
Отключение доступа к репозиторию продукта партнера
При необходимости можно отключить доступ к репозиторию продукта партнера на Комплексе, для чего перейти на страницу "Репозитории", выбрать репозиторий продукта партнера из списка, нажать на пиктограмму
и подтвердить действие (рисунок 519).

Рисунок 519 ‒ Отключение доступа к репозиторию
Следует обратить внимание, что при отключении доступа к репозиторию продукта партнера его чарты не будут доступны из Комплекса. Отключение доступа не повлияет на работу установленных ранее сервисов.
Доступные продукты
В РОСА Кубис доступны для подключения репозитории продукты партнеров (рисунок 520):

Рисунок 520 ‒ Продукты партнеров
- Nimbius ‒ платформа управления гибридным облаком. Чарт расположен в публичном репозитории;
- Kaspersky ‒ наложенные средства ИБ для кластера;
- Luntry ‒ комплексная защита контейнеров и Kubernetes на всех стадиях жизненного цикла приложения.
Nimbius
При установке чарта нужно создать или выбрать ранее созданный неймспейс nimbius. После установки чарта потребуется в неймспейсе nimbius создать секрет с названием "regcred" и типом "dockerconfigjson", содержащий данные лицензии, а также изменить конфигурацию сервиса. Для приобретения лицензии следует обращаться в Нимбиус.
На странице управления сервисом в блок "Спецификация сервиса" необходимо прописать customvalues.
Пример customvalues (описание параметров ‒ в таблице 74):
ui:
portalUrl: <ваше значение параметра>
orchestrator:
env:
applicationDomain: <ваше значение параметра>
Kaspersky Container Security
Kaspersky Container Security помогает выявлять проблемы безопасности на всех этапах жизненного цикла контейнерных приложений от разработки до эксплуатации. Для установки чарта необходимо ввести учетные данные пользователя для подключения к приватному репозиторию. В случае подключения с помощью зеркала нужно обновить URL репозитория.
В случае успешного подключения к репозиторию Kaspersky на вкладке "Доступные чарты" необходимо ввести "kcs" и выполнить проверку версии. В случае успешного поиска чарта будет предложена максимальная доступная версия чарта, и можно будет перейти к установке чарта. Откроется окно установки Kaspersky Container Security. Далее следует выбрать требуемую версию и провести установку.
Luntry
Luntry обеспечивает высокий уровень безопасности процессов, помогает создать инфраструктуру без "слепых зон" и наладить бесшовную коммуникацию между командами ИТ и ИБ даже в самых крупных проектах.
После успешного подключения репозитория на вкладке "Доступные чарты" для установки доступны чарты сервисов Luntry. Если подключение к репозиторию было завершено без установки сервисов, на вкладке "luntry" страницы "Доступные чарты" или в модальном окне управления продуктом партнера Luntry нужно выбрать и установить необходимые чарты сервисов (рисунок 521).

Рисунок 521 ‒ Вкладка "luntry"
Безопасность
Модуль анализа конфигураций приложений (Kyverno)
Модуль анализа конфигураций приложений на основе Kyverno предназначен для анализа ресурсов кластера на соответствие настроенным политикам.
Модуль поддерживает несколько типов политик:
- Generate ‒ Политика добавляет в создаваемый ресурс необходимые данные/конфигурации.
- Mutate ‒ Политика изменяет создаваемый ресурс.
- Validate ‒ Политика проверяет создаваемый ресурс.
С перечнем рекомендуемых политик для установки в кластер можно ознакомиться на странице "Политики безопасности" (п. Политики безопасности).
Для установки и настройки модуля в интерфейсе кластера Комплекса в боковом меню следует открыть раздел "Сервисы и репозитории" и перейти на страницу "Установленные сервисы".
Далее нужно найти модуль анализа конфигураций приложений. Если модуль не отображается, в боковом меню, необходимо открыть раздел "Сервисы и репозитории", перейти на страницу "Доступные чарты", найти чарт "shturval-policy-manager" и нажать Установить.
С дополнительной информацией можно ознакомиться на официальном сайте.
Модуль сканирования образов контейнеров (Trivy)
В этом разделе описывается настройка сканера уязвимостей Trivy.
Trivy ‒ это инструмент сканирования уязвимостей для контейнерных образов и файловой системы, используемый при разработке и эксплуатации приложений на платформе Docker. Он служит для обнаружения уязвимостей в зависимостях и пакетах, используемых в контейнерах.
В кластере Trivy обеспечивает автоматизированный процесс сканирования и формирования отчетности для своевременного обнаружения возможных уязвимостей:
- в образах контейнеров (подробнее ‒ на странице "Анализ образов" (п. Анализ образов)).
- в конфигурации кластера (подробнее ‒ на странице "Результаты сканирования" (п. Результаты сканирования)).
Для настройки сканера уязвимостей Trivy нужно в графическом интерфейсе кластера в боковом меню открыть раздел "Сервисы и репозитории", перейти на страницу "Установленные сервисы", найти "Модуль сканирования образов контейнеров" (shturval-scanner).
Если в кластере такой сервис отсутствует, необходимо в боковом меню открыть раздел "Сервисы и репозитории" и перейти на страницу "Доступные чарты", затем на вкладке "shturval" выбрать чарт shturval-scanner и нажать Установить.
Далее требуется выбрать необходимую версию чарта. После выбора версии чарта в правой части экрана отобразятся доступные "Параметры конфигурации для сервиса (values)". Следует прописать в блоке "Спецификация сервиса" необходимые параметры в качестве customvalues.
Перезапуск сканирования и хранение отчетов
По умолчанию сканирование перезапускается каждые 24 часа, период хранения отчета перед удалением ‒ 24 часа. Чтобы задать желаемый интервал для перезапуска сканирования и срока хранения отчета перед удалением, необходимо:
- подготовить манифест объекта ShturvalServicePatch (PatchSSC) для применения к спецификации (SSC) Модуля сканирования образов контейнеров (shturval-scanner) с требуемыми параметрами в customvalues, как в приведенном примере customvalues (описание параметров ‒ в таблице 75):
apiVersion: ops.shturval.tech/v1beta2
kind: ShturvalServicePatch
metadata:
name: <имя ресурса>
spec:
shturvalServiceConfigName: shturval-scanner
customvalues:
operator:
scanJobTTL: "<ваше значение параметра>"
scannerReportTTL: "<ваше значение параметра>"
- в графическом интерфейсе с помощью импорта манифеста загрузить в кластер подготовленный ShturvalServicePatch (рисунок 522):
- нажать на иконку импорта манифестов, расположенную слева от имени пользователя;
- загрузить файл с подготовленным манифестом ShturvalServicePatch для shturval-scanner или переместить манифест в открывшееся окно;
- выполнить проверку и нажать
Загрузить.

Рисунок 522 ‒ Использование импорта манифеста
После загрузки ShturvalServicePatch потребуется некоторое время для применения изменений.
ClusterComplianceReports
Отчеты ClusterComplianceReports могут быть сформированы в общем или расширенном формате. Чтобы информация о проверках была доступна в графическом интерфейсе Комплекса, в Trivy настроена детализация отчета reportType:all. Если в reportType указать summary, в графическом интерфейсе не будет отображаться информация по отчетам.
Для отчетов вида ClusterComplianceReports по умолчанию настроено сканирование раз в 6 часов. Чтобы изменить период сканирования, необходимо:
- подготовить манифест объекта ShturvalServicePatch (PatchSSC) для применения к спецификации (SSC) Модуля сканирования образов контейнеров (shturval-scanner), где в параметре cron указать период сканирования, как в приведенном примере (описание параметров customvalues ‒ в таблице 76):
apiVersion: ops.shturval.tech/v1beta2
kind: ShturvalServicePatch
metadata:
name: <имя ресурса>
spec:
shturvalServiceConfigName: shturval-scanner
customvalues:
compliance:
cron: <ваше значение параметра>
- в графическом интерфейсе с помощью импорта манифеста загрузить в кластер подготовленный ShturvalServicePatch.
После загрузки ShturvalServicePatch потребуется некоторое время для применения изменений.
Настройка сканирования из локального репозитория
Для настройки сканирования образов из локального репозитория в случае использования SSL сертификата, выпущенного непубличным УЦ, например, корпоративным или самоподписным, необходимо:
- подготовить манифест объекта ShturvalServicePatch (PatchSSC) для применения к спецификации (SSC) Модуля сканирования образов контейнеров (shturval-scanner), где задать в параметре nameOfRegistry имя репозитория, как в приведенном примере (описание параметров customvalues ‒ в таблице 77):
apiVersion: ops.shturval.tech/v1beta2
kind: ShturvalServicePatch
metadata:
name: <имя ресурса>
spec:
shturvalServiceConfigName: shturval-scanner
customvalues:
trivy:
insecureRegistries:
nameOfRegistry: <ваше значение параметра>
- в графическом интерфейсе с помощью импорта манифеста загрузить в кластер подготовленный ShturvalServicePatch.
После загрузки ShturvalServicePatch потребуется некоторое время для применения изменений.
С дополнительной информацией можно ознакомиться на сайте Trivy и сайте Trivy Operator.
Модуль управления TLS-сертификатами (Cert Manager)
Модуль управления TLS-сертификатами является контроллером сертификатов TLS (Transport Layer Security) приложений и компонентов в кластере Комплекса. В основе модуля используется Cert Manager. Модуль обеспечивает:
- создание и обновление сертификатов;
- продление сертификатов до истечения срока их действия;
- отзыв сертификатов.
Модуль является критически важным сервисом для работы Комплекса (недоступен для отключения), устанавливается по умолчанию в кластер управления и клиентские кластеры.
Для просмотра состояния сервиса в кластере нужно перейти на страницу "Установленные сервисы" раздела "Сервисы и репозитории", найти "Модуль управления TLS-сертификатами" (shturval-cert-manager) и нажать Управлять.
Для корректной работы сервиса в кластере должен быть установлен и включен "Компонент создания ресурсов для модуля управления TLS-сертификатами" (shturval-cert-manager-crds).
Для отслеживания сроков действия сертификатов API Kubernetes в Комплексе поставляется "Модуль проверки сертификатов" (п. Группа x509-certificate-exporter.rules).
Модуль проверки сертификатов API Kubernetes (X.509 Certificate Exporter)
Компоненты Kubernetes используют множество сертификатов для аутентификации и безопасной защиты взаимодействия друг с другом. Истекающие сертификаты Kubernetes являются распространенным источником сбоев.
Модуль проверки сертификатов API Kubernetes на основе X.509 Certificate Exporter обеспечивает мониторинг сроков действий сертификатов (секретов) в кластере Kubernetes и на узлах кластера. Модуль контролирует сертификаты:
- ETCD сервера и клиента;
- Kubernetes CA;
- kube-apiserver;
- kubelet;
- файлы kubeconfig, которые используются различными компонентами для аутентификации на сервере API;
- PEM-файлы.
Модуль не является критически важным сервисом для работы Комплекса.
Мониторинг сроков действия сертификатов
Данные о сроках действия сертификатов направляются в качестве метрик в Компонент управления модуля мониторинга (VM Agent). На основании метрик:
- В графическом интерфейсе Комплекса доступен просмотр сроков действий сертификатов в кластере.
- В Grafana доступен дашборд мониторинга состояния сертификатов.
Модуль в графическом интерфейсе
Для управления сервисом в кластере нужно перейти на страницу "Установленные сервисы" раздела "Сервисы и репозитории", найти Модуль проверки сертификатов API Kubernetes (shturval-cert-expiration) и нажать Управлять.
Если в кластере такой сервис отсутствует, следует перейти на страницу "Доступные чарты" раздела "Сервисы и репозитории", на вкладке "shturval" выбрать чарт shturval-cert-expiration и нажать Установить.
Далее требуется выбрать необходимую версию чарта. После выбора версии чарта в правой части экрана отобразятся доступные "Параметры конфигурации для сервиса" (values). При необходимости можно прописать в блоке "Спецификация сервиса" параметры в качестве customvalues.
Для корректной работы сервиса в кластере должен быть установлен и включен Компонент модуля локального сбора метрик (shturval-monitoring-crds).
Модуль доставки корневых сертификатов (Trust Manager)
Модуль доставки корневых сертификатов основан на Trust Manager. Он позволяет управлять и распространять цепочки доверенных сертификатов удостоверяющего центра (Certificate Authority, CA). Доверенные сертификаты необходимы для проверки подлинности сертификатов при установлении TLS-соединения. Trust Manager расширяет функциональность Cert Manager и используется в дополнение к модулю Модуль управления TLS-сертификатами.
Модуль доставки корневых сертификатов является критически важным сервисом для работы РОСА Кубис (недоступен для отключения). Устанавливается по умолчанию в кластер управления и клиентские кластеры.
Для просмотра состояния сервиса в кластере нужно перейти на страницу "Установленные сервисы" раздела "Сервисы и репозитории", найти Модуль доставки корневых сертификатов (shturval-trust-manager) и нажать Управлять.
Для корректной работы сервиса в кластере должны быть установлены и включены:
- Модуль управления TLS-сертификатами (shturval-cert-manager).
- CRD модуля доставки корневых сертификатов (shturval-trust-manager-crds).