У нас системных администраторов не осталось (ну почти). Однако предание о них еще свежо. В честь праздника мы подготовили этот эпос. Устраивайтесь поудобней, дорогие читатели.
Once upon a time мир Dodo IS был в огне. В то тёмное время главной задачей наших системных администраторов было пережить еще один день и не заплакать.
Давным-давно программисты писали код мало и медленно, а выкладывали его на прод всего раз в неделю. Вот и проблемы возникали всего раз в семь дней. Но потом они стали писать больше кода и выкладывать его чаще, проблем стало прибавляться, иногда всё стало разваливаться, а откатываться стало хуже. Системные администраторы страдали, но терпели этот балаган.
Сидели они по вечерам дома с тревогой на душе. И каждый раз случалось «никогда не было, и вот опять мониторинг шлёт сигнал о помощи: Чувак, мир в огне!». Тогда наши сисадмины надевали свои красные плащи, трусы поверх лосин, делали кудряшку на лбу и летели спасать Dodo мир.
Внимание, небольшое пояснение. Классических системных администраторов, которые обслуживают железо, в Dodo IS не было никогда. У нас сразу были продвинутые на облаках Azure.
Чем же они занимались:
- если что-то ломалось, делали так, чтобы чинилось;
- жонглировали серверами на экспертном уровне;
- отвечали за виртуальную сеть в Azure;
- отвечали за низкоуровневые вещи, например, взаимодействия компонентов (*шепотом* в которых иногда нихрена не шарили);
- реконнектами серверов;
- и многим другим диким.
Жизнь команды инженеров инфраструктуры (так мы звали наших сисадминов) тогда состояла из тушения пожаров и вечно ломающихся тестовых стендов. Жили они и тужили, а потом решили задуматься: что ж так плохо-то, а может сделаем лучше? Например, не будем разделять людей на программистов и сисадминов?
Задачка
Дано: есть сисадмин, у которого в зоне ответственности серверы, сеть, которая соединяет его с другими серверами, программы уровня инфраструктуры (веб-сервер, который хостит приложение, система управления базами данных и т.д.). И есть программист, у которого зона ответственности – работающий код.
А есть вещи, которые находятся на стыке. Это чья получается ответственность?
Обычно как раз на этом стыке встречались наши сисадмины и программисты и начиналось:
– Чуваки, ниче не работает, наверное из-за инфраструктуры.
– Чуваки, да нет, дело в коде.
Однажды в этот момент между ними начал расти забор, через который они радостно бросались какашками. Задачу, как какашку, перекидывали с одной стороны забора на другую. При этом к разрешению ситуации никто не приближался. Грустный смайл.
Луч солнца пронзил пасмурное небо, когда несколько лет назад в Google придумали не перекидываться задачами, а вместо этого делать общее дело.
А что если описать всё как код?
В 2016 году Google выпустил книжечку «Site Reliability Engineering» про трансформацию роли системного администратора: от магистра магии к формализованному инженерному подходу в использовании ПО и автоматизации. Они сами прошли через все тернии и препятствия, наловчились и решили поделиться этим с миром. Книжка в открытом доступе лежит тут.
В книге заложены простые истины:
- делать всё как код – хорошо;
- использовать инженерный подход – хорошо;
- делать хороший мониторинг – хорошо;
- не давать выпуститься сервису, если у него нет понятного логирования и мониторинга – тоже хорошо.
Эти практики прочитал наш Глеб (entropy), и понеслось. Внедряем! Сейчас мы находимся в переходной стадии. Команда SRE сформирована (есть 6 готовых спецов, еще 6 проходят онбоардинг) и готова менять мир, полностью состоящий из кода, к лучшему.
Мы создаем нашу инфраструктуру таким образом, чтобы дать возможность разработчикам полностью самостоятельно менеджить свои окружения и заниматься коллаборацией с SRE.
Вангуем вместо выводов
Системный администратор – достойная профессия. Но к знаниям системной части также нужны отличные навыки software engineering.
Системы становятся проще и проще, а суперуникальные знания по администрированию железных серверов с каждым годом становятся менее востребованными. Облачные технологии вытесняют потребность в этих знаниях.
Хороший сисадмин в ближайшем будущем должен будет обладать неплохими навыками software engineering. А еще лучше, чтобы он обладал хорошими навыками в этой сфере.
Никто не умеет предсказывать будущее до момента его наступления, но мы считаем, что со временем будет всё меньше и меньше компаний, которые захотят увеличивать бесконечно раздувающийся штат системных администраторов. Хотя, конечно, любители останутся. Немногие же сегодня ездят на лошадях, в основном пользуются автомобилями, хотя находятся любители…
Всех с днём сисадмина, всем код!
Комментарии (33)
DikSoft
26.07.2019 15:22+2Каждый раз, когда я читаю про Server-less системы и бред про то, что это системы, для которых вообще не нужно иметь инфраструктуру, мне и смешно и грустно.
Это представление напоминает мне мысли принцесс, которые думают, что пирожные растут на деревьях…
С днём системного администратора, коллеги! Как бы ваша профессия нынче не называлась. ))ximik13
26.07.2019 15:30+1Полностью согласен с предыдущим оратором. Легенды про облака напоминают мне легенды про то, что "принцессы не какают". Хотя все продолжает работать на железе, которое просто обслуживают другие системные администраторы, а не ваши собственные. Чудес то все же не бывает и ваши сервисы не работают в волшебном вакууме :).
Carduelis
26.07.2019 16:38+1Не понимаю, вашего удивления. Конечно, системных администраторов все меньше и меньше нужно рынку. Раньше на каждый веб-сайт нужна была железка. Потом появились хостинги, потом появились облачные серверы. В результате, сотни тысяч сайтов хостится на одинаковых площадках. Никакого колхоза, чтобы поднять веб-сервер уже не нужно. Понятное дело, что системные администраторы по прежнему обслуживают железки. Только где-то "там". А какой-нибудь AWS прикладывает все усилия, чтобы все автоматизировать, потому что именно это и есть их бизнес: они автоматизацией деньги зарабатывают.
jenki
27.07.2019 21:37+1Просто системные/сетевые администраторы/инженеры ушли в ДЦ или в крупные компании со своими ЦОД. Они там окружены серверами и сетевым оборудованием. Счастливы и довольны вдали от любимых и обожаемых пользователей.
oller
29.07.2019 07:31+1Никакого колхоза)))
То ли дело появилась потребность в изучении phpmyadmin и кучи других)
А потом кучу вопросов как бекапить и в случае чего восстанавливать
Aws по идее тоже не нужны админы, только оказалось, что админ для aws стоит как самолет
Реальный прорыв был готовые сайты, но и там чтобы сделать что-то годное нужно нехило повозиться…
lappy
28.07.2019 15:06Ну что значит "просто другие системные администраторы", это совсем не "просто". Со своих админов снимается целый класс задач: монтаж серверов в стойки, слежение за местом в стойках, закупка оборудования, гарантия, патчкорды там расплетать, ой нужно срочно перенести оборудование отсюда туда давайте на выходных, вот это всё, ой диск вылетел нет запасного, и так далее. То есть всё это тяжёлый, неквалифицированный труд, которым не впадлу заниматься если только эникеям, и только до момента, когда они понимают, что ума от этого дрочева не прибавляется. Так что Додо всё правильно делают.
Dobryak88
26.07.2019 15:41-4При этом «статья» получила ещё несколько положительных оценок и автору даже плюсов в карму насовали. Накрутки на Хабре становятся всё более очевидными, так что и Додо, и Хабр отправятся на свалку истории раньше, чем умрёт потребность мира в администраторах.
Schvepsss
26.07.2019 16:12-1Я вижу 8+ и 2- к этой статье за час. Могли бы вы пояснить, где здесь накрутка? Возможно я не понимаю до конца вашу логику, но мне кажется, что сейчас мало голосов в целом.
jenki
27.07.2019 21:20Заменили слово Server на Instance теперь их развёртыванием, настройкой, поддержкой занимается Devops)
halted
26.07.2019 15:47+5Хороший сисадмин в ближайшем будущем должен будет обладать неплохими навыками software engineering. А еще лучше, чтобы он обладал хорошими навыками в этой сфере.
А тем временем большинство директоров видит сисадмина, как человека, который меняет картридж в принтере, и их это полностью устраивает.
NoRegrets
26.07.2019 16:46Системы становятся проще и проще,
Ага, как только так сразу.
ИТ — слоеный пирог, который фрактально повторяется. Взять отдельный проект отдельной компании — это пирог, взять комплекс продуктов этой компании — это пирог, взять всю индустрию целиком — это тоже пирог. Пирог, на который день за днем каждая команда/контора накладывает и накладывает «свои новые технологии и космические программы». Сверху этого пирога, в качестве крема, — кривое недоделанное нечто, внизу — бесквит из дремучего легаси, чем ниже тем брутальнее. Аэнтерпрайзбизнес ковыряется от верха до низа, там где бесквит каменеет и превращается в известный всем мамонтовый материал. А сисадмины, которые работают в этих бизнесах, восхищенно вкушают этот вкуснейший пирог, мечтая работать в отделе, который питается повыше.
Если сисадминов и не станет, то только лишь по причине того, что никто больше не захочет работать с этой вакханалией. На правах шутки. С праздником. )
cheremsha11
26.07.2019 16:58Мы создаем нашу инфраструктуру таким образом, чтобы дать возможность разработчикам полностью самостоятельно менеджить свои окружения
Окружение -это понятно, а что на продакшен происходит? Честно говоря не понял принцип разделения ответственности. Решение проблемы может быть не в том, чтобы делать всё как код, но не делать всё как говнокод.halted
26.07.2019 17:44+1Даже интересно стало посмотреть, как программист сидит и читает best practice по сетям и серверам, чтобы потом на бегу осилить ccnp, чтобы потом развернуть кластер серверов, чтобы потом бросить программирование и уйти в тонкости администрирования.
navion
27.07.2019 21:39За них это сделали инженеры Amazon, Google и Microsoft.
Не всегда идеально (особенно Azure, который берут из-за грантов и скидок), зато со 100% повторяемостью, а с ограничениями систем программисты привыкли работать.
fdroid
26.07.2019 17:34Знаю историю, когда в компанию пришёл новенький сисадмин и возникла задача что-то там подтюнить в уже работающем и настроенном предыдущим сисадмином Астериске. Товарищ «ниасилил» и начал убеждать директора, что, мол, надо переходить на облачную АТС, аргументируя тем, что «заплатил — и никаких проблем, ничего настраивать не надо». Не знаю кто и что там делал в итоге, но АТС до сих пор, насколько мне известно, так и работает на Астериске.
oller
29.07.2019 07:38В облачных АТС кстати есть смысл, притом весьма себе…
Другой вопрос, что приходящие новый админ, говорящий, что всё старое овно, должен быть поставлен под сомнения, ну или должны быть резкие аргументы у него
Когда я менял астер на облачную АТС, расходы на связь упали втрое, ну просто кучу схем ушло левых и ненужных. А ещё на слуху связка kx-tda и астера на 50 пользователей))
blind_oracle
27.07.2019 22:01Работал в разных компаниях с многими людьми, называющимися DevOps, но software engineering у 95% из них заканчивался на самых базовых знаниях Питона… в лучшем случае они писали плейбуки на Ансибле.
SRE, как мне кажется, в большинстве компаний кроме самых крупных — это просто переименованый в тренде DevOps (в которого переименовали админа цать лет назад)
dominigato
27.07.2019 12:23А чем плох питон и ансибл для девопсов? В основном это и есть девопсные инструменты.
blind_oracle
27.07.2019 21:16+1Ничем не плохи. Проблема когда те, кому «по должности» положено быть гибридом Software и System инженеров не знают ту часть, которая Software (e.g. Питон) и не очень хорошо знают ту, которая System (e.g. Ansible).
У меня сейчас из 5 коллег (все по должности — DevOps) никто не умеет в Питон ничего сложнее «послать HTTP запрос через requests», а в Ansible хорошо умеют дай бог двое.navion
27.07.2019 21:41Может им и платят соответственно — как средним сисадминам?
blind_oracle
27.07.2019 23:59Та не, платят тут всем плюс минус одинаково… но тут конечно есть некая специфика — команда, в основном, рулит проприетарным IPTV стриминговым ПО, которое работает на 500+ серверах и в этом ПО они разбираются достаточно неплохо.
Другое дело что этот опыт для них бесполезен на рынке т.к. это ПО в мире от силы имеет 15-20 инсталляций, причем у нас крупнейшая.
И некоторые из них уже начали осознавать этот факт…
dominigato
27.07.2019 23:32Вы в своем сообщении назвали 95% девопсов ничего не умеющими. Ничего так обобщение.
Может не там работаете?blind_oracle
27.07.2019 23:44+1Может быть, но это не одна компания и не две.
Просто должность SRE/DevOps в большинстве случаев изъезжена, я об этом хочу сказать. Это НЕ программист, это тот же самый старый добрый админ. Просто называющийся по-модному.
При этом я сейчас на западном рынке вообще не вижу админских вакансий. Все, как на подбор, DevOps-ы…dominigato
27.07.2019 23:48Это не старый добрый админ, хоть и большинство их переобулось в девопсы. Обязанности другие. Скорее как раз SRE, которых вы смешали с девопсами, это старые добрые сисадмины.
blind_oracle
27.07.2019 23:52+1Скорее как раз SRE, которых вы смешали с девопсами, это старые добрые сисадмины.
Ну вы почитайте гугловскую книжку об SRE, которые их и «изобрели», или хотя бы википедию:
According to Ben Treynor, founder of Google's Site Reliability Team, SRE is «what happens when a software engineer is tasked with what used to be called operations.»
На их взгляд как раз SRE должен одинаково хорошо уметь и в программирование и в эксплуатацию. И если вы взглянете на собеседования Гугла на эту должность — то там как раз очень дофига алгоритмов и программирования.dominigato
28.07.2019 01:10Спасибо, я читал гугловскую книжку, именно на основе этого я и говорю.
То, что там собеседует гугл это не показатель, они требуют алгоритмы и программирования даже на должность уборщицы и баристы. Потому что могут.
Смотреть надо на остальные, более нормальные компании)
fivehouse
27.07.2019 00:49Например, не будем разделять людей на программистов и сисадминов?
А-хаха! Далее можно перестать разделять менеджеров и программистов. Потом объяснить менеджерам, что программисты и сервера вообще не нужны если есть MS Office и ноутбуки. Потом можно объяснить покупателям пиццы, что они сам смогут написать все нужные им программы немного потыкав мышкой во время заказа пиццы и что ни менеджеры ни сервера при покупке пиццы не нужны совсем.
А если серьезно, то у программистов и сисадминов предмет с которым они работают совершенно разный. И совсем не важно что и то и другое кто-то вздумал свести к коду. Цена ошибки у них совершенно разная. Одно дело это восстановление чего либо из битого бэкапа (без текущего бэкапа, т.к. все орут давай быстрей) и совсем другое дело программная ошибка обнаруживающаяся во время рутинных тестов.halted
27.07.2019 16:49Для начала время устранения проблем совершенно разное, сложно представить, чтобы для программистов было нормально устранить неполадку за считанные минуты, сто совершенно нормально для сисадминов. Так же не слышал, чтобы у программистов было нормальным соблюдение SLA.
lotse8
28.07.2019 17:53каждому свое — разработчикам разрабатывать, а администраторам администрировать разработанное разработчиками
dok2d
В день пиццы, надо написать статейку про вымирающий Додо…
Я искренне рад, что у вашей компании нашлась чёткая линия развития IT-отдела, но не надо это навязывать остальным. Зоопарк у всех разный.
Schvepsss
Получился достаточно чёрный юмор, ибо птица додо считается вымершим видом с 19 века.