| Оглавление |
|---|
| Информация | ||
|---|---|---|
| ||
| Предупреждение |
|---|
| При работе в Astra Linux Special Edition x.7.0 и x.7.1 подключить расширенный репозиторий, для обновлений выпущенный ранее обновления обновления БЮЛЛЕТЕНЬ № 2022-0819SE17 (оперативное обновление 1.7.2) также также подключить компонент расширенного репозитория astra-ce (см. Репозитории Astra Linux Special Edition x.7: структура, особенности подключения и использования). |
| Информация | ||
|---|---|---|
| ||
|
Аннотация
Puppet — нструмент управления конфигурацией, позволяющий системным администраторам автоматизировать предоставление, настройку и управление серверной инфраструктурой. Требует установки агентского ПО на управляемые компьютеры. Puppet позволяет описывать желаемое состояние систем в виде кода и применяет этот код для настройки серверов, рабочих станций и т. д. Puppet функционирует по принципу взаимодействия двух компонентов: Puppet Server и Puppet Agent. Puppet Server выступает в роли центрального узла, который хранит конфигурации и управляет их распространением. Puppet Agent работает на управляемых узлах и отвечает за применение конфигураций, полученных от сервера.
Основные термины:
- Агент (Agent) — компонент Puppet, работающий на управляемых узлах. Агент периодически отправляет запросы на сервер для получения обновлений и отправляет отчеты о состоянии системы после применения изменений.
- Сервер (Server) — центральный компонент Puppet, который хранит и распространяет конфигурации по запросу агентов.
- Манифест (Manifest) — файл с расширением .pp, содержащий описание желаемого состояния системы на декларативном языке Puppet DSL.
- Модуль (Module) — структурированный набор манифестов, файлов и шаблонов для решения конкретной задачи. Существуют готовые модули Puppet.
- Ресурс (Resource) — единица конфигурации в Puppet (например, файл, пакет, служба). Puppet Agent проверяет состояние каждого ресурса перед выполнением действий из манифеста.
Принцип работы Puppet:
- Описание состояния. Администратор описывает желаемое состояние системы в манифесте.
- Распространение конфигурации. После запроса агентов Puppet Server распространяет на них манифесты, содержащие программную конфигурацию операционной системы.
- Применение изменений. Puppet Agent применяет изменения для достижения желаемого состояния операционной системы.
- Проверка соответствия. Puppet Agent периодически проверяет соответствие текущего состояния системы заданному. Если Puppet Agent не может получить обновления от сервера то, по умолчанию, система остаётся в состоянии, актуализированном на момент последнего успешного запроса.
Взаимодействие между сервером и агентами осуществляется через HTTPS (порт 8140) с использованием SSL/TLS. Puppet Server выполняет роль центра сертификации, управляя подписью сертификатов агентов для аутентификации.
Описание стенда
| Параметр | Puppet Server(сервер) | Puppet Agent(агент) |
| Имя узла | master.astra.lan | agent1.astra.lan |
| Статический IP-адрес узла | 10.0.2.120 | 10.0.2.121 |
На стенде отсутствует настроенный DNS-сервер, поэтому для разрешения IP-адресов используются файлы /etc/hosts на сервере и на клиенте.
| Информация |
|---|
| На сервере должно быть установлено не менее 3ГБ оперативной памяти. |
Настройка стенда
Для правильной работы служб Puppet Server и Puppet Agent необходимо настроить разрешение имён одним из способов:
- либо в службе DNS;
- либо указать адреса и имена узлов в файлах
/etc/hostsна всех узлах (этот вариант используется в данной статье):
| Предупреждение |
|---|
В Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.7) и более ранних обновлений необходимо задать полное имя узла сервера как |
| Блок кода | ||
|---|---|---|
| ||
127.0.0.1 localhost 10.0.2.120 master.astra.lan master puppet 10.0.2.121 agent1.astra.lan agent1 # The following lines are desirable for IPv6 capable hosts ::1 localhost ip6-localhost ip6-loopback ff02::1 ip6-allnodes ff02::2 ip6-allrouters |
| Command |
|---|
sudo hostnamectl set-hostname master.astra.lan |
и на агенте:
| Command |
|---|
sudo hostnamectl set-hostname agent1.astra.lan |
Если включен межсетевой экран, то на узлах необходимо разрешить коммуникации через порт 8140. Для сетевого экрана ufw:
| Command |
|---|
sudo ufw allow 8140 |
Установка Puppet Server
- Для установки выполнить на сервере следующие команды:
Command sudo apt update
sudo apt install default-jre-headless puppetserverУказание пакета в команде установки пакета openjdk-jre-headless необходимо для того, чтобы он обновился из расширенного репозитория если был установлен ранее.
- Разрешить автоматический запуск Puppet Server и запусть запустить его:
Command sudo systemctl enable puppetserver
sudo systemctl start puppetserver - Проверить статус службы:
Command Title systemctl is-active puppetserver active
Информация После запуска Puppet Server самостоятельно выпустит собственный сертификат и подпишет его. Сертификат сервера может появиться не сразу, а в течении одной минуты.
- Проверить наличие сертификата сервера:
Command Title sudo puppetserver ca list --all Signed Certificates:
master.astra.lan (SHA256) D0:9D:AC:79:E4:C0:23:D2:42:EC:B0:1E:A0:5B:BB:EC:D9:B0:14:90:2A:8B:E3:E1:E4:76:E6:6A:BA:9B:86:4B
Для Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.7) и более ранних обновлений:
Command sudo /opt/puppetlabs/bin/puppetserver ca list --all
Получить общую справку для puppetserver можно выполнив puppetserver --help или puppetserver <имя параметра> --help для конкретного параметра.
Установка Puppet Agent
Для Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.7) и более ранних обновлений это команды
| Command |
|---|
| /opt/puppetlabs/bin/puppetserver --help |
или
| Command |
|---|
| /opt/puppetlabs/bin/puppetserver <имя параметра> --help |
Установка Puppet Agent
| Информация |
|---|
Шаги инструкции |
| Информация |
Шаги инструкции из данного раздела необходимо будет выполнить для каждого агента. |
- Указать имя сервера в конфигурационном файлеДля установки выполнить на агентах следующие команды:
Command sudo apt update
sudo apt install puppet-agent - Указать имя сервера в конфигурационном файле:
ГдеБлок кода Блок кода title /etc/puppet/puppet.conf server = master.astra.lan show_diff = trueshow_diff— параметр, указывающий инструменту выводить подробную информацию об изменениях в конфигурации клиента в ходе выполнения манифестов. Параметр применяется при настройке и отладке.Предупреждение Для Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.7) и более ранних обновлений в пути каталогов указывается каталог /etc/puppetlabs/puppet вместо /etc/puppet.
- Разрешить автоматический запуск службы Puppet Agent и запустить её:
Command sudo systemctl enable puppet
sudo systemctl start puppet - Проверить статус службы:
Command Title systemctl is-active puppet active
Создание псевдонимов для запуска старых версий Puppet Server и Puppet Agent
- Узнать версию
puppet:Command puppet --version
- Получить общую справку для
puppet:Command puppet --help
- Проверить настроено ли SSL-соединение между агентом и сервером:
Command puppet ssl verify
- Отобразить информацию о настройках агента:
Command puppet config print
- Выполнить однократный тестовый запрос без применения изменений:
Command puppet agent --test --noop
Параметр
--noopуказывает агенту не применять изменения.
Создание псевдонимов для запуска старых версий Puppet Server и Puppet Agent
В Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.7) и более ранних обновлений используется запуск инструметов Puppet с указанием полного пути до исполняемых файлов:В Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.7) и более ранних обновлений используется запуск инструментов Puppet с указанием полного пути до исполняемых файлов: /opt/puppetlabs/bin/puppetserver и /opt/puppetlabs/bin/puppet. Пример:
| Command | ||
|---|---|---|
| ||
6.28.0 |
Чтобы упростить дальнейшую работу с инструментом рекомендуется создать ссылки с сокращенными названиями puppetserver и puppet соответственно:
- Проверить наличие исполняемого файла на сервере и клиентах в каталоге:
Command Title ls /opt/puppetlabs/bin/puppetserver /opt/puppetlabs/bin/puppetserver
- Создать сокращенную ссылку для
puppet(на сервере и клиентах):Command sudo ln -s /opt/puppetlabs/bin/
puppet /
usr/
local/bin/puppet
- Создать сокращенную ссылку для
puppetserver(на сервере):Command sudo ln -s
| Command | ||
|---|---|---|
| ||
6.28.0 |
Чтобы упростить дальнейшую работу с инстументом рекомендуется создать ссылки с сокращенными названиями puppetserver и puppet соответственно:
- Проверить наличие исполняемого файла на сервере и клиентах в каталоге:
Создать сокращенную ссылку дляCommand Title ls/opt/puppetlabs/bin/puppetserver
/optusr/puppetlabslocal/bin/puppetserver
puppet(на сервере и клиентах)
Настройка Puppet Agent
- Узнать версию
puppet:Command
sudo ln -s /opt/puppetlabs/bin/puppet /usr/local/bin/puppet
puppet (на сервере)puppet --version
- Получить общую справку для
puppet:Command
sudo ln -s /opt/puppetlabs/bin/puppetserver /usr/local/bin/puppetserver
puppet --help
- Проверить настроено ли SSL-соединение между агентом и сервером:
Command sudo puppet ssl verify
- Отобразить общесистемную информацию о настройках агента:
Command sudo puppet config print
- Выполнить однократный тестовый запрос без применения изменений:
Command sudo puppet agent --test --noop
Параметр
--noopуказывает агенту не применять изменения.
Подписание сертификата агента
Подписание сертификата агента
- При первом запуске клиентская служба Puppet Agent отправит на Puppet Server запрос на подпись сертификата. Для просмотра списка запросов на подпись сертификата выполнить на сервере следующую команду:
В примере выше сервер сообщает, что у него имеется один запрос на подпись сертификата от клиента с именемCommand Title sudo puppetserver ca list Requested Certificates: agent1.astra.lan (SHA256) 9A:FD:EA:3D:2E:41:A5:11:A1:F7:61:6B:2E:E5:95:BD:81:63:5A:66:0D:93:D2:E0:4A:D9:81:E3:73:8F:0B:6C
agent1.astra.lan.Информация Запрос на подписание при первой установке может приходить с временной задержкой до 5 мин.
- Подписать сертификат на сервере:
Имя узла в данном примере этоCommand Title sudo puppetserver ca sign --certname agent1.astra.lan<имя_узла> Successfully signed certificate request for agent1.astra.lan
agent1.astra.lan.- Чтобы вручную отправить запрос выполнить при первом запуске на агенте:
Command sudo puppet agent --test --waitforcert 60
Где
--testоднократный запрос конфигурации с сервера,--waitforcert 60ожидание подписания сертификата агента сервером в течении 60 секунд.
После отправленного вручную запроса сертификат так же необходимо подписать на сервере.
- Чтобы вручную отправить запрос выполнить при первом запуске на агенте:
- Повторно проверить перечень сертификатов на сервере:
Command Title sudo puppetserver ca list --all Signed Certificates:
master.astra.lan (SHA256) D0:9D:AC:79:E4:C0:23:D2:42:EC:B0:1E:A0:5B:BB:EC:D9:B0:14:90:2A:8B:E3:E1:E4:76:E6:6A:BA:9B:86:4B
alt names: ["DNS:puppet", "DNS:master.astra.lan"] authorization extensions: [pp_cli_auth: true]
agent1.astra.lan (SHA256) 9A:FD:EA:3D:2E:41:A5:11:A1:F7:61:6B:2E:E5:95:BD:81:63:5A:66:0D:93:D2:E0:4A:D9:81:E3:73:8F:0B:6C
Для проверки правильности работы агента на клиентской машине после подписания сертификата можно выполнить следующие команды на агенте:
Остановить службу:
Command sudo systemctl stop puppet
Выполнить тестирование работы службы, в процессе которого служба запросит и получит сертификат:
Command Title sudo puppet agent --test Info: csr_attributes file loading from /etc/puppetlabs/puppet/csr_attributes.yaml
Info: Creating a new SSL certificate request for agent1.astra.lan
Info: Certificate Request fingerprint (SHA256): 9A:FD:EA:3D:2E:41:A5:11:A1:F7:61:6B:2E:E5:95:BD:81:63:5A:66:0D:93:D2:E0:4A:D9:81:E3:73:8F:0B:6C
Info: Downloaded certificate for agent1.astra.lan from puppet
Info: Using configured environment 'production'
Info: Retrieving pluginfacts Info: Retrieving plugin
Info: Retrieving locales
Info: Caching catalog for agent1.astra.lan
Info: Applying configuration version '1568370748'
Info: Creating state file /opt/puppetlabs/puppet/cache/state/state.yaml Notice: Applied catalog in 0.02 secondsПовторно запустить службу:
Command sudo systemctl start puppet
Чтобы получить информацию о нужном сертификате нужно выполнить на сервере или агенте:
| Command |
|---|
puppet config print certname <имя узла> |
- Для Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.7) и более ранних обновлений:
Command puppet agent --configprint certname <имя узла>
Перевыпуск сертификата агента
- Удалить текущие сертификаты:
- на агенте:
Command sudo rm -rf /etcvar/puppetlabslib/puppet/ssl/*
- Для Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.7) и более ранних обновлений выполнить последовательно:
Command sudo rm -rf /etc/puppetlabs/puppet/ssl/
sudo mkdir /etc/puppetlabs/puppet/ssl/
- Для Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.7) и более ранних обновлений выполнить последовательно:
- на сервере:
на сервере:Command sudo puppetserver
для удаления всех сертификатов применить опциюCommand sudo puppetserver ca clean --certname <имя_узла>
--allвместо указания имени узла.
- на агенте:
- Повторно запросить подпись сертификата на агенте:
Command sudo puppet agent -tv
Где
-tvэто одноразовый запрос (test) и подробный вывод информации (verbose) соответственно.
Назначение каталогов Puppet
Для организации размещения модулей, манифестов и других необходимых для работы файлов Puppet использует систему каталогов. Ниже приведено описание основных каталогов сервера Основные каталоги:
/etc/puppet— основной каталог для конфигурации Puppet. Каталог содержит файлpuppet.conf— главный конфигурационный файл Puppet, где задаются параметры работы агента и сервера;.- /
var/etclib/puppet/ssl— сертификаты, ключи и запросы принятый по умолчанию в Astra Linux Special Edition 1.8 каталог общесистемных сертификатов, ключей и запросов на сертификаты для всех узлов; /var/log/puppetserver/иvar/puppet/журналы Puppet Server и Puppet Agent соответственно;- . В Astra Linux Special Edition 1.7)и более ранних обновлениях используется каталог
/etc/puppetlabs/puppet/ssl. ~/.puppet/etc/ssl— приватные ключи узла, необходимые для применения на агентах манипуляций, доступных без прав администратора. Находится в домашнем каталоге учётной записи пользователя, из которой были установлены Puppet Server или Puppet Agent;/var/log/puppetserver и /var/puppet— каталоги журналов Puppet Server и Puppet Agent соответственно;/etc/puppet/code/environments/production/manifests/— каталог для манифестов по умолчанию. Каталог/etc/puppet/code/environmentsпозволяет группировать/etc/puppet/code/environments/manifests/Каталог /environmentsпозволяет группировать и независимо выполнять разные наборы манифестов, т.е. определить окружение конфигураций. Если каталог после установки отсутствует, его необходимо создать:Command sudo mkdir -p /etc/puppet/code/environments/production/manifests/
| Предупреждение |
|---|
Для В Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.7 ) и более ранних обновлений в пути каталогов указывается каталог /puppetlabs вместе или дополнительно к /puppet . Примервместо или в дополнение к каталогу /etc/puppet используется каталог /etc/puppetlabs. Например: /etc/puppetlabs/code, /etc/puppetlabs/puppet, /var/puppetlabs/puppet/и и т. д. |
sudo mkdir /manifests//testingCommand Command sudo mkdir -p /etc/puppet/code/environments/testing/manifests
- Определить используемое окружение:
- Либо на агентах указать
- параметр, определяющий окружение для клиентов в основном конфигурационном файле
- Puppet на агентах, которым требуется отличное от основного окружение:
Блок кода title sudo nano /etc/puppet/puppet.conf [agent] environment =
testing- Либо на сервере Альтернативный способ определить параметр через указание его для клиентов с определенными именами узлов в основном манифесте на сервере:
Блок кода title sudo nano /etc/puppet/code/environments/production/manifests/production/site.pp node 'agent1.astra.lan' { environment = 'testing' }
Выполнение манифестов
Манифест Puppet по умолчанию /etc/puppet/code/environments/production/manifests/site.pp. Файл отсутствует сразу при установке и создается пользователем при настройке Puppet Server. Каталог Каталог /etc/puppet/manifests/code/environments/production/manifests/ может содержать несколько файлов .pp которые определяются инструментом используются как единое пространство с инструкциями.
| Предупреждение |
|---|
В манифестах для одной группы узлов не должно быть ресурсов одинакового типа с одинаковым названием. |
По умолчанию синхронизация Puppet-агентов с Puppet-сервером происходит каждые 30 минут. При отклонении состояния агентов от заданного в манифестах состояния происходит выполнение заданных в них инструкций.
Чтобы изменить период обновления, нужно указать его в файле агента /etc/puppetlabspuppet/puppet.conf, добавив параметр runinterval=<время> в секундах (900), минутах (15m) или часах (1h).
Можно использовать команду на агенте:
| Command |
|---|
puppet config set runinterval <время_в_секундах> |
Вручную обновить перечень манифестов на агенте :
| Command |
|---|
sudo puppet agent -tv |
Для выполнения отдельного манифеста в целях тестирования выполнить на сервере:
| Command |
|---|
sudo puppet apply <манифест>.pp |
Манифесты Puppet имеют расширение .pp и по умолчанию создаются в каталоге /etc/puppet/code/environments/production/manifests на сервере:
| Command |
|---|
sudo nano /etc/puppet/code/environments/production/manifests/test.pp |
- Для Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.7) и более ранних обновлений:
Command sudo nano /etc/puppetlabs/code/environments/production/manifests/test.pp
Дополнительно в инструкциях манифеста могут указываться ссылки на сценарии .sh из каталога по умолчанию /etc/puppetlabs/puppet/files. При отсутствии каталога /files его необходимо создать на сервере вручную:
| Command |
|---|
sudo mkdir /etc/puppet/files |
- Для Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.7) и более ранних обновлений:
Command sudo mkdir /etc/puppetlabs/puppet/files
| Информация |
|---|
Для задач, которые не требуют административных прав на агенте, манифесты могут выполняться без прав администратора с помощью puppet apply <манифест>.pp или puppet agent -t без sudo. |
Получить список доступных для манифестов ресурсов ресурсов на сервере:
| Command |
|---|
puppet resource --types |
Получить описание ресурса на сервере:
| Command |
|---|
puppet describe <название_ресурса> |
Проверить синтаксис манифеста перед его выполнением можно командой на сервере:
| Command |
|---|
puppet parser validate <путь_до_манифеста> |
Пример создания тестового манифеста
На клиенте:
- Проверить отсутствие ранее не созданного текстового файла:
Command Title test -f /tmp/hello_puppet.txt && echo "Файл существует" || echo "Файл не существует" Файл не существует
- Проверить отсутствие ранее не установленного инструмента, например
tree:Command Title tree bash: tree: команда не найдена
На сервере:
Создать основной файл манифеста с содержимым:
| Блок кода | ||
|---|---|---|
| ||
# 1. Установка инструмента tree
package { 'tree':
ensure => installed, # Убедиться, что пакет установлен
}
# 2. Создание файла /tmp/hello_puppet.txt с содержимым
file { '/tmp/hello_puppet.txt':
ensure => file, # Убедиться, что это файл
content => "Hello, Puppet!\n", # Содержимое файла
mode => '0644', # Права доступа к файлу
owner => 'root', # Владелец файла
group => 'root', # Группа файла
} |
На клиенте:
Применить тестовый манифест:
| Command |
|---|
sudo puppet apply /etc/puppet/code/environments/production/manifests/test.pp |
или:
| Command |
|---|
sudo puppet agent -tv |
puppet apply /etc/puppet/code/environments/production/manifests/test.pp |
или:
| Command |
|---|
sudo puppet agent -tv |
- Для Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.7) и более ранних обновлений:
Command sudo puppet apply /etc/puppetlabs/code/environments/production/manifests/test.pp
Далее повторно проверить наличие текстового файла и установленного инструмента на клиенте.
Модули Puppet
Модули Puppet позволяют повторно использовать ранее созданные решения по конфигурации узлов с помощью Puppet. Модуль Puppet представляет собой пакет, который содержит все необходимые файлы, манифесты, шаблоны и данные для достижения определенного состояния операционной системы на клиенте (например, автоматизированная установка и настройка Nginx, Apache, MySQL или других инструментов). Модули Puppet загружаются со стороннего ресурса https://forge.puppet.com/modules — централизованного хранилища готовых модулей. Модули устанавливаются только на сервере.
Puppet использует параметр modulepath для определения порядка поиска модулей. Этот параметр можно проверить с помощью команды:
| Command |
|---|
sudo puppet config print modulepath |
Puppet при выполнении манифестов будет искать модули в следующем порядке:
- Загруженные модули (
/etc/puppet
/code/environments/production/modulesили/opt/
puppet/modules). Установленные сторонние модули. Используется для работы с модулями по умолчанию.- Стандартные модули (
/usr/share/puppet/modules). Модули доступные после установки Puppet Server. - Пользовательские модули (
~/.puppet/code/modules). Модули, доступные для конкретной учётной записи, в которой установлен Puppet Server. Их удаление или установка из этой учётной записи не требуют прав администратора. Используется для ограничения доступа к конкретным модулям, создания и отладки собственных модулей или для дополнительного контроля при использовании нескольких окружений (environment).
Если модуль существует в нескольких директориях, Puppet выберет первый найденный (по порядку в modulepath). Внутри модули организованы в виде каталогов.
Далее повторно проверить наличие текстового файла и установленного инструмента на клиенте.
Модули Puppet
Модули Puppet позволяют повторно использовать ранее созданные решения по конфигурации узлов с помощью Puppet. Модуль Puppet представляет собой пакет, который содержит все необходимые файлы, манифесты, шаблоны и данные для достижения определенного состояния операционной системы на клиенте (например, автоматизированная установка и настройка Nginx, Apache, MySQL или других инструментов). Модули Puppet загружаются со стороннего ресурса https://forge.puppet.com/modules — централизованного хранилища готовых модулей. Модули устанавливаются только на сервере. Модули организованы в виде каталогов.
| Раскрыть | ||
|---|---|---|
| ||
|
Работа с
модулямимодулями Puppet
На сервере:
- Список установленных модулей:
Command sudo puppet module list
Чтобы уточнить перечень модулей, доступных только текущей учётной записи нужно выполнить команду без
sudo.Предупреждение Для поиска и установки готовых сторонних модулей требуется подключение сервера к сети Интернет. Перед установкой модуля следует учитывать его совместимость с версией Puppet.следует учитывать его совместимость с версией Puppet.
- Для Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.7) и более ранних обновлений. Поиск модуля по ключевому слову:
Command puppet module search <ключевое_слово>
- Для Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.7) и более ранних обновлений. Поиск модуля по ключевому слову:
- Установка модуля:
Command sudo puppet module install <название_модуля>
- Удаление модуля:
Command sudo puppet module uninstall <название_модуля>
Подробная справка о работе модулей доступна по команде man puppet-module.
Пример использования модуля
Установка и настройка на агенте веб-сервера Apache с помощью модуля модуля puppetlabs-apache:
На сервере:
- Установить модуль:
Command Title sudo puppet module install puppetlabs-apache Notice: Preparing to install into /home/testadmin/.puppetlabs/etc/code/modules ...
Notice: Created target directory /home/testadmin/.puppetlabs/etc/code/modules
Notice: Downloading from https://forgeapi.puppet.com ...
Notice: Installing -- do not interrupt ...
/home/testadmin/.puppetlabs/etc/code/modules
└─┬ puppetlabs-apache (v12.3.1)
├── puppetlabs-concat (v9.1.0)
└── puppetlabs-stdlib (v9.7.0) - Создать манифест site.pp. В примере манифест предназначен для клиента с именем agent1.astra.lan:
Применить манифест на агентеБлок кода title /etc/puppetlabspuppet/code/environments/production/manifests/test.pp node 'agent1.astra.lan' { class { 'apache': default_vhost => true, mpm_module => 'prefork', } } - Для применения манифеста к агенту выполнить команду:
- Для Astra Linux Special Edition 1.8:
Command sudo puppet apply /etc/puppet/code/environments/production/manifests/site.pp
- Для Astra Linux Special Edition РУСБ.10015-01 (очередное обновление 1.7 ) и более ранних обновлений:
Command sudo puppet apply /etc/puppetlabs/code/environments/production/manifests/site.pp
- Для Astra Linux Special Edition 1.8: