116 статей для Middle DevOps-инженера: большая подборка
Материалы для самостоятельного DevOps-инженера: Kubernetes, production-пайплайны, Infrastructure as Code, наблюдаемость, DevSecOps, базы данных и работа с инцидентами.
Kubernetes
- Kubernetes Networking: сервисы, Ingress и Network Policies
Чтобы управлять контейнерами и масштабированием.
- Обзор Helm Dashboard — графического интерфейса для управления Helm-релизами в Kubernetes
Чтобы управлять контейнерами и масштабированием.
- Даже не влезайте в Kubernetes без этого
Чтобы управлять контейнерами и масштабированием.
- Чтобы понять Kubernetes, я написал свой Kubernetes
Чтобы управлять контейнерами и масштабированием.
- Делим неделимое в Kubernetes: шеринг GPU с помощью MIG и TimeSlicing
Чтобы управлять контейнерами и масштабированием.
- 3-way merge в werf: деплой в Kubernetes с Helm «на стероидах»
Чтобы управлять контейнерами и масштабированием.
- Задаём порядок деплоя ресурсов в Kubernetes с помощью werf/Helm
Чтобы управлять контейнерами и масштабированием.
- Kubernetes просто, часть 5: зачем нужен Ingress и как маршрутизировать HTTP‑трафик
Чтобы управлять контейнерами и масштабированием.
- Создание пакетов для Kubernetes с Helm: структура чарта и шаблонизация
Чтобы управлять контейнерами и масштабированием.
- Может ли Service сломать ваш K8s кластер?
Чтобы управлять контейнерами и масштабированием.
- Пакетный менеджер для Kubernetes — Helm: прошлое, настоящее, будущее
Чтобы управлять контейнерами и масштабированием.
- Kubernetes tips & tricks: перевод работающих в кластере ресурсов под управление Helm 2
Чтобы управлять контейнерами и масштабированием.
- Практическое знакомство с пакетным менеджером для Kubernetes — Helm
Чтобы управлять контейнерами и масштабированием.
CI/CD-пайплайны
- GitLab CI/CD components: повторно используемый CI как путь к чистому и здоровому GitLab
Чтобы автоматизировать проверки и выпуск изменений.
- Битва Jenkins и GitLab CI/CD
Чтобы автоматизировать проверки и выпуск изменений.
- Круги ада с GitHub Actions (строим CI/CD pipeline для Java-проекта)
Чтобы контролировать изменения и работать в команде.
- CI/CD на GitHub Actions и GitLab CI для самых маленьких. Часть 1
Чтобы контролировать изменения и работать в команде.
- Как допилить GitLab CI/CD и перестать переписывать пайплайны
Чтобы автоматизировать проверки и выпуск изменений.
- Continuous Monitoring – автоматизация проверок качества ПО в CI/CD Pipeline
Чтобы автоматизировать проверки и выпуск изменений.
- Jenkins и Gitlab CI/CD: что выбрать
Чтобы автоматизировать проверки и выпуск изменений.
- Ультимативный гайд по созданию CI/CD в GitLab с автодеплоем в Kubernetes на голом железе всего за 514$ в год ( ͡° ͜ʖ ͡°)
Чтобы автоматизировать проверки и выпуск изменений.
- Запуск werf в GitLab CI/CD без Docker-сервера
Чтобы одинаково запускать приложение в любой среде.
- Кэш-монтирование или Cache mount в Docker. Использование кэш-монтирования в GitLab CI/CD
Чтобы одинаково запускать приложение в любой среде.
- Какой CI/CD-инструмент выбрать — Jenkins или GitLab?
Чтобы автоматизировать проверки и выпуск изменений.
- Ansible-pull и GitLab CI/CD: когда лучше тянуть, чем толкать
Чтобы автоматизировать проверки и выпуск изменений.
- PVS-Studio идёт в облака: GitLab CI/CD
Чтобы автоматизировать проверки и выпуск изменений.
Terraform и Infrastructure as Code
- Используем Terraformer для адаптации действующей инфраструктуры в AWS для деплоев с Terraform
Чтобы описывать инфраструктуру кодом и повторять развёртывание.
- IaC в разрозненной среде: сравнение Terraform и Pulumi
Чтобы описывать инфраструктуру кодом и повторять развёртывание.
- Как поднять n8n-сервер для автоматизации бизнес-процессов? Deep dive into Terraform
Чтобы описывать инфраструктуру кодом и повторять развёртывание.
- Terraform уже не тот? Как Pulumi меняет правила игры в Infrastructure as Code
Чтобы описывать инфраструктуру кодом и повторять развёртывание.
- Основы работы с Terraform в Selectel на примере Managed Kubernetes
Чтобы описывать инфраструктуру кодом и повторять развёртывание.
- Иллюзия IaC: почему Terraform не знает, что происходит с вашей инфраструктурой
Чтобы описывать инфраструктуру кодом и повторять развёртывание.
- С нуля до Junior DevOps в 2026 году. Часть 6.1. Terraform: Infrastructure as Code и создание инфраструктуры
Чтобы описывать инфраструктуру кодом и повторять развёртывание.
- Infrastructure as Code: философия и лучшие практики IaC
Чтобы описывать инфраструктуру кодом и повторять развёртывание.
- Управление инфраструктурой с помощью terragrunt (terraform) и gitlab ci
Чтобы описывать инфраструктуру кодом и повторять развёртывание.
- Infrastructure as Code на практике: как мы рефакторили сложный Ansible-репозиторий
Чтобы описывать инфраструктуру кодом и повторять развёртывание.
- Terraform 12 и Terragrunt и как это можно применять для Multi-Cloud-инфраструктуры. Александр Довнар
Чтобы описывать инфраструктуру кодом и повторять развёртывание.
- AWS Meetup Terraform & Terragrunt. Антон Бабенко (2020)
Чтобы описывать инфраструктуру кодом и повторять развёртывание.
- Миграция с Terraform на Terragrunt
Чтобы описывать инфраструктуру кодом и повторять развёртывание.
Управление конфигурациями
- Vault8s: доставляем секреты из HashiCorp Vault в Kubernetes
Чтобы автоматически настраивать серверы.
- Даёшь самоуправление! Управляем конфигурацией HashiСorp Vault изнутри, опираясь на Git и кворум подписей
Чтобы контролировать изменения и работать в команде.
- Ansible Inventory: полное руководство от localhost до AWS
Чтобы автоматически настраивать серверы.
- Как мы законтрибьютили целую строчку в HashiCorp Vault
Чтобы автоматически настраивать серверы.
- Пайплайн не должен хранить секрет: безопасное хранение и доставка секретов для CI/CD с Deckhouse Code и Stronghold
Чтобы автоматически настраивать серверы.
- Секреты в kubernetes используя Hashicorp Vault + External Secrets Operator
Чтобы автоматически настраивать серверы.
- Наш путь delivery of secrets: как мы пришли к связке Bank-Vaults и Vault Secret Operator
Чтобы автоматически настраивать серверы.
- Основы Ansible, без которых ваши плейбуки — комок слипшихся макарон
Чтобы автоматически настраивать серверы.
- Как не хранить секреты где придётся, или зачем нам Hashicorp Vault
Чтобы автоматически настраивать серверы.
- Господин сенатор, шаттл подан: как мы переносим тысячи секретов в StarVault за секунды
Чтобы автоматически настраивать серверы.
- Как ArgoCD секреты из Vault не расшифровывал, или при чем тут App of Apps
Чтобы автоматически настраивать серверы.
- Как мы управляем секретами в Банки.ру: Vault HashiCorp и мечта об одной безопасной кнопке
Чтобы автоматически настраивать серверы.
- Управление секретами при помощи HashiCorp Vault
Чтобы автоматически настраивать серверы.
Наблюдаемость
- Почему observability — это не только Grafana и Prometheus
Чтобы быстро находить причины сбоев.
- Мониторинг и логирование DWH, часть 2: Prometheus, Grafana, Zabbix, ELK, OpenSearch, Loki — как выбрать рабочий стек
Чтобы быстро находить причины сбоев.
- Мониторинг Angie с Prometheus и Grafana
Чтобы быстро находить причины сбоев.
- Мониторинг сетевого оборудования MikroTik с использованием MikroTik API, MKTXP, Prometheus и Grafana
Чтобы быстро находить причины сбоев.
- Мониторинг веб-приложения на Rust с использованием Prometheus и Grafana
Чтобы быстро находить причины сбоев.
- Почему важно мониторить поисковую систему: Manticore → Prometheus → Grafana
Чтобы быстро находить причины сбоев.
- Основы мониторинга (обзор Prometheus и Grafana)
Чтобы быстро находить причины сбоев.
- Как мониторить Jenkins с помощью Prometheus, Node exporter и Grafana
Чтобы быстро находить причины сбоев.
- Вас много, а я одна: обзорная система мониторинга на Prometheus и Grafana
Чтобы быстро находить причины сбоев.
- Мониторинг мёртв? — Да здравствует мониторинг
Чтобы быстро находить причины сбоев.
- Мониторинг FastAPI-приложения с помощью Grafana и Prometheus — пошаговое руководство
Чтобы быстро находить причины сбоев.
- Prometheus + Grafana: 4 golden signals и другие подходы к мониторингу
Чтобы быстро находить причины сбоев.
- Как внедрить наблюдаемость в микросервисное приложение с помощью OpenTelemetry, Jaeger и Prometheus
Чтобы быстро находить причины сбоев.
Облачная архитектура
- Препарируем VK Private Cloud: подробнейшие детали из первых уст
Чтобы принимать устойчивые архитектурные решения.
- Легаси-ОС как тормоз виртуализации: что меняет современный стек РЕД ОС в VK Cloud
Чтобы принимать устойчивые архитектурные решения.
- Обзор безопасности конфигурации AWS Cloud с использованием Nuclei Templates
Чтобы принимать устойчивые архитектурные решения.
- Основные принципы и обучающее руководство по AWS CloudFormation
Чтобы принимать устойчивые архитектурные решения.
- Книга «Облачные архитектуры: разработка устойчивых и экономичных облачных приложений»
Чтобы принимать устойчивые архитектурные решения.
- Введение в Cloud native. Часть 2. Принципы облачных приложений
Чтобы принимать устойчивые архитектурные решения.
- Белогривые лошадки. Как облачные технологии меняют мир
Чтобы принимать устойчивые архитектурные решения.
- Stealthwatch Cloud. Быстрое, удобное и эффективное решение для облачных и корпоративных инфраструктур. Часть 5
Чтобы принимать устойчивые архитектурные решения.
- Зарубежные хостинги блокируют в России — переехал на Яндекс Cloud за 0 ₽/мес с помощью Claude Code
Чтобы принимать устойчивые архитектурные решения.
- Безопасность K8s: защита кластеров в Сloud Containers от VK Cloud и Luntry
Чтобы принимать устойчивые архитектурные решения.
- Что такое API-шлюзы и Gateway API и почему за ними будущее нативных облачных приложений
Чтобы принимать устойчивые архитектурные решения.
- Кросс-облачная архитектура и VMware Cloud Foundation, единая платформа для управления SDDC
Чтобы принимать устойчивые архитектурные решения.
- «Тулбокс для начинающих»: бесплатные материалы об облачных технологиях — ИТ-архитектура, миграция и вот это всё
Чтобы принимать устойчивые архитектурные решения.
DevSecOps
- Безопасное использование секретов: шаблон для использования HashiCorp Vault
Чтобы проверять безопасность на каждом этапе разработки.
- Настраиваем управление секретами с Yandex Lockbox, AWS Secret Manager, Vault Secrets и shell-operator
Чтобы проверять безопасность на каждом этапе разработки.
- Безопасность в Docker: от правильной настройки хоста до демона
Чтобы одинаково запускать приложение в любой среде.
- Как создавать Kubernetes секреты из Vault, используя external-secrets-operator
Чтобы проверять безопасность на каждом этапе разработки.
- Как пользоваться CSI Provider: доставляем секреты из Vault в Kubernetes
Чтобы проверять безопасность на каждом этапе разработки.
- Security Gate (DevSecOps cicd)
Чтобы проверять безопасность на каждом этапе разработки.
- Прячем секреты в репозитории с помощью helm-secrets, sops, vault и envsubst
Чтобы проверять безопасность на каждом этапе разработки.
- От Kubernetes в мечтах к Kubernetes в проде. Часть 4. Хранилище секретов ― HCP Vault
Чтобы проверять безопасность на каждом этапе разработки.
- Используем Hashicorp Vault для хранения секретов
Чтобы проверять безопасность на каждом этапе разработки.
- Инъекция секретов из Vault в поды используя сайдкары Kubernetes
Чтобы проверять безопасность на каждом этапе разработки.
- .NET и HashiCorp Vault: Использование секретов в настройках .NET Core приложения
Чтобы проверять безопасность на каждом этапе разработки.
- HashiСorp Vault & Kubernetes Secret: используем vault-secrets-operator
Чтобы проверять безопасность на каждом этапе разработки.
- Обзор инструментов для оценки безопасности кластера Kubernetes: kube-bench и kube-hunter
Чтобы проверять безопасность на каждом этапе разработки.
Базы данных и stateful-сервисы
- Эксплуатация Stateful-приложений в Kubernetes на примере баз данных в Авито
Чтобы надёжно хранить данные приложения.
- Шаг за шагом: Реализация автоматического резервного копирования PostgreSQL в Kubernetes и его синхронная отправка на S3
Чтобы надёжно хранить данные приложения.
- Time series данные в реляционной СУБД. Расширения TimescaleDB и PipelineDB для PostgreSQL
Чтобы надёжно хранить данные приложения.
- Поднимаем кластер PostgreSQL в Docker и Testcontainers
Чтобы одинаково запускать приложение в любой среде.
- Kubernetes для баз данных? CloudNativePG делает PostgreSQL по-настоящему Cloud-Native
Чтобы надёжно хранить данные приложения.
- Кластер PostgreSQL внутри Kubernetes: что нужно знать для успешного внедрения
Чтобы надёжно хранить данные приложения.
- Внедрение Postgres из Docker в Kubernetes
Чтобы одинаково запускать приложение в любой среде.
- Операторы для Kubernetes: как запускать stateful-приложения
Чтобы надёжно хранить данные приложения.
- KubeDirector — простой способ запускать сложные stateful-приложения в Kubernetes
Чтобы надёжно хранить данные приложения.
- Как выжить SQL-базе в 21 веке: облака, Kubernetes и PostgreSQL multimaster
Чтобы надёжно хранить данные приложения.
- Symantec Backup Exec: восстановление Oracle, установленного на Linux
Чтобы надёжно хранить данные приложения.
Инциденты и надёжность
- «Цель SRE — надёжная система». Обзор основных метрик SRE
Чтобы система продолжала работать при сбоях.
- Как проверить postmortem, подготовленный LLM. Разбираем инцидент Cloudflare
Чтобы система продолжала работать при сбоях.
- Инциденты под контролем: дежурный бот, MAX и путь к SRE-помощнику
Чтобы система продолжала работать при сбоях.
- SRE: управление инцидентами
Чтобы система продолжала работать при сбоях.
- Что мы узнали о SRE, когда обработали первые 150 тысяч продакшн-инцидентов
Чтобы система продолжала работать при сбоях.
- SRE: Распределённая и централизованная модели управления инцидентами
Чтобы система продолжала работать при сбоях.
- Как в 3 раза снизить затраты на отказоустойчивую инфраструктуру, переехав с Hazelcast на Redis
Чтобы система продолжала работать при сбоях.
- Как мы тестировали отказоустойчивость MWS Cloud Platform и при чём тут швейцарский сыр
Чтобы система продолжала работать при сбоях.
- Как менялось представление о надежности ИТ-инфраструктуры за последние 25 лет
Чтобы система продолжала работать при сбоях.
- Пять самых крупных ошибок, которые допускают компании при внедрении SRE
Чтобы система продолжала работать при сбоях.
- 7 основных этапов реагирования на ИТ-инциденты, используя мониторинг Monq
Чтобы система продолжала работать при сбоях.
- История внедрения SRE в «Тинькофф»
Чтобы система продолжала работать при сбоях.
- История внедрения SRE в Dodo Engineering
Чтобы система продолжала работать при сбоях.
Планирование инфраструктуры
- Планирование проекта
Чтобы выбрать приоритеты и согласовать действия.