Системные администраторы всего мира, поздравляем вас с профессиональным праздником!

У нас системных администраторов не осталось (ну почти). Однако предание о них еще свежо. В честь праздника мы подготовили этот эпос. Устраивайтесь поудобней, дорогие читатели.



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)


  1. dok2d
    26.07.2019 15:15
    -3

    В день пиццы, надо написать статейку про вымирающий Додо…
    Я искренне рад, что у вашей компании нашлась чёткая линия развития IT-отдела, но не надо это навязывать остальным. Зоопарк у всех разный.


    1. Schvepsss
      26.07.2019 16:20

      Получился достаточно чёрный юмор, ибо птица додо считается вымершим видом с 19 века.


  1. DikSoft
    26.07.2019 15:22
    +2

    Каждый раз, когда я читаю про Server-less системы и бред про то, что это системы, для которых вообще не нужно иметь инфраструктуру, мне и смешно и грустно.
    Это представление напоминает мне мысли принцесс, которые думают, что пирожные растут на деревьях…

    С днём системного администратора, коллеги! Как бы ваша профессия нынче не называлась. ))


    1. ximik13
      26.07.2019 15:30
      +1

      Полностью согласен с предыдущим оратором. Легенды про облака напоминают мне легенды про то, что "принцессы не какают". Хотя все продолжает работать на железе, которое просто обслуживают другие системные администраторы, а не ваши собственные. Чудес то все же не бывает и ваши сервисы не работают в волшебном вакууме :).


      1. Carduelis
        26.07.2019 16:38
        +1

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


        1. jenki
          27.07.2019 21:37
          +1

          Просто системные/сетевые администраторы/инженеры ушли в ДЦ или в крупные компании со своими ЦОД. Они там окружены серверами и сетевым оборудованием. Счастливы и довольны вдали от любимых и обожаемых пользователей.


        1. oller
          29.07.2019 07:31
          +1

          Никакого колхоза)))
          То ли дело появилась потребность в изучении phpmyadmin и кучи других)
          А потом кучу вопросов как бекапить и в случае чего восстанавливать
          Aws по идее тоже не нужны админы, только оказалось, что админ для aws стоит как самолет


          Реальный прорыв был готовые сайты, но и там чтобы сделать что-то годное нужно нехило повозиться…


      1. lappy
        28.07.2019 15:06

        Ну что значит "просто другие системные администраторы", это совсем не "просто". Со своих админов снимается целый класс задач: монтаж серверов в стойки, слежение за местом в стойках, закупка оборудования, гарантия, патчкорды там расплетать, ой нужно срочно перенести оборудование отсюда туда давайте на выходных, вот это всё, ой диск вылетел нет запасного, и так далее. То есть всё это тяжёлый, неквалифицированный труд, которым не впадлу заниматься если только эникеям, и только до момента, когда они понимают, что ума от этого дрочева не прибавляется. Так что Додо всё правильно делают.


    1. Dobryak88
      26.07.2019 15:41
      -4

      При этом «статья» получила ещё несколько положительных оценок и автору даже плюсов в карму насовали. Накрутки на Хабре становятся всё более очевидными, так что и Додо, и Хабр отправятся на свалку истории раньше, чем умрёт потребность мира в администраторах.


      1. Schvepsss
        26.07.2019 16:12
        -1

        Я вижу 8+ и 2- к этой статье за час. Могли бы вы пояснить, где здесь накрутка? Возможно я не понимаю до конца вашу логику, но мне кажется, что сейчас мало голосов в целом.


    1. jenki
      27.07.2019 21:20

      Заменили слово Server на Instance теперь их развёртыванием, настройкой, поддержкой занимается Devops)


  1. halted
    26.07.2019 15:47
    +5

    Хороший сисадмин в ближайшем будущем должен будет обладать неплохими навыками software engineering. А еще лучше, чтобы он обладал хорошими навыками в этой сфере.

    А тем временем большинство директоров видит сисадмина, как человека, который меняет картридж в принтере, и их это полностью устраивает.


    1. LoadRunner
      26.07.2019 16:50

      А про рядовых сотрудников и word\excel скромно умолчим в этот день.


  1. NoRegrets
    26.07.2019 16:46

    Системы становятся проще и проще,
    Ага, как только так сразу.
    ИТ — слоеный пирог, который фрактально повторяется. Взять отдельный проект отдельной компании — это пирог, взять комплекс продуктов этой компании — это пирог, взять всю индустрию целиком — это тоже пирог. Пирог, на который день за днем каждая команда/контора накладывает и накладывает «свои новые технологии и космические программы». Сверху этого пирога, в качестве крема, — кривое недоделанное нечто, внизу — бесквит из дремучего легаси, чем ниже тем брутальнее. А энтерпрайз бизнес ковыряется от верха до низа, там где бесквит каменеет и превращается в известный всем мамонтовый материал. А сисадмины, которые работают в этих бизнесах, восхищенно вкушают этот вкуснейший пирог, мечтая работать в отделе, который питается повыше.
    Если сисадминов и не станет, то только лишь по причине того, что никто больше не захочет работать с этой вакханалией. На правах шутки. С праздником. )


  1. cheremsha11
    26.07.2019 16:58

    Мы создаем нашу инфраструктуру таким образом, чтобы дать возможность разработчикам полностью самостоятельно менеджить свои окружения

    Окружение -это понятно, а что на продакшен происходит? Честно говоря не понял принцип разделения ответственности. Решение проблемы может быть не в том, чтобы делать всё как код, но не делать всё как говнокод.


    1. halted
      26.07.2019 17:44
      +1

      Даже интересно стало посмотреть, как программист сидит и читает best practice по сетям и серверам, чтобы потом на бегу осилить ccnp, чтобы потом развернуть кластер серверов, чтобы потом бросить программирование и уйти в тонкости администрирования.


      1. navion
        27.07.2019 21:39

        За них это сделали инженеры Amazon, Google и Microsoft.
        Не всегда идеально (особенно Azure, который берут из-за грантов и скидок), зато со 100% повторяемостью, а с ограничениями систем программисты привыкли работать.


  1. fdroid
    26.07.2019 17:34

    Знаю историю, когда в компанию пришёл новенький сисадмин и возникла задача что-то там подтюнить в уже работающем и настроенном предыдущим сисадмином Астериске. Товарищ «ниасилил» и начал убеждать директора, что, мол, надо переходить на облачную АТС, аргументируя тем, что «заплатил — и никаких проблем, ничего настраивать не надо». Не знаю кто и что там делал в итоге, но АТС до сих пор, насколько мне известно, так и работает на Астериске.


    1. oller
      29.07.2019 07:38

      В облачных АТС кстати есть смысл, притом весьма себе…
      Другой вопрос, что приходящие новый админ, говорящий, что всё старое овно, должен быть поставлен под сомнения, ну или должны быть резкие аргументы у него


      Когда я менял астер на облачную АТС, расходы на связь упали втрое, ну просто кучу схем ушло левых и ненужных. А ещё на слуху связка kx-tda и астера на 50 пользователей))


  1. blind_oracle
    27.07.2019 22:01

    Работал в разных компаниях с многими людьми, называющимися DevOps, но software engineering у 95% из них заканчивался на самых базовых знаниях Питона… в лучшем случае они писали плейбуки на Ансибле.


    SRE, как мне кажется, в большинстве компаний кроме самых крупных — это просто переименованый в тренде DevOps (в которого переименовали админа цать лет назад)


    1. dominigato
      27.07.2019 12:23

      А чем плох питон и ансибл для девопсов? В основном это и есть девопсные инструменты.


      1. blind_oracle
        27.07.2019 21:16
        +1

        Ничем не плохи. Проблема когда те, кому «по должности» положено быть гибридом Software и System инженеров не знают ту часть, которая Software (e.g. Питон) и не очень хорошо знают ту, которая System (e.g. Ansible).

        У меня сейчас из 5 коллег (все по должности — DevOps) никто не умеет в Питон ничего сложнее «послать HTTP запрос через requests», а в Ansible хорошо умеют дай бог двое.


        1. navion
          27.07.2019 21:41

          Может им и платят соответственно — как средним сисадминам?


          1. blind_oracle
            27.07.2019 23:59

            Та не, платят тут всем плюс минус одинаково… но тут конечно есть некая специфика — команда, в основном, рулит проприетарным IPTV стриминговым ПО, которое работает на 500+ серверах и в этом ПО они разбираются достаточно неплохо.

            Другое дело что этот опыт для них бесполезен на рынке т.к. это ПО в мире от силы имеет 15-20 инсталляций, причем у нас крупнейшая.

            И некоторые из них уже начали осознавать этот факт…


        1. dominigato
          27.07.2019 23:32

          Вы в своем сообщении назвали 95% девопсов ничего не умеющими. Ничего так обобщение.
          Может не там работаете?


          1. blind_oracle
            27.07.2019 23:44
            +1

            Может быть, но это не одна компания и не две.

            Просто должность SRE/DevOps в большинстве случаев изъезжена, я об этом хочу сказать. Это НЕ программист, это тот же самый старый добрый админ. Просто называющийся по-модному.

            При этом я сейчас на западном рынке вообще не вижу админских вакансий. Все, как на подбор, DevOps-ы…


            1. dominigato
              27.07.2019 23:48

              Это не старый добрый админ, хоть и большинство их переобулось в девопсы. Обязанности другие. Скорее как раз SRE, которых вы смешали с девопсами, это старые добрые сисадмины.


              1. 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 должен одинаково хорошо уметь и в программирование и в эксплуатацию. И если вы взглянете на собеседования Гугла на эту должность — то там как раз очень дофига алгоритмов и программирования.


                1. dominigato
                  28.07.2019 01:10

                  Спасибо, я читал гугловскую книжку, именно на основе этого я и говорю.
                  То, что там собеседует гугл это не показатель, они требуют алгоритмы и программирования даже на должность уборщицы и баристы. Потому что могут.
                  Смотреть надо на остальные, более нормальные компании)


  1. fivehouse
    27.07.2019 00:49

    Например, не будем разделять людей на программистов и сисадминов?
    А-хаха! Далее можно перестать разделять менеджеров и программистов. Потом объяснить менеджерам, что программисты и сервера вообще не нужны если есть MS Office и ноутбуки. Потом можно объяснить покупателям пиццы, что они сам смогут написать все нужные им программы немного потыкав мышкой во время заказа пиццы и что ни менеджеры ни сервера при покупке пиццы не нужны совсем.
    А если серьезно, то у программистов и сисадминов предмет с которым они работают совершенно разный. И совсем не важно что и то и другое кто-то вздумал свести к коду. Цена ошибки у них совершенно разная. Одно дело это восстановление чего либо из битого бэкапа (без текущего бэкапа, т.к. все орут давай быстрей) и совсем другое дело программная ошибка обнаруживающаяся во время рутинных тестов.


    1. halted
      27.07.2019 16:49

      Для начала время устранения проблем совершенно разное, сложно представить, чтобы для программистов было нормально устранить неполадку за считанные минуты, сто совершенно нормально для сисадминов. Так же не слышал, чтобы у программистов было нормальным соблюдение SLA.


  1. Elaugaste
    27.07.2019 16:47

    режим бабки
    Еще бы недопекараня рассказывала как надо it строить.


  1. lotse8
    28.07.2019 17:53

    каждому свое — разработчикам разрабатывать, а администраторам администрировать разработанное разработчиками