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

Прочитал книжку по Python системное администрирование, сложилось стойкое впечатление, что Питон используется не потому, что он решает задачу эффективно, а из-за того, что это круто, здорово, молодежно.

Есть ли реальная выгода от питона в системное администрировании?

P.s. Знаю, что ряд тулзов написано на питоне, но при этом их можно было бы написать и на других языках.
  • Вопрос задан
  • 6470 просмотров
Пригласить эксперта
Ответы на вопрос 9
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, даже можно не парясь писать стартап скрипты к сервисам.
Ответ написан
Комментировать
Astrohas
@Astrohas
Python/Django Developer
Питон используют не потому что модно, а потому что удобно. И если он удобен вам то используйте. Если нет то используйте то что вам более удобнее.
Ответ написан
Комментировать
@alex-t
Прогр. в команде rco.ru
ИМХО питон позволяет относительно единообразно написать некоторые (манипуляции с файлами преимущственно) админские задачи на разных ОС. При этом на каждой ОС сами операции настройки ОС весьма специфичны, и на каждой есть достаточно продвинутые инструменты для администрирования...
Ответ написан
Комментировать
@res2001
Developer, ex-admin
Администратору в любом случае полезно владеть программированием. Основной упор, имхо, все таки нужно делать на командный язык оболочки bash/cmd/posh. Подавляющее большинство задач можно решить с их помощью. Но если вы будете знать кроме этого и еще что-то - это будет только вам в плюс.
Ответ написан
Комментировать
POS_troi
@POS_troi
СадоМазо Админ, флудер, троль.
И да и нет.
Больше толку от хорошего знания баша, остальное уже в сторону девопса пошло.

У меня Руби и Голанг в ходу.
Руби для чифа и всяких заманух которые тяжко башить, голанг для быстрого написания всяких сервисов.
Ответ написан
Комментировать
CityCat4
@CityCat4
Внимание! Изменился адрес почты!
Все зависти от задач. Не задача подгоняется под инструмент, а инструмент берется под задачу. Я стараюсь обойтись башем, ну а если никак - тогда perl

Jedem das seine (С)
Ответ написан
Комментировать
Wolfnsex
@Wolfnsex
Если не хочешь быть первым - не вставай в очередь!
Есть ли реальная выгода от питона в системное администрировании?
На мой взгляд - да, вполне себе есть. Python - довольно лаконичный язык, в виду чего писать на нем и "стильно/модно/молодежно" и банально удобно, удобно делать множество разных мелочей - например, удобно работать со строками. Ну и ещё он идёт комплектом с большинством дистрибутитвов Linux'а и еже с ними... в виду чего его ещё "удобнее" использовать (т.к. всё нужное уже стоит).

Знаю, что ряд тулзов написано на питоне, но при этом их можно было бы написать и на других языках.
Я Вам больше скажу, они были бы ощутимо производительнее, и возможно даже лучше по ряду других параметров, если были бы написаны на Си. И это касается не только каких-то "тулзов", о которых Вы говорите, это касается примерно 99% программ/"тулзов"/etc. Практически что угодно можно написать "на других языках".

P.S. Всё выше сказанное - исключительно личное мнение и опыт и на истину в последней инстанции - не претендует.
Ответ написан
Комментировать
leahch
@leahch
3Д специалист. Долго, Дорого, Дерьмово.
Нет! Все можно сделать на egrep awk sed и bash. Другого и не нужно.
Ответ написан
Комментировать
shurshur
@shurshur
Сисадмин, просто сисадмин...
Знание языка программирования - а лучше нескольких - это всегда плюс. Помогает как в написании своих скриптов, так и в отладке/переиспользованию чужих. И, конечно, качества и распространённость таких языков влияют. Но это всё равно опционально, в отличие от знания bash. Хотя, конечно, не знать совсем ни одного языка больше похоже на крайность, чем на норму.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы