Рейтинг:4

Инфраструктура — управление — стоит ли переходить от пользовательской кодовой базы к Ansible?

флаг us

Немного фона:

Когда я начинал на своем нынешнем рабочем месте (в серверной инфраструктуре), кодовая база bash, perl и python уже была на месте для удаленного выполнения заданий в системах Linux, единственный парень, который написал и поддерживал эту кодовую базу, потратил годы на ее доработку, так как до того, как я начал там.

Хотя существующая кодовая база может многое сделать, иногда ее довольно сложно использовать из-за отсутствия документации. Некоторые из исполняемых скриптов также устарели. От этого мы сильно зависим от автора кодовой базы. (можно добавить; только автору разрешено редактировать задействованные скрипты)

В последнее время я экспериментировал с Ansible и конфигурацией среды Linux, пользователями, группами, брандмауэром, установкой пакетов и запуском проверок. Я предложил начать переводить основные задачи в Ansible, а со временем комбинировать его с Tower или AWX, чтобы получить хорошее представление о задачах и их успешности.

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

Вопросы:

Должен ли я настаивать на переходе на Ansible?

Плюсы, как я это вижу:

  • Много функций уже есть через модули.
  • Новым коллегам должно быть легче разобраться.
  • Может использоваться с внешним интерфейсом, таким как Tower или AWX.
  • (Возможно) В целом безопаснее, так как пользовательские сценарии требуют, чтобы вы писали свои собственные проверки.
  • Я полагаю, что Tower/AWX можно использовать для других команд в нашей организации.

Минусы, как я это вижу:

  • Кривая обучения
  • Придется приложить немало усилий для реализации.
  • «Другая система» для поддержания.

Кто-нибудь уже пробовал Ansible с уже созданной инфраструктурой, плюсы и минусы?

Могу добавить, что я не "самый сильный голос" на своем рабочем месте, а автор кодовой базы "самый старший" из всех нас. Таким образом, задействована иерархия, и мои предложения должны быть хорошо мотивированы, чтобы быть услышанными.

Рад за любую постановку на это.

PS.Ansible может быть любым инструментом автоматизации, в зависимости от вашего опыта. Я только что случайно наткнулся на Ansible.

Michael Hampton avatar
флаг cz
Я бы просто спросил старшего человека, почему он решил свернуть свой собственный вместо того, чтобы использовать что-то вроде ansible. Что бы он ни ответил, не пытайтесь отвечать или спорить.Если он сам не предложил перейти на ансибл в течение 3-6 месяцев, то, вероятно, этого никогда не произойдет. В любом случае обновите свое резюме и убедитесь, что вы активно ищете другие вакансии. Этот может не получиться.
Рейтинг:7
флаг br

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

С практической точки зрения, я бы сказал, что хорошо, что у вас уже есть много «конфигурации в виде кода», и особенно если вы контролируете ее версию в чем-то вроде git, основным фактором, с которым нужно что-то сделать, является читабельность и работа над избавлением от шины фактор:

Для компании плохо, если важные задачи может надежно выполнять только один человек: это не реальная гарантия занятости для человека, но это единственная точка отказа для компании.

Чтобы внедрить новые инструменты, запишите бизнес-кейс, чтобы показать своему руководителю: что вы ожидаете получить и как это повлияет на его прибыль? Создайте доказательство концепции для какой-либо задачи, которую вы регулярно выполняете, и покажите, как инструмент декларативной конфигурации может изменить реализацию или удобочитаемость или обмен навыками между членами команды по сравнению с императивными языками сценариев.

И, конечно же, ничто не говорит о том, что вы должны использовать только один инструмент: сценарии оболочки не обязательно устаревают такими инструментами, как Ansible, но похоже, что в вашей компании то, как они управляются, может замедлять работу.

флаг us
Я не был уверен в том, с какой точки зрения или какой вопрос поднять с моей ситуацией, оказалось, что было несколько упомянутых. Спасибо, что прошлись со мной! Я действительно думаю, что «кодовая база» достаточно хорошо справляется со своей задачей, и я очень уважаю старшего; он и опытный, и умный парень. Хотя может быть и лучше! Я воспользуюсь вашим советом и начну писать пример использования и то, что можно получить, может быть, и демо. Вы можете удаленно выполнять пользовательские сценарии с помощью Ansible, так что, возможно, это может быть способом привлечь старшего на борт. Политика на рабочем месте не облегчает жизнь! Еще раз спасибо!
Рейтинг:1
флаг in

Думаю, стоит поговорить и внимательно выслушать вашего старшего, как вы упомянули, он и опытный, и умный парень.

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

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

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

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

Часто полезно представить короткие POC, в которых вы можете показать, как конкретный инструмент может решить конкретную задачу более разумным способом. Такой подход часто более эффективен для убеждения других, чем обсуждения или документы. Вы также должны активно искать поддержку внутри компании, потому что независимо от того, какой инструмент выбран, важнее всего то, насколько хорошо он принят.

При всем этом - лично мне тоже нравится Ansible, вы уже указали на его преимущества. Однако то, как вы представили ситуацию, предложение Ansible может быть внутренне ошибочно принято за (негативный) революционный шаг или даже за оппозицию.

Суть в том, чтобы слушать и действовать с некоторым тактом. Удачи!

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.