DevOps

Оригинальное название: DevOps (Development Operations)

Коротко

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

Что такое «DevOps»

Раньше обязанности делились жёстко: разработчики писали код и «передавали через стену», а системные администраторы отвечали за то, чтобы он работал на серверах. Первым нужны были частые изменения, вторым — стабильность, и каждый выпуск превращался в конфликт. Термин DevOps появился около 2009 года как ответ на этот разрыв: пусть за продукт отвечают вместе, от коммита до работы в продакшене.

Отдельной программы или должностной инструкции под названием DevOps нет. Это способ организовать работу, который держится на автоматизации, прозрачности и быстрой обратной связи от боевой системы.

Практики, на которых держится подход

  • CI/CD — сборка, тесты и выкладка запускаются автоматически.
  • Инфраструктура как код: серверы, сети и окружения описываются в файлах и хранятся в репозитории.
  • Контейнеры: приложение упаковано вместе с зависимостями и одинаково запускается везде.
  • Мониторинг и логи: команда видит ошибки и нагрузку раньше пользователей.
  • Разбор инцидентов без поиска виноватых: важнее понять причину, чем наказать.

Пример: окружение в одном файле

Инфраструктура как код в самом простом виде — файл Docker Compose. Он описывает, какие сервисы нужны сайту и как они связаны:

services:
  php:
    image: php:8.3-fpm
    volumes: ["./www:/var/www/html"]
  nginx:
    image: nginx:1.26
    ports: ["80:80"]
    depends_on: [php]
  db:
    image: mariadb:11
    environment:
      MARIADB_ROOT_PASSWORD: ${DB_ROOT_PASSWORD}

Новый разработчик выполняет docker compose up и получает то же окружение, что у коллег, без недели настройки. Версии сервисов зафиксированы, а пароли не лежат в репозитории — они подставляются из переменных окружения.

DevOps для небольшого проекта

Не нужно строить кластер, чтобы получить пользу. Для сайта компании достаточно трёх вещей: код в Git, выкладка одной командой или по пушу и мониторинг доступности с уведомлением в мессенджер. Даже это убирает ручные заливки по FTP и ситуацию, когда о падении сайта узнают от клиентов. Родственный подход с упором на надёжность и измеримые показатели описан в статье про SRE.

Обновлено:

Все термины раздела «Backend»

Что будем искать? Например,Продвижение