Как установить программу в (K)ubuntu минимумом движений сразу на 100 машин ?

Изображение пользователя balamutick.

Как установить программу в (К)ubuntu минимумом движений сразу на 100 машин ?

Услышал такое мнение: просто я знаю, что эта задача в винде решается в пределах 10 кликов мышью при наличии MSI-пакета и задумался, а как же собственно...

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

Так как оно делается по уму ?

Вариант1:

Сайт Linux по-русски:Одновременное управление несколькими серверами
Предложил: ravennick

Вариант2:

Сайт Debian School: Массовое управление компьютерами ?
Предложил(а): maroshka

+2
ktchv - 16 Сентябрь, 2009 - 08:03
Изображение пользователя ktchv.

ничего в этом не понимаю, но пришла такая идея:

есть центральный сервак. на нем есть, грубо говоря, apache, который по некоему логину/паролю будет кого-то пускать. на апаче лежит daily.sh. одмин если надо пишет в него некий скрипт.

на каждом юзерском компе в cron под root'ом кладем простенький скрипт, который будет по https с сервака грузить этот daily.sh и выполнять. если daily.sh не обнаружен, ничего естественно не делать.
в daily.sh кладем какие угодно команды. в частности установки нужной проги.

плюс можно заделать такое.

на юзерском компе в кроне (точнее внутри скрипта) выполнять в таком режиме:

root$: daily.sh > %compname%-%time%.log

и лог по ftp грузить на центральный сервер для дебага. собственно всё автоматизируем с помощью чудо-скрипта для крона.

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

0
ktchv - 16 Сентябрь, 2009 - 11:50
Изображение пользователя ktchv.

а можно вообще без апача. всё на ftp.

да еще и разширить - на фтп скрипты хранить по неким группам.

/pub/all/ - к примеру, кладем скрипт для всех компов.
/pub/%groupname%/ - для специфичной группы компов.
/pub/logs/ - сюда пусть аплоадят отчеты. причем можно автоматом логи сравнивать с "шаблоном". если лог содержит не то, что надо - сказать об этом админу.

0
Jeison - 20 Сентябрь, 2009 - 23:18

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

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

0
Soi-Fong - 21 Сентябрь, 2009 - 00:15
Изображение пользователя Soi-Fong.

Осталось настроить rsync, cron и этот скрипт на 100 машинах :)

0
balamutick - 21 Сентябрь, 2009 - 10:59
Изображение пользователя balamutick.

Мне кажеться или именно такие решения на жаргоне называют "Костыль" ? :-)

+1
urusha - 21 Сентябрь, 2009 - 14:56
Изображение пользователя urusha.

AD по-вашему вся на си писана? Политики - vb скрипты и тд... rsync не rsync, а будет это все равно набор скриптов, проверяющих что-то где-то + ключи, набор грамотных алиасов и тд.... Наверняка даже уже есть готовые решения для этого, да еще и с царским веб интерфейсом.
А по поводу первоначальной установки: если все машины находятся территориально рядом (в одном здании) можно замутить терминалку с tftp и загрузить первоначальные настройки. А если машины в разных местах - не меньше возни чем с ад: Если samba - DC, с ее помощью можно выполнять скрипты при определенных действиях.
Думать больше надо - это да) но так и система в разы гибче получается.
В-общем, изобразите конкретную ситуацию - можно будет накидать что-нибудь.

0
balamutick - 21 Сентябрь, 2009 - 15:35
Изображение пользователя balamutick.

Поставить на 100 машин по всей стране, такой как РФ. На каждый компьютер wine.
Поставить на 100 машин по всей стране, такой как РФ. На каждом компьютере задать свой прокси сервер или какой-либо другой системный параметр.
Поставить на 100 машин по всей стране, такой как РФ. Каждому пользователю бухгалтеру, группу бухгалтеры, каждому дизайнеру группу дизайнеры.

З.Ы. не знаю. может задачи тупые получились, но думаю примерно понятно, что надо.

+3
urusha - 21 Сентябрь, 2009 - 17:30
Изображение пользователя urusha.

1. Настраиваем ssh сервер, добавляем юзера mr_installer с шелом, в котором можно только sftp - rssh. Ключ-пароль для аккаунта (активность) создается по запросу и удаляется при удачном завершении пункта 2 или по таймауту.
2. Скидываем каким-нибудь образом ключ или пароль каждому компу, там юзер или местный эникейшик выполняет команду (с уникальным кодом для генерации личного конфига), которая a)кидает в /etc/cron.d/mr_installer запись о неком скрипте (например, в 10 и 16 часов); б) скачивает по sftp скрипт ( /usr/local/bin/mr_installer.sh); в) скачивает ключ для рабочего аккаунта. г) отписывается серваку что все ок - можно удалять пароль.
3. Скрипт (запускается с аргументом типа номерфилиала_номерюзера_номерматплаты):
подключается к тому же серверу под рабочим аккаунтом (master_installer)
проверяет удачно ли выполнился скрипт в прошлый раз, если да, то проверяет наличие обновлений мастер_скрипта (который сидит на сервере), например, по motd или имени мастер_скрипта и дергает новый если ч0 по тому же sftp и выполняет. Если неудачно напоминаем о себе админу и завершаемся...
выполняет мастер_скрипт (с аргументом юзера)
отписывается - как прошло.
4. Мастер_скрипт:
1) делает общие для всех изменения: тянет вайн || добавляет-изменяет репы в /etc/apt/sources.list.d/installer.list и тп
2) узнает че за аргумент и ищет личные задания для данного юзера в /etc/installer.d/...: настройки прокси, группа пользователя (usermod) и тп
5. Создаем что-то вроде либы-шаблона, по которому будут генериться все задания в /etc/installer.d/ со строчками типа:
if [ $wine_install = "YES" ] then apt-get install wine #и тп
в конфигах (заданиях) пользователей будет:
wine_install="YES" #и тп
6. Вопросы....
Если очень надо налабаю примерненько на sh...

+4
ravennick - 24 Сентябрь, 2009 - 21:03
Изображение пользователя ravennick.

Ознакомьтесь пожалуйста.

0
balamutick - 8 Сентябрь, 2010 - 15:47
Изображение пользователя balamutick.

Наш софорумчанин(чанка) maroshka подсказала хорошую ссылку:
10. Уже не помню где читал, но есть удобная вешь - ubuntu управления всех клиентских машин в целом, группой через ssh, что избавляет вообще от геморроя чтото настраивать по отдельности. http://sites.google.com/site/debianschool/skolam/kak-vyklucit-srazu-vse-komputry

Все лавры ей.
А я её сюда кинул, чтобы релевантно было с названием и смыслом темы.

0
vap - 9 Сентябрь, 2010 - 08:02
Изображение пользователя vap.

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

0
balamutick - 9 Сентябрь, 2010 - 08:16
Изображение пользователя balamutick.

В тело это вверх самый ?
Комментарии я не по теме потру.

А вот своровать у меня не получилось адекватно, даже копированием исходного кода выходит как-то криво.

0
knuckles - 9 Сентябрь, 2010 - 08:16

Да вообще, Баламутик, публикуй в своем блоге и в подшивку ;-) Это ж какая радость админам будет!

0
Voyageur - 9 Сентябрь, 2010 - 12:08
Изображение пользователя Voyageur.

Да, я ссылку в закладки добавил, но считаю, что в подшивке она нужна!)

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