Кейс Parqour: автоматизация и безопасность инфраструктуры

Рассказываем, как выстраивали высокую доступность, отказоустойчивость и безопасность платформы.

О клиенте

Parqour — инновационная платформа с технологическими решениями для управления парковками. Поскольку сервис обрабатывает большое количество транзакций и взаимодействует с клиентами в реальном времени, ему необходима высокая доступность, отказоустойчивость и безопасность.

Точка «А»

До начала работы с нашей командой инфраструктура Parqour использовала локальные учетные записи пользователей и испытывала трудности с управлением доступом, хранением логов, мониторингом и обеспечением отказоустойчивости. Команда также хотела управлять развертыванием приложения и хранить секреты централизованно.

Решение

1. Внедрение FreeIPA


Ранее в Parqour использовались локальные учетные записи на каждом сервере, что усложняло управление. FreeIPA позволил централизовать управление пользователями, обеспечив безопасную аутентификацию и авторизацию. Теперь пользователи могут входить на любую машину с одной учетной записью, что повышает удобство и безопасность.


2. Миграция Prometheus TSDB в Grafana Mimir


Компания сталкивалась с проблемами масштабируемости и долгосрочного хранения в Prometheus TSDB. Мы внедрили Grafana Mimir, которая обеспечила отказоустойчивое и горизонтально масштабируемое хранилище временных рядов. Также мы улучшили работу с метриками и долгосрочным мониторингом.


3. Автоматизация настройки объектов через Ansible


Теперь все объекты инфраструктуры настраиваются через Ansible playbooks. Кроме того, исключены ручные ошибки при конфигурировании и гарантирована простота и воспроизводимость развертываний.


4. Бэкапирование кластеров Kubernetes


Реализовали резервное копирование всех данных в Kubernetes и гарантировали возможность восстановления данных в случае сбоев.


5. Настройка Sentry


Внедрили систему мониторинга ошибок и производительности Sentry, чтобы оперативно выявлять и устранять ошибки в коде. Также она интегрирована с Telegram для мгновенного оповещения разработчиков.


6. Настройка системы трассировки Grafana Tempo


Для распределенной трассировки запросов в микросервисной архитектуре настроили Grafana Tempo с объектным хранилищем (S3, MinIO) для эффективного хранения трассировок. Кроме того, поддержка OpenTelemetry и интеграция с Prometheus и Loki улучшают анализ работы сервисов.


7. Внедрение HashiCorp Vault и интеграция с ArgoCD


Настроили защиту секретов, паролей и API-ключей с помощью HashiCorp Vault. Также интегрировали ArgoCD. Эти решения помогают безопасно управлять развертыванием приложений в Kubernetes, исключая утечку конфиденциальных данных.


8. Внедрение Grafana Loki


Обеспечили эффективное хранение логов с минимальными затратами на инфраструктуру. Loki не требует индексации, что снижает нагрузку на систему и упрощает управление логами. Интегрировали решение с Kubernetes и Prometheus ради полного покрытие мониторинга.


9. Настройка репликации MySQL


Для повышения отказоустойчивости реализовали схему master-slave. Также теперь есть поддержка автоматического failover в случае отказа основного сервера. А масштабируемость достигается за счет балансировки нагрузки между репликами. Плюс добавили возможность развертывания в разных регионах для повышения доступности.


10. Автодискавери таргетов для Prometheus + Consul


Реализовали автоматический поиск новых целей для мониторинга без ручного обновления конфигураций. Consul используется как сервисный реестр, позволяя Prometheus автоматически отслеживать новые сервисы в кластере.

Результат

  • Улучшенная безопасность: централизованное управление учетными записями через FreeIPA и безопасное хранение секретов с Vault.
  • Повышенная отказоустойчивость: масштабируемая архитектура Grafana Mimir, репликация MySQL и бэкапирование кластеров Kubernetes.
  • Оптимизированная поддержка и мониторинг: автоматизированное развертывание с Ansible, трассировка запросов через Tempo и мониторинг ошибок с Sentry.
  • Снижение времени на управление инфраструктурой: автодискавери сервисов в Prometheus + Consul и автоматическая настройка объектов.

Благодаря внедрению современных DevOps-решений и автоматизации процессов, Parqour получила надежную, отказоустойчивую и безопасную IT-инфраструктуру. Это позволило повысить стабильность работы платформы, упростить поддержку и масштабирование, а также снизить затраты на управление системой.

Cтек технологий

  • FreeIPA: централизованное управление пользователями
  • Grafana Mimir: масштабируемое хранилище временных рядов
  • Ansible: автоматизация конфигураций и развертывания
  • Kubernetes: кластерная оркестрация, резервное копирование данных
  • Sentry: мониторинг ошибок и производительности
  • Grafana Tempo: трассировка запросов
  • HashiCorp Vault: безопасное управление секретами
  • ArgoCD: автоматизация развертывания приложений
  • Grafana Loki: хранение и анализ логов
  • MySQL (master-slave репликация): отказоустойчивость и масштабируемость базы данных
  • Consul: сервисный реестр и автодискавери целей для Prometheus

Поможем в решении DevOps-задач

Если и у вас есть задача для нас — обращайтесь. Можем начать с аудита инфраструктуры и после этого перейти к полноценному проекту.

Заказать аудит