• Нужен ли python для системных администраторов?

    vvpoloskin
    @vvpoloskin
    Инженер связи
    Когда я и коллеги использовали python вместо баш?
    Когда потребовалось написать бекапилку конфигов на 8k сетевых устройст по snmp.
    Когда надо было набросать простой веб-интерфейс для дежурной смены для примитивного up/down и смену description на этих устройствах.
    Когда надо было проинтегрировать nagios-мониторилку с внешей сторонней базой данных.
    Когда на 600 виртуалок необходимо было поставить разные софтины, перечень и версии которых хранились во внешнем xml-файле
    Когда с увесистой пачки серверов понадобилось провести инвентаризацию типа sfp-модулей

    К чему я это? Если вам хватает bash, радуйтесь и используйте его. Когда будет надо, вы сами придете к python.

    На чистом баше вы замучаетесь делать веб-интерфейс к чему-либо, организовывать взаимодействие с внешними системами/программами, отличными от чистого linux (web, snmp, sql, email, ftp не разовое обращение), обрабатывать вводные данные к системе в форматах сложнее csv (html, xml, json), обрабатывать файлы в нестандартных кодировках, использовать нетекстовые переменные в скриптах (арифметика, дроби, списки, файлы). Боль начнется даже просто тогда, когда появятся файлы с названиями с нестандартными символами (?$!*\+alt-символы), а еще и в левой кодировке (привет mount ftp/samba/sshfs/ntfs и даже вложения к письмам). А еще больнее станет, когда размер своих скриптов превысит хотя бы 500 строк.

    И уже как бонус идет то, что python есть из коробки в deb/rhel дистрибутивах, многие системные утилиты написаны уже на нем. Плагин к apt/yum проще всего сделать на python, даже можно не парясь писать стартап скрипты к сервисам.
    Ответ написан
    Комментировать