DevOps

Ускоряем разработку

Внедряем процессы и инструменты для быстрой и надежной разработки и доставки приложений

Зачем нужны частые релизы

В современном динамичном мире частота релизов прямо сказывается на прибыльности компании. Быстрые изменения в угоду трендам позволят удержать рынок и привлечь новых пользователей. Все мы помним бум софта для видеоконференций в пандемийный период и скорость добавления новых функций в них. Для измерения частоты и надежности выпуска релизы даже придуманы специальные метрики - DORA

Как этого достичь

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

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

Избавиться от ошибок позволяет тестирование продукта. Тесты рекомендуется проводить на самых ранних этапах. Ведь чем раньше обнаружена ошибка, тем меньше процессов она затронет и её исправление будет дешевле.

На этом этапе мы применяем следующие инструменты:

  • GitLab CI
  • Github
  • ArgoCD
  • Harbor

Безопасность

Ни один современный программный продукт не является продуктом “в себе”. Всегда используются сторонние библиотеки, которые используют другие библиотеки и сервисы. Даже идеальная команда, производящая идеальный безопасный код, не может гарантировать безопасный код конечного продукта, так как невозможно доверять сторонним библиотекам. Нашумевшие взломы и намеренно испорченный функционал популярных библиотек в 2022 доказали это.

Внедрение проверок безопасности на ранних этапах разработки снижает риски бизнеса, а непрерывный мониторинг систем позволяет своевременно детектировать и изолировать нелегитимные действия.

Инструменты:

  • Trivy
  • Trufflehog
  • DefectDojo
  • подпись обьразов
  • Kyverno

Мониторинг

Комплексный мониторинг продукта и инфраструктуры позволяет иденитфицировать проблемы и приступить к их исправлению до того, как они приведут к проблемам бизнеса

Инструменты:

  • VictoriaMetrics
  • Prometheus
  • Grafana
  • Loki
  • Jaeger
  • Fluenbit
  • ElasticSearch
  • Kibana
  • Logstash