Linux +, что является лучшим подходом для запуска параллельного обновления yum на сотнях машин Linux

У меня около 700 машин RedHat с Linux

и я хочу запустить команды "yum update" на всех них

Я думал о следующем подходе, как описано в моем сценарии

но я не уверен, что "yum update &" в моем сценарии - правильный подход?

& был добавлен в команду для независимого выполнения команды

 more list.txt 

 server1
 server2 
 .
 .

мой сценарий

#!/bin/bash
SSH="/usr/bin/ssh -n -o  ConnectTimeout=5 -o StrictHostKeyChecking=no -xaq"


for server_name in ` cat list.txt `
do

echo "Run yum update on sevrer - $server_name"

$SSH $server_name "yum -y update &"

sleep 0.1

done

Я буду рад узнать другие идеи и предложения о том, как запустить параллельное обновление на 700 компьютерах

2 ответа

Серьезно, в этом масштабе вы должны использовать одну из многих существующих систем управления конфигурациями, таких как chef, puppet, salt,... или инструмент оркестровки, такой как Ansible, Fabric...

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

И в 2016 году я склонен сказать: профессиональная вещь не состоит в том, чтобы написать что-то вместе самостоятельно. Вместо этого профессиональный подход заключается в изучении существующих систем управления конфигурацией; решите, какой из них лучше всего соответствует вашим потребностям, и представьте это своей ферме серверов. И затем использовать его для подобных задач.

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

Другие вопросы по тегам