LCM — Управление жизненным циклом¶
Компонент LCM (Life Cycle Manager) предназначен для управления инсталляциями (экземплярами) KeyStack. LCM реализует следующие функции:
конфигурация регионов (инсталляции KeyStack) — хранение и управление;
предоставление доступа к конфигурационным файлам KeyStack, которые содержат общие настройки для всех регионов, отражающие лучшие практики внедрений OpenStack ITkey;
генерация паролей и SSL сертификатов для регионов;
установка операционной системы и конфигурация физических серверов для добавления в инсталляцию;
подготовка серверов к работе платформы KeyStack (bootstrap);
развертывание регионов KeyStack;
масштабирование регионов — добавление новых серверов с нужными ролями (control, compute, network);
добавление компонентов KeyStack в существующие регионы;
запуск автоматических тестов rally, tempest;
запуск кластера MariaDB после полной перезагрузки слоя управления регионом;
снятие резервных копий БД инсталляции OpenStack по расписанию;
снятие резервных копий компонентов LCM по расписанию;
управление логическим состоянием (наполнением) регионов: образы виртуальных машин (ВМ), типы виртуальных машин, проекты, сети, агрегаты вычислительных узлов;
обновление компонентов инсталляций.
Все вышеперечисленные функции реализованы на базе программного продукта GitLab. GitLab — это платформа, которая предоставляет интегрированную среду для управления репозиториями исходного кода, CI/CD (Continuous Integration/Continuous Deployment) процессов, мониторинга, управления задачами и другими аспектами жизненного цикла программного обеспечения. Преимуществом использованием данного продукта является ускорение процесса с минимальным вмешательством пользователей.
Инструкция по установке LCM находится в разделе Установка KeyStack LCM.
Настройки безопасности в GitLab¶
GitLab предоставляет набор настроек безопасности, которые помогают защищать исходный код, данные пользователей и инфраструктуру. Эти настройки включают защиту на уровне разработки, развертывания и контроля доступа.
Single Sign-On (SSO) — интеграция с внешними системами авторизации (LDAP, SAML, OAuth) для упрощения управления доступом и аудита изменений.
Двухфакторная аутентификация (2FA) — реализует дополнительный уровень защиты при входе за счёт использования одноразовых кодов или сертификатов.
IP-блокировки — ограничение доступа к платформе по IP-адресам или диапазонам для повышения контроля доступа.
Настройка тайм-аута сессии — позволяет настроить время бездействия пользователя в веб-интерфейсе до принудительного завершения сеанса.
Настройка тайм-аута сессии¶
Конфигурация продолжительности сеанса пользователя при отсутствии активности задаётся через параметр Session duration в Admin Area.
Чтобы установить значение продолжительности сеанса, необходимо:
Зайти в GitLab как пользователь с правами администратора (Admin).
Выбрать .
Установить значение для продолжительности сеанса в минутах.
Хранилище данных LCM¶
По умолчанию LCM использует встроенное хранилище: Rook-Ceph для multi-node и NFS CSI Driver для single-node. На этапе установки встроенное хранилище можно заменить сторонним CSI-драйвером — подробнее см. раздел Установка KeyStack LCM.
Сторонний CSI-драйвер должен соответствовать следующим требованиям:
Поддержка томов с режимами доступа ReadWriteMany (RWX) и ReadWriteOnce (RWO) и возможностью подключения томов с соседних узлов.
StorageClass стороннего CSI должен быть установлен как StorageClass по умолчанию в кластере.
При установке CSI-драйвера необходимо учитывать, что в k0s путь к данным kubelet — /var/lib/k0s/kubelet, а не стандартный /var/lib/kubelet.
Обратите внимание, что корректная работа компонентов LCM со сторонними CSI-драйверами не гарантируется — при возникновении проблем, связанных с использованием стороннего хранилища, рекомендуется обратиться к документации соответствующего CSI-драйвера.