Pull to refresh

Comments 13

В своё время, ещё на заре двухтысячных, не осилив написание чего-то там на bash, ибо громоздко выходило и было не понятно, как всё это поддерживать, взялся за серьезное изучение perl. На нём вышло более презентабельно, и, кажется, более компактно.

Согласен, bash был в начале проекта, далее хотелось перевести на python в силу его простоты (для меня), и использовать pyqt5 вместо графики через zenity.
Но это займет время, а хотелось бы развивать проект в плане функционала, что я и делаю последнее время на заказ. То есть пишут пользователи с просьбой помочь с той или иной функцией, и далее она появляется в приложении.
Благодаря Habr'у, если пойму что спрос больше чем мне казалось, то может займусь наведением красоты и правильности в коде!

Bash - неплохая отправная точка, в плане понимания, чего же мы всё-таки хотим от нашего проекта.

Смещение в сторону питона тоже понятно - всё-таки, не язык для однострочников, да еще и всякие юпитеры при нём, что тоже удобно. Зоопарк из библиотек, правда, может слегка дезориентировать.

Питон проще поддерживать, тем более если когда-то появятся помощники.
С библиотеками все в рамках разумного думаю. Ну и красивая графика поможет пользователям использовать все это в школах, вузах и т.д.
Где системные администраторы либо начинающие, или уже заканчивающие свой путь ( без обид, скорее всего это реальная статистика).
И весь этот софт писался именно как помощник им, а не в прод для больших компаний, где используется уже terraform/opentofu, ansible, salt и т.д.
В продолжение данной статьи расскажу именно о своих плейбуках и исследованиях в ОС. Возможно мои костыли, помогут решить кому-то свои собственные задачи

Не совсем понимаю, какую задачу вы хотите решить с помощью AstraWizard.

- Всю автоматизацию на Linux делает Python.

- Чтобы не разбираться в Python был придуман высокоуровневый инструмент автоматизации Ansible.

- Чтобы не запоминать с какими параметрами запускать плейбуки Ansible был придуман Web интерфейс ansible awx и ansible semaphore.

Конкретно мы в компании используем Jenkins в качестве Web-интерфейса к Ansible. Админ, разработчик или тестировщик могут просто зайти в Jenkins и запустить нужный ранбук. Они просто жмут кнопку и далее происходит вся магия Ansible. Все креды и extra vars вшиты и о них думать не нужно. Если какие-то extra vars нужно заполнить, то jenkins предоставляет для этого красивую форму. В общем, очень удобная связка. По факту Ansible + Jenkins у нас делают то, что вы хотите сделать с помощью AstraWizard.

Настойчиво рекомендую вам познакомиться с ansible semaphore. Он скорее всего закроет все ваши потребности. Если нет, то смотрите тогда в сторону Ansible AWX или связки Ansible + Jenkins.

Добрый день, да все это известно и давно работает, но как давал ответ выше. Вы говорите о проде, вы говорите о людях с базовыми компетенциями ( написание своих плейбуков хотя бы, знание модулей и т.д.).


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


Чаще всего сотрудники там либо молодые и без опыта работы, либо работали всю жизнь с windows и боятся работать с Linux.

И перед ними стоит выбор:
1. развернуть продукты, изучать их связки и работу;

2. базово использовать мой продукт, у которого есть и видео уроки, и код открыт, также как я писал выше я могу оформить любую хотелку также в плейбук и добавить его в AstraWizard.(если данный функционал мне будет интересен и большинству пользователей продукта)

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

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

UFO landed and left these words here

Изобрели maas и foreman, но для более приземленных целей получается... Неплохо, без сарказма) Сам часто о таком задумывался, но слишком тупой чтобы реализовать даже с помощью llm :D

Да, спасибо за понимание.
Все верно, просто помогал людям с которыми работал, а далее с добавлением ansible под капот, решил сделать публичным ПО.
Есть еще множество разработок, о которых собираюсь рассказать в ближайших статьях.
Возможно комьюнити поможет советами, или в комментариях напишут свои *хотелки*, а я реализую.
Мне опыт, людям польза

По опыту работы с астрой вот что заметил - люди которые всю жизнь (20+лет) админили Винду почему-то совсем не могут в x11vnc. Сто раз приходится объяснять как подключиться к текущей сессии пользователя удаленно и прочие гадости творить. Так же без графики не в состоянии по ssh с помощью smbclient забирать файлы с ФС на клиентский пк, например. Уж больно много там всяких ключей, кавычек и экранов для них...

Хотя вижу, что всё впринципе охвачено в этом велосипеде. Даже не знаю... Автоматизация это конечно здорово, главное чтобы со скоростью работы не увеличивалось количество задач =D

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


Когда пользователь его запускает, то у него поднимается сервер vnc, а на экране появляется пароль из 6 цифр и имя пк + ip адрес, чтобы он смог их продиктовать администратору при запросе.

Далее пользователь говорит админу данные цифры, и админ с помощью любой утилиты, которая поддерживает протокол vnc подключается используя имя пк или ip и пароль, который диктует пользователь с экрана.

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

Все уже есть! Исходный код, а также все мои ролики можно найти на гите в проекте.

P.S.

Ссылки на плейлисты, где я рассказываю что умеет AstraWizard, и конечно же показываю

А это вообще работает в контексте именно рабочих мест? Я имею ввиду безагентский push-подход и Ansible в частности.

Это серверы из-за своей бизнес функции имеют постоянную сетевую доступность и покрыты мониторингом. Там безагентский push-подход в целом и Ansible в частности прекрасно работают by design: подавляющее большинство доступно и работает в любой момент времени, а что вот прямо сейчас не работает — на особом контроле.

А с рабочими местами в большинстве своём хаос: в сколько-нибудь крупной организации всегда часть рабочих мест недоступны: сотрудник на выезде с ноутом без сети, болеет, в отпуске, командировке, на обеде, встрече.

И с рабочими местами агентская pull-схема выглядит наиболее рабочей: клиент при первой же возможности тянет (синхронизирует) описание целевого состояния и автономно поддерживает конфиг/состояние рабочего места в требуемом состоянии, а не когда у админа (или Jenkins’а) доходят руки до этого конкретного клиента.

Приветствую, да конечно в больших продах pull модели, задания по крона и тд.

В AstraWizard есть возможность сканирования сети на предмет активных хостов. Также есть логи где можно посмотреть где применились.

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

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

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

Но, в маленьких проектах или небольшим компаниях будет удобно начать админить, тем более в рамках импортозамещения.

Sign up to leave a comment.

Articles