2.5 KiB
2.5 KiB
DevOps — Основы (one-screen)
1) Идея
DevOps — подход/культура и набор практик, которые сближают разработку и эксплуатацию (и всё чаще безопасность) так, чтобы:
- быстрее доставлять изменения,
- стабильнее держать прод,
- повышать качество (через автоматизацию и обратную связь).
Ключ не в “должности DevOps”, а в сквозном процессе от коммита до продакшна.
2) Что обычно входит
IaC (Infrastructure as Code)
Инфраструктура описывается конфигами/кодом (декларативно), что даёт:
- повторяемость, версионирование, review,
- быстрое развёртывание и откат,
- стандартизацию. Инструменты: Terraform (infra), Ansible (config mgmt).
CI/CD
Автоматизация сборки/тестов/деплоя:
- CI: сборка + тесты на каждый change,
- CD: доставка/развёртывание (часто через пайплайн, окружения, approvals).
Containers & Orchestration
- контейнеризация: Docker/Podman (упаковка приложения + зависимости),
- оркестрация: Kubernetes/Swarm/Nomad (распределённый запуск, scaling, self-healing).
Observability
Мониторинг/логи/трейсинг:
- метрики (Prometheus),
- логи (Loki/ELK),
- визуализация (Grafana),
- трассировка (OpenTelemetry).
3) Цели/метрики (практический смысл)
Часто ориентируются на DORA-метрики:
- частота деплоев,
- lead time изменений,
- время восстановления (MTTR),
- change failure rate.
4) Типичный toolchain (пример)
Git → CI (GitLab CI/Jenkins) → Docker image → registry → deploy (K8s) → monitoring/logging.
5) Анти-паттерны
- “DevOps = один человек, который чинит всё”
- ручные деплои без воспроизводимости
- отсутствие наблюдаемости (непонятно, что сломалось)
Source: 01 Library/02 DevOps/DevOps - основы