DevOps, SRE. Опять?

bubnov
bubnov
Jan 14 · 4 min read

Всем уже надоели эти аббревиатуры. Сначала они называли это DevOps, потом стали везде писать SRE. Зачем и я об этом пишу?

Часто меня спрашивают о том, зачем нужен этот девопс, что он дает и как его использовать. Многие пишут что все эти модные штучки нужны только тем, кто продает свой софт и “обычному” админу вовсе не нужны (под “обычным” мы имеем в виду админа организации с Windows, AD, GPO, WSUS, почтарем, 1С и всем, что крутится рядом с этим). Давайте попробуем в этом разобраться и, возможно, поменять ваше мнение.

Я начал интересоваться девопсом около года назад — в конце 2018. И у меня возникали такие вопросы:

  • Зачем это мне — обычному сетевику?
  • С чего начать изучение?
  • Как не ошибиться в выборе инструментов? Вдруг применяемая мной технология умерла пару лет назад
  • Как применить полученные знания на собственной инфраструктуре? Особенно, если везде винда
  • Достаточно ли просто изучить инструменты типа Docker, Ansible, Git чтобы жизнь изменилась?
Когда не знаешь с чего начать

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

Моё видение изменилось благодаря нашему сообществу сисадминов — Sysadminka. После очередной порции типичных вопросов начинающего чатик разразился ответами. Постараюсь передать их смысл.

Что такое девопс? Это методология, позволяющая быстро и достаточно стабильно релизить софт. Написал программист новый модуль, отдал девопс(простите) инженеру, а тот интегрировал модуль с рабочей системой, протестировал всю схему в разных условиях и обновил её в проде, не нарушив работу пользователей.

Кажется, что это далеко от работы “обычного” админа. Но разве “обычный” админ не обновляет софт на серверах и рабочих стациях? Разве ему не нужно тестировать новый софт? Или взаимодействие одного модуля с другим? Разве ему не нужно поддерживать бесперебойную работу систем даже во время обновления? Понимаете к чему клоню? Методы и инструменты девопс применимы для всех!

Ещё пример: Разворачивание .cf файла на тестовой базе 1С. Запуск 1С тестов, потом раскатка этих cf через УРБД с обновлением конфигурации. Пиши powershell или python скрипты которые через CLI распаковывают тестовую базу из 1С репозитория потом прогоняют тесты. Потом конфигурация снимается в cf и дальше через УРБД раскатывается на “остальные филиалы” (С) Slach@Sysadminka


Около полугода я без понимания тыкал палочкой инструменты: Docker, Ansible, Git. Но это были простые эксперменты без понимания надобности этих технологий. Всё изменилось, когда появились реальные задачи. Их просто нужно было придумать. Я решил перестать настраивать оборудование вручную и всегда иметь под рукой историю изменений. В этом помогли Git, Ansible, Python, Docker и Molecule.

А базу тоже в Docker?

Если в инфраструктуре только винда, то начинаешь ошибочно предполагать, что это всё не для тебя. Но ведь многие служебные сервисы работают на линуксе — с них и можно начать: мониторинг, git, IPAM, лог-сервер. Я начал с конфигурации маршрутизаторов и постепенно дошел до автоматического развертывания мониторинга с хранением данных в NetBox. Так, чтобы добавить хост на мониторинг, техникам нужно просто добавить его в NetBox, а скрипты автоматически пропишут его в конфигах Prometheus’a.

Инфраструктура, описанная в коде легко документируется. Её изменения удобно отслеживаются, а бэкапы не нужны. Ведь при падении сервера за минуту прогоняется плэйбук, разворачивающий точно такой же сервер. Разве это не стоит того, чтобы изучить новые инструменты?


Около года я изучаю и использую DevOps инструменты и начал понимать, что я многого не знаю, в том числе из фундаментальных вещей. На своей практике я давно понял, что иногда понимание элементарного может отнять слишком много времени и выгоднее пройти платные курсы за несколько дней, чем пытаться месяцами понять непонятное. Так я решил пройти курсы от Slurm: DevOps и SRE.

Давайте разберем зачем мне это надо. Я вообще люблю успокаивать себя надобностью дорогих покупок.

  • Возможно, я что-то делаю не так как принято. Ведь я всему учился сам, без старших товарищей
  • Нужно сравнить разные инструменты, послушать отзывы от тех, кто ими пользовался и понять какие лучше подходят для моих задач
  • На курсах важна не только информация от выступающего, но и комментарии из зала и общение в курилках
  • Расширение горизонта. Курсы позволят взглянуть на технологии, до которых я сам доберусь нескоро
Когда за три дня курсов узнал то, к чему другие идут годами

Сначала я хотел поучаствовать только в курсе SRE. Но так как львиная доля моих затрат уходит на логистику, то решил захватить ещё и курс DevOps, который пройдет за несколько дней перед SRE. Попробуем разобраться зачем мне оба курса.

DevOps:

  • ChatOps. Всегда интересовался управлением инфраструктурой с помощью мессенджеров
  • Увидеть микросервисы изнутри
  • Надеюсь поглубже разобраться с Git и увидеть как им пользуются большие дядьки
  • Сравнить CI/CD системы
  • Узнать правильно ли я готовлю Infrastructure as Code

SRE:

  • Дизайн распределенных систем. Кажется, это самая бомбическая часть всего курса
  • Проектирование и запуск распределенной системы
  • Тестирование и Chaos Engineering. Давно об этом почитываю, но вживую ни разу не видел
  • Балансировка и защита от DDoS

Оба курса рассматривают мониторинг и логирование. Про мониторинг я часто пишу у себя в канале. Думаю, после курсов появятся новые мысли и посты.


Курсы закончатся 5 февраля. После я постараюсь написать отчет о каждом из них, а вы сделаете выводы. Так же надеюсь, что получится своими словами описать хотя бы часть затронутого материала.

Напишите в комментариях что вы думаете по поводу применимости DevOps/SRE практик и инструментов в мире “обычного” системного администрирования. Какие инструменты и как применяете у себя? С чего посоветуете начать тем, кто давно хочет, но ещё не начал?

Welcome to a place where words matter. On Medium, smart voices and original ideas take center stage - with no ads in sight. Watch
Follow all the topics you care about, and we’ll deliver the best stories for you to your homepage and inbox. Explore
Get unlimited access to the best stories on Medium — and support writers while you’re at it. Just $5/month. Upgrade