Жизненный цикл сервиса в инфраструктуре SafeBlock¶
Мотивация¶
Данный документ вызван необходимостью выравнять ожидание участников команды по эксплуатации, а также описать процесс ввода в эксплуатацию новых приложений для обеспечения требуемого кровня качества надежности (reliability) и наблюдаемости (observailty).
Этапы жизненного цикла сервиса/приложения¶
- Разработка.
- Ввод в эксплуатацию.
- Эксплуатация.
- Вывод из эксплуатации.
1. Разработка¶
TBD
2. Ввод в эксплуатацию¶
Процессы:
- Создание паспорта сервиса который включает:
- Формирование требований сервиса по ресурсам, коннектам к базам, выходам наружу.
- Проверка сервиса на соответствие требованием Reability & Observability
- Формирование SLA
- Выявление целевой критичности
- Формирование требований по backup/репликации/РФ
- Описание процесса тестирования, конфигурация на стади ввода
- Формирование особых критериев приемки сервиса
- Формирование метрик (список) и критерии алертинга
- Оценка рисков
- Формирование ожиданий по нагрузке
- Создание нагрузочных скриптов
- Описание требований к HA и масштабированию
- Создание приемочных тестов
- Инфраструктурные изменения:
- создание helm charts (при необходимости)
- Проставлены nodeAffinity со значением worker, пример (позволяет планировать Поды на подходящие для этого воркер-ноды);
- Проставлены podAntiAffinity(Повышает отказоустойчивость приложения за счет развертывания экземпляров приложения на разных Нодах);
- Проставлены требование по ресурсам
- Создать helm test
- Cоздание release-ного файла и файла с переменными окружения.
- Учет connection pool к базам данных
- Добавление секретов и настроек
- Раскатка
- Изменений конфигурации стенда
production - Deploy на
stage1 - Тестирование на
stage1 - Деплой на
production - Настройка сбора метрик, дашборда и алертов
- Тестирование и приёмка.
- Проверка алертинга
- Нагрузочное тестирование
- Приемочные тесты
- Ссылки на дашборды метрик, алерты и логи сохраняются в паспорт сервиса.
Критичность сервиса на этой стадии: Не выше OP (другими словами как получится)
3. Эксплуатация¶
TBD
Процессы:
- Контроль бакапов.
- Тюнинг алертов и ресурсной политики
Критичность сервиса на этой стадии: Целевая
4. Вывод из эксплуатации¶
TBD
Критичность сервиса на этой стадии: Целевая
Приложения¶
Оценка нагрузки Postgesql при вводе сервиса в эксплуатацию¶
| Приложение | Частота запросов на insert | Частота запросов на update | Частота запросов на select | Трафик на запись (Mb) | Трафик на чтение (Mb) |
|---|---|---|---|---|---|
| blockberry | |||||
| archiver |