У меня есть доступ к небольшому пулу Linux из около 20 компьютеров. Я бы хотел придумать просто и легко настроить решение, которое позволяет мне
Мне известно о ландшафте Ubuntu, но это решение для меня слишком дорогое.
Сейчас я вручную развертываю новые установки и управляю компьютерами с cssh но это решение не кажется практичным в долгосрочной перспективе.
Развертывание той же установки на новые машины, вероятно, может быть достигнуто с помощью PXE
но как насчет keeping systems up to date and properly configured
часть? Есть ли какие-нибудь простые в настройке и использовании решения? Я в курсе Кукольный что мне кажется слишком раздутым, но, возможно, я ошибаюсь.
Буду рад услышать от вас о ваших решениях!
Вы можете взглянуть на Ansible. Вы можете использовать его как инструмент оркестровки, чтобы иметь возможность запускать:
ansible webservers -m apt -a "name=apache2 state=latest"
Или что-то подобное, предварительно определив «веб-серверы»
[webservers]
www1.example.com
www2.example.com
Другой вариант - Поваренная соль, но я использовал Salt в прошлом и временами обнаруживал, что он нестабилен.
Просто потратьте немного времени и узнайте кукловод. После того, как вы привыкнете к основным концепциям, работать станет прекрасным и в конечном итоге значительно упростит вам жизнь.
Если у вас всего 20 компьютеров, вы можете просто настроить аутентификацию с помощью /root/.ssh/authorized_keys
и когда вам нужно внести изменения во все из них, просто используйте сценарий на вашем управляющем компьютере, например:
for hostname in hostname1 hostname2 hostname3 hostname4; do
ssh "root@$hostname" apt-get install something
done
Проблема в том, что все компьютеры должны быть запущены. Вы можете использовать, например, Wake on Lan, чтобы запустить их.