Foreman — различия между версиями

Материал из ALT Linux Wiki
Перейти к: навигация, поиск
(Подготовка)
(* Добавление ссылки на файл настроек *)
(не показано 16 промежуточных версий 3 участников)
Строка 7: Строка 7:
 
=== Подготовка ===
 
=== Подготовка ===
  
1. Перед установкой убедитесь что PostgreSQL версии 11 и выше [https://www.altlinux.org/PostgreSQL#Установка_и_начальный_запуск установлена и инициализирована]. Это важно.
+
Перед установкой убедитесь что PostgreSQL версии 11 и выше [https://www.altlinux.org/PostgreSQL#Установка_и_начальный_запуск установлена и инициализирована]. Это важно.
  
 
{{Attention|Если база данных перед установкой не была установлена и инициализирована, то Foreman установится некорректно.
 
{{Attention|Если база данных перед установкой не была установлена и инициализирована, то Foreman установится некорректно.
 
Для корректной установки придется удалить пакет, инициализировать базу данных и установить заново!}}
 
Для корректной установки придется удалить пакет, инициализировать базу данных и установить заново!}}
  
2. Проверьте установлен ли пакет gem-sassc версии не менее 2.2.1, более старые версии пакетов для этого gem-а приведут к неработоспособности приложения.
+
=== Установка ===
 +
 
 +
Чтобы установить средство, нужно от администратора поставить пакеты foreman, puppet-theforeman-foreman и foreman-addons, а всё требуемое вытянется по зависимостям.
 +
 
 +
# apt-get install foreman puppet-theforeman-foreman foreman-addons
 +
# apt-get dist-upgrade
  
# apt-get install gem-sassc-2.2.1-alt1 gem-coffee-script-source-compat-1.12.2-alt3 gem-secure-headers-6.3.0-alt1.1 gem-validates-lengths-from-database-0.8.0 gem-gettext-i18n-rails-1.8.1-alt1 gem-record-tag-helper-1.0.1-alt1 gem-webpack-rails-0.9.11-alt1.1 gem-apipie-rails gem-x-editable-rails gem-rack gem-rails
+
Подготовьте экземпляр:
  
=== Установка ===
+
# railsctl setup foreman || echo "Ошибка подготовки"
  
Чтобы установить средство, нужно от администратора поставить пакет foreman, а всё требуемое вытянется по зависимостям.
+
Work dir is '/usr/lib/foreman'
 +
Processing rails application 'foreman' setup...
 +
Renewing dependencies...
 +
Checking migration and seeds...
 +
Generating API cache...
 +
Initializing webpack frontend...
 +
Initializing assets frontend...
 +
Cleaning...
 +
/var/log/foreman/db_setup.log:Login credentials: admin / MSaTPtFTwfsu5rcE
  
# apt-get install foreman
+
Если показывается надпись «Ошибка подготовки», то экземпляр Foreman не будет рабочий. Проверьте установку компонентов и повторите.
  
 
=== Настройка ===
 
=== Настройка ===
 +
 +
Сделайте необходимые изменения в файле ''/etc/foreman/settings.yml''
  
 
Настройте системную службу foreman-а на автозапуск (по желанию):
 
Настройте системную службу foreman-а на автозапуск (по желанию):
Строка 28: Строка 43:
 
  # systemctl enable foreman
 
  # systemctl enable foreman
  
а дальше запустите её:
+
а дальше запустите её (в случае, если сервис работает, то он будет перезапущен):
  
  # systemctl start foreman
+
  # systemctl restart foreman
  
 
Отныне средство будет доступно по адресу http://localhost:2345 из обозревателя.
 
Отныне средство будет доступно по адресу http://localhost:2345 из обозревателя.
  
Пароль и логин администратора создаются автоматически, и чтобы их получить, нужно заглянуть в лог:
+
Пароль и логин администратора создаются автоматически, и возвращаются скриптом настойки (см. лог выше), однако их можно получить, заглянув в лог:
  
# grep "Login credentials" /usr/lib64/foreman/log/ -r
 
log/db_seed.log:Login credentials: admin / <your_password>
 
или
 
 
  # grep "Login credentials" /var/log/foreman/ -r
 
  # grep "Login credentials" /var/log/foreman/ -r
 
  /var/log/foreman/db_seed.log:Login credentials: admin / <your_password>
 
  /var/log/foreman/db_seed.log:Login credentials: admin / <your_password>
 +
 +
=== Настройка модуля ENC для взаимодействия с Puppetserver ===
 +
 +
Когда Foreman установлен и необходимо отредактировать файл ''/etc/puppet/puppet.conf''
 +
 +
Раскомментируем строки
 +
[master]
 +
    ...
 +
    external_nodes = /usr/lib/puppet-modules/theforeman-foreman/files/external_node_v2.rb
 +
    node_terminus = exec
 +
 +
После изменения конфигурации Puppet потребуется перезапуск служб puppetserver и puppet
 +
# systemctl restart puppetserver
 +
# systemctl restart puppet
  
 
=== Переустановка или обновление ===
 
=== Переустановка или обновление ===
Строка 46: Строка 72:
 
Чтобы переустановить или обновить средство нужно выполнить 2 команды подряд, и затем снова выполнить настройку из соответствующего подраздела:
 
Чтобы переустановить или обновить средство нужно выполнить 2 команды подряд, и затем снова выполнить настройку из соответствующего подраздела:
  
  # apt-get remove foreman
+
  # railsctl cleanup foreman
  # apt-get install foreman
+
  # railsctl setup foreman
 +
 
 +
=== Полное удаление ===
 +
 
 +
# railsctl mrproper foreman
  
 
[[Category: foreman]]
 
[[Category: foreman]]
[[Категория:Управление автоматизацией]]
+
[[Категория:Управление автоматизацией]][[Категория:Управление конфигурациями]]
 
{{Category navigation|title=Управление автоматизацией|category=Управление автоматизацией|sortkey={{SUBPAGENAME}}}}
 
{{Category navigation|title=Управление автоматизацией|category=Управление автоматизацией|sortkey={{SUBPAGENAME}}}}
 +
{{Category navigation|title=Управление конфигурациями|category=Управление конфигурациями|sortkey={{SUBPAGENAME}}}}

Версия 19:00, 3 марта 2021

Stub.png
Данная страница находится в разработке.
Эта страница ещё не закончена. Информация, представленная здесь, может оказаться неполной или неверной.


Foreman

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

Подготовка

Перед установкой убедитесь что PostgreSQL версии 11 и выше установлена и инициализирована. Это важно.

Внимание! Если база данных перед установкой не была установлена и инициализирована, то Foreman установится некорректно. Для корректной установки придется удалить пакет, инициализировать базу данных и установить заново!


Установка

Чтобы установить средство, нужно от администратора поставить пакеты foreman, puppet-theforeman-foreman и foreman-addons, а всё требуемое вытянется по зависимостям.

# apt-get install foreman puppet-theforeman-foreman foreman-addons
# apt-get dist-upgrade

Подготовьте экземпляр:

# railsctl setup foreman || echo "Ошибка подготовки"
Work dir is '/usr/lib/foreman'
Processing rails application 'foreman' setup...
Renewing dependencies...
Checking migration and seeds...
Generating API cache...
Initializing webpack frontend...
Initializing assets frontend...
Cleaning...
/var/log/foreman/db_setup.log:Login credentials: admin / MSaTPtFTwfsu5rcE

Если показывается надпись «Ошибка подготовки», то экземпляр Foreman не будет рабочий. Проверьте установку компонентов и повторите.

Настройка

Сделайте необходимые изменения в файле /etc/foreman/settings.yml

Настройте системную службу foreman-а на автозапуск (по желанию):

# systemctl enable foreman

а дальше запустите её (в случае, если сервис работает, то он будет перезапущен):

# systemctl restart foreman

Отныне средство будет доступно по адресу http://localhost:2345 из обозревателя.

Пароль и логин администратора создаются автоматически, и возвращаются скриптом настойки (см. лог выше), однако их можно получить, заглянув в лог:

# grep "Login credentials" /var/log/foreman/ -r
/var/log/foreman/db_seed.log:Login credentials: admin / <your_password>

Настройка модуля ENC для взаимодействия с Puppetserver

Когда Foreman установлен и необходимо отредактировать файл /etc/puppet/puppet.conf

Раскомментируем строки

[master]
   ...
   external_nodes = /usr/lib/puppet-modules/theforeman-foreman/files/external_node_v2.rb
   node_terminus = exec

После изменения конфигурации Puppet потребуется перезапуск служб puppetserver и puppet

# systemctl restart puppetserver
# systemctl restart puppet

Переустановка или обновление

Чтобы переустановить или обновить средство нужно выполнить 2 команды подряд, и затем снова выполнить настройку из соответствующего подраздела:

# railsctl cleanup foreman
# railsctl setup foreman

Полное удаление

# railsctl mrproper foreman