Какой сервис чей? Ответ в одном месте.
Каталог сервисов держит в одной записи, что представляет собой каждый сервис, кто им владеет, от чего он зависит и куда развёрнут - и находит это в вашей кодовой базе автоматически.
Экраны работающей установки
Инвентарь собирается в три шага
Вам не нужно заполнять пустую таблицу вручную. AppArch выводит кандидатов из подключённых репозиториев, а вы их подтверждаете.
- 01
Обнаружение
Подключённые репозитории сканируются, появляются кандидаты. Вы просматриваете список и импортируете или отклоняете.
- 02
Назначение
Каждому сервису вы задаёте владельца, уровень критичности и стадию жизненного цикла. Бесхозных сервисов не остаётся.
- 03
Связывание
Добавляются зависимости, деплои, спецификация API и ссылки на документацию. Запись готова.
Что содержит запись о сервисе?
Свободный текст - не поле. У каждой записи одинаковые поля, поэтому инвентарь остаётся пригодным для поиска и сравнения.
Тип сервиса
Сервис, API, фронтенд, библиотека, воркер, инфраструктура или другое. Самый быстрый способ отфильтровать инвентарь.
Жизненный цикл
Экспериментальный, продакшн, устаревший или выведенный. Показывает, на какие сервисы можно полагаться.
Уровень критичности
Tier 1 критичен для бизнеса, сбой становится крупным инцидентом. Tier 3 - внутренние инструменты и эксперименты.
Владелец
У каждого сервиса есть владелец - разработчик или пользователь. Ответ на вопрос кто в этом разбирается хранится в записи.
Зависимости
Инфраструктура, которую приносит каждый сервис - PostgreSQL, Redis, Kafka, - выводится из ресурсов Kubernetes, о которых сообщает источник деплоев; ресурс, по которому она узнана, показывается как доказательство.
Деплои
После подключения Argo CD, Flux или Kubernetes в каталоге видно, какая версия где работает.
Спецификация API
Спецификация OpenAPI подключается из репозитория, по URL или вручную. Название, версия и число эндпоинтов попадают в запись.
Ссылки
Документация, runbook, дашборд, график дежурств, репозиторий и ссылки API лежат рядом с сервисом.
Gold, Silver, Bronze: чего не хватает сервису
Каждый сервис проверяется по одному списку. Проверка, которая к нему не относится, например спецификация API для библиотеки, исключается, а не засчитывается против.
- Gold100%
- Silver≥ 75%
- Bronze≥ 50%
- Без уровня< 50%
- Сканировался за последние 30 днейесли привязан проект
- Спецификация APIсервисы и API
- Развёрнуткроме библиотек
- Ссылка на дежурствотолько Tier 1
Откуда запись сервиса берёт данные
Владельца и ссылки заполняете вы. Всё остальное читается по расписанию и обновляется само.
- Argo CD · Flux · Kubernetes
Деплои
Каждые 10 минут: версия по окружениям, статус синхронизации, здоровье и базы, кэши и очереди, с которыми идёт сервис.
- openapi · swagger
Спецификация API
Находится в репозитории по имени (корень, docs, api, spec), берётся по URL или вставляется вручную. Обновляется ежечасно; неудачное обновление сохраняет последнюю рабочую копию.
- ArchScan
Связанный проект
Дата и оценка последнего сканирования проекта за сервисом.
- Заполняете вы
Владелец, уровень, жизненный цикл, ссылки на документацию, runbook, дашборд и дежурство.
Когда в каталог действительно заглядывают?
Инвентарь не самоцель. Он оправдывает себя в трёх ситуациях.
В команду приходит разработчик
Сколько сервисов, что делает каждый, к кому идти. Один список вместо недели устных объяснений.
Дежурный во время инцидента
Владелец, ссылка на runbook, уровень критичности и зависимости - на одном экране. Минуты, которые уходят на поиски, возвращаются.
Архитектурный обзор
Сколько экспериментальных сервисов проскользнуло в продакшен, у какого сервиса Tier 1 нет владельца, какой так и не дошёл до Gold. Вопросы опираются на данные.
Частые вопросы
Нужно ли заполнять каталог вручную?
Откуда берутся данные о деплоях?
Что показывают зависимости в каталоге?
В какие тарифы входит каталог?
Где хранятся наши данные?
Как это выглядит в продукте
Все скриншоты
Соберите инвентарь за один вечер
Подключите репозитории, подтвердите найденные сервисы, назначьте владельцев. Остальное поддерживает себя само.