docs: create sysadmin/Linux/Base-znaniy/Foreman
parent
4ea297e3e9
commit
c34382d54b
|
|
@ -0,0 +1,35 @@
|
|||
<!--
|
||||
title: Foreman - централизованное управление серверами
|
||||
description:
|
||||
published: true
|
||||
date: 2023-11-15T18:15:38.027Z
|
||||
tags:
|
||||
editor: ckeditor
|
||||
dateCreated: 2023-11-15T18:15:38.027Z
|
||||
-->
|
||||
|
||||
<p>Для централизованного управления серверами и автоматизации задач существует старый и известный open source проект Foreman. Думаю, многие о нём слышали или знают. Он существует более 10-ти лет. В сети много информации по нему. Есть как текстовые руководства, так и курсы на Udemy за весьма небольшие деньги. То есть освоить этот продукт, если есть необходимость, не трудно.</p>
|
||||
<p>Я развернул его у себя на Debian 11 и потестировал. Установка простая, так как есть готовый репозиторий и автоматический установщик. Единственное, нужно убедиться, что у вас hostname имеет формат FQDN, так как в процессе установки будет выпущен самоподписанный tls сертификат, который хочет полное доменное имя, типа debian11.local, если запускаете в тестовой среде.</p>
|
||||
<pre><code class="language-plaintext">wget https://apt.puppet.com/puppet6-release-buster.deb
|
||||
|
||||
dpkg -i /tmp/puppet6-release-buster.deb
|
||||
|
||||
echo "deb http://deb.theforeman.org/ buster 3.1" | tee /etc/apt/sources.list.d/foreman.list
|
||||
|
||||
echo "deb http://deb.theforeman.org/ plugins 3.1" | tee -a /etc/apt/sources.list.d/foreman.list
|
||||
|
||||
apt-get -y install ca-certificates gpg
|
||||
|
||||
wget -q https://deb.theforeman.org/pubkey.gpg -O- | apt-key add -
|
||||
|
||||
apt update && apt install foreman-installer
|
||||
|
||||
foreman-installer</code></pre>
|
||||
<p>Это всё. Несмотря на то, что в репе указан buster, на bullseye нормально установился. Можно идти в веб интерфейс и настраивать. Адрес сервера и учётка будут отображены в консоли.</p>
|
||||
<p>Foreman по дефолту работает на основе puppet, но может использовать и ansible. Далее вам нужно либо puppet-agent, либо ansible поставить на клиентские хосты, чтобы добавить их в Foreman и управлять. В сети инструкций много, проблем с настройкой возникнуть не должно. Есть подробное и свежее руководство даже под AstraLinux (<a href="https://wiki.astralinux.ru/pages/viewpage.action?pageId=57444668">https://wiki.astralinux.ru/pages/viewpage.action?pageId=57444668</a>).</p>
|
||||
<p>После этого пишите манифесты на выполнение тех или иных действий и применяете их к хостам или группам хостов. С помощью Foreman можно как конфигурировать существующие хосты, так и разворачивать новые, в том числе в автоматическом режиме. Посмотреть, как это выглядит в реальности можно в большой подборке скринкастов (<a href="https://theforeman.org/media.html#screencasts">https://theforeman.org/media.html#screencasts</a>).</p>
|
||||
<p>Чтобы быстро развернуть и попробовать функционал по управлению, посмотрите эту статью (<a href="http://ittraveler.org/ustanovka-i-nastrojka-foreman-puppet/">http://ittraveler.org/ustanovka-i-nastrojka-foreman-puppet/</a>). Тут прям конкретные примеры с манифестами и модулями puppet для выполнения различных действий на хостах. Я попробовал два примера. Один с обновлением серверов времени. Второй с созданием файлов. В целом понял, как всё это примерно работает.</p>
|
||||
<p>Раньше puppet вообще ни разу не видел. Сейчас посмотрел, как у него манифесты и модули выглядят. Показалось проще и нагляднее, чем в ansible. Прям даже попробовать захотелось. Хотя очевидно, что смысла большого нет. Ansible более распространён, а изучать и использовать обе системы незачем.</p>
|
||||
<p>Сайт - <a href="https://theforeman.org/">https://theforeman.org/</a><br>Исходники - <a href="https://github.com/theforeman/foreman">https://github.com/theforeman/foreman</a></p>
|
||||
<figure class="image"><img src="/attachments/base/3.png"></figure>
|
||||
<p><br> </p>
|
||||
Loading…
Reference in New Issue