Учетные записи и секреты платформы в Kubernetes#
При развертывании в кластере Kubernetes (Operator) секреты учетных записей платформы задаются объектами Kubernetes Secret, на которые ссылается ресурс Custom Resource AstraAutomation; оператор сверяет их с состоянием платформы. Состав и подготовка этих секретов при установке описаны в разделе Подготовка секретов. Ниже приведен перечень учетных записей и секретов платформы и порядок их смены на работающей установке.
Порядок управления секретами отличается от развертывания из Deb-пакетов на ВМ (там секреты задаются в inventory, а изменения применяются запуском aa-setup).
Общие требования к хранению секретов описаны в разделе Управление учетными данными и секретами.
Перечень учетных записей и секретов#
Учетная запись / секрет |
Назначение |
Где задается (поле CR → Secret, ключ) |
Инструмент для смены |
Доменные УЗ |
|---|---|---|---|---|
Пароль администратора веб-интерфейса ( |
Вход администратора в веб-интерфейс платформы |
|
CLI компонента (см. Особые случаи) |
Да |
Роли PostgreSQL (по компонентам) |
Сервисное подключение компонентов к базе данных |
|
Объект Secret |
Нет |
Ключи объектного хранилища S3 |
Доступ Automation Hub к объектному хранилищу артефактов |
|
Объект Secret |
— |
Для входа администраторов в веб-интерфейс Astra Automation поддерживает внешнюю аутентификацию через провайдеров идентификации (LDAP, SAML, OIDC и др.) — доменные учетные записи можно использовать наравне со встроенной admin (см. Методы аутентификации).
Сервисные роли PostgreSQL и ключи S3 — внутренние и внешнюю аутентификацию не используют.
Смена секретов#
Конфигурацию подов формирует оператор по данным из Kubernetes Secret и ресурса AstraAutomation, поэтому секреты изменяют через соответствующий объект Secret, а не правкой конфигурации внутри подов.
Порядок смены секрета:
Обновите значение в соответствующем Kubernetes Secret, например:
kubectl -n astra-automation create secret generic <name> ... --dry-run=client -o yaml | kubectl apply -f -
Дождитесь, пока оператор обнаружит изменения в ресурсе
AstraAutomation(или, если требуется указать другой объект Secret, измените сам ресурс).При необходимости перезапустите поды соответствующего компонента, чтобы новое значение было считано, например:
kubectl -n astra-automation rollout restart deployment/<CR_name>-gateway
Проверьте результат: вход в веб-интерфейс, состояние подов (
kubectl get pods), подключение к базе данных.
Формат каждого Secret приведен в разделе Подготовка секретов.
Особые случаи#
Пароль администратора.
Оператор создает учетную запись администратора только если она отсутствует, поэтому изменение admin_password_secret не меняет пароль уже существующего администратора.
Для смены пароля действующего администратора выполните команду в контейнере api соответствующего пода:
kubectl -n astra-automation exec deploy/<CR_name>-gateway -c api -- aap-gateway-manage update_password --username admin --password <new_password>
Роли PostgreSQL: встроенная и внешняя СУБД.
Тип СУБД определяется ключом type в объекте Secret базы данных (database_secret) — аналогично параметру config_dynamic_database при развертывании на виртуальных серверах:
type: managed— встроенная СУБД: PostgreSQL разворачивается и обслуживается оператором в кластере, объект Secret с параметрами подключения создается автоматически.type: unmanaged— внешняя СУБД: подключение к внешнему серверу PostgreSQL, которым вы управляете самостоятельно. Для смены пароля роли измените его на сервере базы данных (ALTER ROLE <role> WITH PASSWORD '<new_password>';), затем обновите ключpasswordв объекте Secret этой роли (database_secret).