Configuration of Services
После развёртки всех сервисов необходимо выполнить первоначальную настройку каждого из них. В этом разделе описана настройка основных сервисов.
Vault
Vault уже настроен на этапе развёртки базовой инфраструктуры (см. Развёртка базовой инфраструктуры).
Дополнительная настройка
Configuration политик доступа
После базовой настройки можно создать дополнительные политики для более гранулярного контроля доступа:
kubectl exec -n service deployment/vault -- vault policy write <policy-name> - <<EOF
path "secret/data/<service>/*" {
capabilities = ["read", "list"]
}
EOF
Интеграция с Kubernetes
Интеграция с Kubernetes уже настроена скриптом vault-setup.sh. Дополнительные настройки можно выполнить через веб-интерфейс или CLI.
Authentik
Authentik - SSO решение для единого входа во все сервисы.
Первоначальный вход
-
Откройте веб-интерфейс Authentik:
https://authentik.local -
Войдите используя bootstrap токен (если это первый запуск):
- Токен находится в секретах (
authentikBootstrapToken)
- Токен находится в секретах (
-
Создайте административный аккаунт:
- Email: укажите ваш email
- Пароль: создайте надёжный пароль
- Сохраните учётные данные
Configuration источников пользователей
- Navigate to раздел "Directory" → "Users"
- Создайте пользователей вручную или настройте LDAP/Active Directory
- Настройте группы пользователей
Configuration провайдеров
OAuth2/OIDC провайдер
- Navigate to "Applications" → "Providers"
- Создайте новый OAuth2/OIDC Provider:
- Name: название провайдера
- Authorization flow: выберите flow
- Client ID и Client Secret: сгенерируйте автоматически
SAML провайдер
- Создайте SAML Provider:
- Настройте Entity ID
- Укажите Service Provider binding
- Настройте атрибуты
Интеграция с другими сервисами
Настройте интеграцию Authentik с:
- GitLab (через OAuth2)
- YouTrack (через SAML)
- Grafana (через OAuth2)
- И другими сервисами
Для каждого сервиса:
- Создайте Provider в Authentik
- Создайте Application в Authentik
- Настройте сервис для использования Authentik (см. документацию конкретного сервиса)
Vaultwarden
Vaultwarden - self-hosted сервер для Bitwarden.
Первый вход
-
Откройте веб-интерфейс:
https://vaultwarden.local -
Зарегистрируйте первого пользователя:
- Нажмите "Create account"
- Заполните форму регистрации
- Создайте мастер-пароль
Регистрация пользователей
По умолчанию регистрация открыта. Для её отключения:
-
Откройте административную панель:
https://vaultwarden.local/admin -
Войдите используя admin token (из секретов)
-
Отключите регистрацию:
- Settings → General → Signups allowed: Off
Configuration административной панели
- Войдите в админ панель (
/admin) - Используйте admin token из секретов
- Настройте:
- Email уведомления
- Приглашения пользователей
- Политики безопасности
Configuration email уведомлений
В секретах настройте:
vaultwardenEmail- email для отправки- SMTP настройки (через Authentik или внешний SMTP)
Использование через клиент
- Скачайте клиент Bitwarden (Desktop, Mobile, Browser extension)
- В настройках сервера укажите:
Server URL: https://vaultwarden.local - Войдите используя созданный аккаунт
YouTrack
YouTrack - система управления проектами от JetBrains.
Первый запуск
-
Откройте веб-интерфейс:
https://youtrack.local -
Дождитесь завершения инициализации (может занять несколько минут)
-
Войдите с учётными данными:
- По умолчанию:
admin/admin - Смените пароль при первом входе
- По умолчанию:
Интеграция с JetBrains Hub
- Настройте JetBrains Hub (см. раздел Hub)
- В YouTrack перейдите в Settings → Hub
- Укажите URL Hub сервера:
https://hub.local - Выполните подключение
Configuration проектов
-
Создайте первый проект:
- Projects → Create Project
- Выберите шаблон проекта
- Настройте поля и workflow
-
Настройте интеграции:
- Git (GitLab, GitHub)
- CI/CD (TeamCity)
- Другие сервисы
Configuration интеграции с GitLab
- В GitLab создайте Personal Access Token
- В YouTrack: Settings → Integrations → GitLab
- Укажите URL GitLab и токен
- Настройте синхронизацию коммитов и issues
TeamCity
TeamCity - CI/CD сервер от JetBrains.
Первая настройка
-
Откройте веб-интерфейс:
https://teamcity.local -
Примите лицензионное соглашение
-
Настройте базу данных:
- Используется внешний PostgreSQL (уже настроен)
- TeamCity автоматически подключится к базе
-
Создайте административный аккаунт
Подключение к базе данных
База данных уже настроена в values.yaml. Check подключение:
kubectl exec -n code deployment/teamcity-server -- psql -h postgresql.db.svc.cluster.local -U teamcity -d teamcity -c "SELECT 1"
Configuration build агентов
- Navigate to Administration → Agents
- Build агенты автоматически подключаются (если включены в конфигурации)
- Авторизуйте агентов для работы
- Check статус: Agents должны быть "Authorized" и "Connected"
Интеграция с GitLab
- В GitLab создайте Personal Access Token
- В TeamCity: Administration → Integrations → GitLab
- Настройте подключение:
- GitLab URL:
https://gitlab.local - Personal Access Token: токен из GitLab
- GitLab URL:
- Создайте проект, подключённый к GitLab репозиторию
GitLab
GitLab - система контроля версий и CI/CD.
Первый вход
-
Откройте веб-интерфейс:
https://gitlab.local -
Войдите с root пользователем:
- Username:
root - Пароль: находится в секретах (
gitlabTokenили установите через консоль)
- Username:
-
Смените пароль при первом входе
Configuration SSH ключей
-
Сгенерируйте SSH ключ (если ещё нет):
ssh-keygen -t ed25519 -C "your_email@example.com" -
Скопируйте публичный ключ:
cat ~/.ssh/id_ed25519.pub -
В GitLab: User Settings → SSH Keys
-
Вставьте публичный ключ и сохраните
Configuration CI/CD
- Создайте первый проект
- Добавьте
.gitlab-ci.ymlв репозиторий - Настройте GitLab Runner (если используется)
Интеграция с внешними сервисами
Настройте интеграцию с:
- YouTrack (для связи issues)
- TeamCity (для CI/CD)
- Authentik (для SSO)
Notesnook
Notesnook - система для ведения заметок.
Verification MongoDB replica set
Перед использованием убедитесь, что MongoDB replica set настроен:
kubectl exec -it -n db deployment/mongodb -- mongosh --eval "rs.status()"
Если replica set не настроен, инициализируйте его:
kubectl exec -it -n db deployment/mongodb -- mongosh --eval "rs.initiate()"
Configuration MinIO buckets
-
Check доступность MinIO:
kubectl get ingress -n db -l app=minio -
Войдите в MinIO консоль (обычно
minio.local) -
Создайте bucket для Notesnook:
- Bucket name:
notesnookилиattachments - Настройте права доступа
- Bucket name:
Первый вход через клиент
- Скачайте клиент Notesnook (Desktop, Mobile, Web)
- В настройках укажите сервер:
Server URL: https://notesnook.local
Identity Server: https://identity.notesnook.local - Создайте аккаунт
- Начните синхронизацию заметок
Stoat
Stoat (ранее Revolt) - чат-сервер.
Первый запуск
-
Откройте веб-интерфейс:
https://stoat.local -
Зарегистрируйте первого пользователя (администратора)
-
Создайте первый сервер
Configuration серверов
- В интерфейсе создайте сервер
- Пригласите пользователей
- Настройте каналы и роли
- Настройте интеграции (боты, вебхуки)
Stalwart
Stalwart - почтовый сервер.
Configuration домена
- В настройках Stalwart укажите ваш домен:
Domain: mail.yourdomain.com
Configuration DNS записей
Настройте следующие DNS записи для вашего домена:
MX запись:
yourdomain.com. MX 10 mail.yourdomain.com.
A запись для mail:
mail.yourdomain.com. A YOUR_VPS_IP
SPF запись:
yourdomain.com. TXT "v=spf1 mx a ip4:YOUR_VPS_IP ~all"
DKIM запись: Получите DKIM ключ из Stalwart и добавьте TXT запись:
default._domainkey.yourdomain.com. TXT "v=DKIM1; k=rsa; p=..."
DMARC запись:
_dmarc.yourdomain.com. TXT "v=DMARC1; p=quarantine; rua=mailto:dmarc@yourdomain.com"
Интеграция с Authentik
- В Authentik создайте LDAP провайдер
- В Stalwart настройте подключение к LDAP:
- LDAP Server:
authentik.service.svc.cluster.local - Port: 389 (или 636 для LDAPS)
- Base DN: настройте согласно Authentik
- LDAP Server:
Glance
Glance - централизованный дашборд.
Configuration виджетов
-
Откройте веб-интерфейс:
https://glance.local -
Войдите (если требуется авторизация)
-
Добавьте виджеты:
- Перетащите виджеты на дашборд
- Настройте размер и позицию
Добавление ссылок на сервисы
- Добавьте новый виджет "Ссылки"
- Добавьте ссылки на все ваши сервисы:
- GitLab:
https://gitlab.local - YouTrack:
https://youtrack.local - Grafana:
https://grafana.local - И другие
- GitLab:
Кастомизация
- Настройте тему (цвета, фон)
- Добавьте свои виджеты
- Настройте layout (сетку, размеры)
Monitoring (Grafana)
Grafana - система визуализации метрик.
Первый вход
-
Откройте веб-интерфейс:
https://grafana.local -
Войдите с учётными данными:
- Username:
admin - Password: из секретов (
grafanaPassword)
- Username:
-
Смените пароль при первом входе
Configuration дашбордов
-
Импортируйте готовые дашборды:
- Dashboard → Import
- Выберите из библиотеки или импортируйте JSON
-
Создайте свои дашборды:
- Dashboard → New Dashboard
- Добавьте панели (графики, таблицы, статистика)
Configuration алертов
-
Создайте каналы уведомлений:
- Alerting → Notification channels
- Настройте email, Slack, и другие каналы
-
Создайте правила алертов:
- Alerting → Alert rules
- Настройте условия и уведомления
Подключение к Prometheus
Grafana автоматически подключается к Prometheus. Check:
- Configuration → Data Sources
- Make sure, что Prometheus добавлен
- URL:
http://prometheus.service.svc.cluster.local:9090
Harbor
Harbor - container registry.
Первый вход
-
Откройте веб-интерфейс:
https://harbor.local -
Войдите с учётными данными:
- Username:
admin - Password: из секретов
- Username:
-
Смените пароль при первом входе
Configuration проектов
-
Создайте проект:
- Projects → New Project
- Настройте права доступа
-
Настройте репликацию (если нужно)
Интеграция с CI/CD
- Настройте Robot Accounts для автоматизации
- Используйте credentials в CI/CD пайплайнах:
# GitLab CI пример
docker login harbor.local -u robot-account -p token
Bytebase
Bytebase - система управления схемами баз данных.
Первый вход
-
Откройте веб-интерфейс:
https://bytebase.local -
Создайте административный аккаунт
Подключение баз данных
- Environments → Add Environment
- Instances → Add Instance
- Подключите базы данных:
- PostgreSQL:
postgresql.db.svc.cluster.local:5432 - Укажите учётные данные
- Check подключение
- PostgreSQL:
Configuration проектов
- Projects → New Project
- Настройте схему базы данных
- Создайте миграции
- Настройте синхронизацию с Git
Резюме настройки
После настройки всех сервисов:
- Make sure, что все сервисы доступны через их домены
- Check интеграции между сервисами
- Настройте мониторинг и алерты
- Создайте резервные копии критических данных
- Настройте автоматические обновления (если требуется)
Next Steps
После завершения настройки всех сервисов:
- Проверка и мониторинг - проверка работоспособности всей системы