Модуль theforeman.foreman.host – Управление хостами
Примечание
Этот модуль является частью коллекции theforeman.foreman (версия 4.2.0).
Возможно, эта коллекция уже установлена, если вы используете пакет ansible. Она не включена в ansible-core. Чтобы проверить установку, выполните ansible-galaxy collection list.
Для установки используйте: ansible-galaxy collection install theforeman.foreman. Для использования этого модуля необходимы дополнительные требования, см. Требования для получения подробностей.
Чтобы использовать его в книге задач, укажите: theforeman.foreman.host.
Добавлен в theforeman.foreman 1.0.0
Описание
- Создание, обновление и удаление хостов
Псевдонимы: foreman_host
Требования
Ниже перечислены требования к хосту, на котором будет выполняться этот модуль.
- requests
Параметры
Параметр | Комментарии |
|---|---|
activation_keys строка | Ключи активации, используемые для развертывания. Список, разделенный запятыми. Доступно только для установок Katello. |
architecture строка | Имя архитектуры |
build логическое значение | Необходимо ли настроить контекст сборки для узла Выбираемые значения:
|
comment строка | Комментарий к узлу. |
compute_attributes словарь | Дополнительные атрибуты, специфичные для вычислительных ресурсов. Если этот параметр задан, модуль не будет идемпотентным. Если здесь указан кластер и задан compute_resource, идентификатор кластера будет автоматически найден. |
compute_profile строка | Имя профиля вычислительных ресурсов |
compute_resource строка | Имя вычислительного ресурса |
config_groups список / элементы=строка | Список групп конфигурации |
content_source строка | Имя источника контента (интеллектуальный прокси с контентом). Доступно только для установок Katello. |
content_view строка | Представление контента. Доступно только для установок Katello. |
domain строка | Имя домена |
enabled логическое значение | Включить этот узел в отчетность Выбираемые значения:
|
environment строка | Имя среды Puppet |
hostgroup строка | Название связанной группы узлов Например: дочерняя группа узлов bar в родительской группе узлов foo будет иметь название foo/bar. |
image строка | Используемый образ при provision_method=image. Параметр compute_resource необходим для поиска соответствующего образа. |
interfaces_attributes список / элементы=словарь добавлен в theforeman.foreman 1.5.0 | Дополнительные атрибуты, специфичные для интерфейсов. |
|
attached_devices список / элементы=строка |
Идентификаторы подключенных интерфейсов, например [‘eth1’, ‘eth2’]. Для интерфейсов bond это подчиненные интерфейсы. Только для интерфейсов bond и мостов. |
|
attached_to строка |
Идентификатор интерфейса, к которому принадлежит этот интерфейс, например eth1. Только для виртуальных интерфейсов. |
|
bond_options строка |
Параметры, разделенные пробелами, например miimon=100. Только для интерфейсов bond. |
|
compute_attributes словарь |
Дополнительные атрибуты, специфичные для вычислительных ресурсов для интерфейса. Если этот параметр задан, модуль не будет идемпотентным. Если здесь указан сеть и задан compute_resource, идентификатор сети будет автоматически найден. В oVirt/RHV для работы поиска необходимо указать кластер в compute_attributes узла. |
|
domain строка |
Имя домена Требуется для первичных интерфейсов на управляемых узлах. |
|
execution логическое значение |
Использовать ли этот интерфейс для удаленного выполнения? Каждый управляемый узел должен иметь один интерфейс для удаленного выполнения. Выбираемые значения:
|
|
identifier строка |
Идентификатор устройства, например eth0 или eth1.1 Для обновления существующих интерфейсов и обеспечения идемпотентности необходимо задать один из параметров: identifier, name или mac. |
|
ip строка |
IPv4-адрес интерфейса |
|
ip6 string |
IPv6 адрес интерфейса |
|
mac string |
MAC-адрес интерфейса. Требуется для управляемых интерфейсов на bare metal. Пожалуйста, включите ведущие нули и разделяйте ниблы двоеточием, иначе выполнение не будет идемпотентным. Пример EE:BB:01:02:03:04 Для обновления существующих интерфейсов и идемпотентности выполнения необходимо установить один из параметров identifier, name или mac. |
|
managed boolean |
Должен ли этот интерфейс управляться с помощью DHCP и интеллектуального прокси-сервера DNS и должен ли он быть настроен во время подготовки? Варианты:
|
|
mode string |
Режим объединения интерфейса. Только для интерфейсов объединения. Варианты:
|
|
mtu integer |
MTU, этот атрибут имеет приоритет над MTU подсети. |
|
name string |
Имя интерфейса в DNS Для обновления существующих интерфейсов и идемпотентности выполнения необходимо установить один из параметров identifier, name или mac. |
|
password string |
Пароль для аутентификации BMC. Только для интерфейсов BMC. |
|
primary boolean |
Должен ли этот интерфейс использоваться для построения FQDN хоста? Каждый управляемый хост должен иметь один основной интерфейс. Варианты:
|
|
provider string |
Поставщик интерфейса, например, IPMI. Только для интерфейсов BMC. Варианты:
|
|
provision boolean |
Должен ли этот интерфейс использоваться для TFTP PXELinux (или SSH для хостов на основе изображений)? Каждый управляемый хост должен иметь один интерфейс для подготовки. Варианты:
|
|
subnet string |
Имя IPv4 подсети |
|
subnet6 string |
Имя IPv6 подсети |
|
tag string |
Тег VLAN, этот атрибут имеет приоритет над идентификатором VLAN подсети. Только для виртуальных интерфейсов. |
|
type string |
Тип интерфейса. Варианты:
|
|
username string |
Имя пользователя для аутентификации BMC. Только для интерфейсов BMC. |
|
virtual boolean |
Псевдоним или виртуальное устройство VLAN Варианты:
|
ip string | IP-адрес основного интерфейса хоста. |
kickstart_repository string | Имя репозитория kickstart. Необходимо для использования функции «Синхронизированное содержимое». Взаимоисключающее с medium. Доступно только для установок Katello. |
lifecycle_environment string | Среда жизненного цикла. Доступно только для установок Katello. |
location string | Имя связанного расположения |
mac string | MAC-адрес основного интерфейса хоста. Пожалуйста, включите ведущие нули и разделяйте ниблы двоеточием, иначе выполнение не будет идемпотентным. Пример EE:BB:01:02:03:04 |
managed boolean | Управляемый ли хост или нет. Принудительно устанавливается в true, когда build=true Варианты:
|
medium aliases: media string | Название среды Взаимоисключительно с kickstart_repository. |
name string / обязательно | Полное доменное имя хоста |
openscap_proxy string | Имя прокси-сервера OpenSCAP. Доступно только при установке плагина OpenSCAP. |
operatingsystem string | Операционные системы ищутся по их названию, которое состоит из «<имя> <major>.<minor>». Можно опустить часть версии, если у вас только одна операционная система с таким именем. |
organization string | Имя связанной организации |
owner string | Владелец (пользователь) хоста. Пользователи ищутся по их Взаимоисключительно с owner_group. |
owner_group string | Владелец (группа пользователей) хоста. Взаимоисключительно с owner. |
parameters list / elements=dictionary | Параметры хоста, специфичные для домена сущности |
|
name string / обязательно |
Имя параметра |
|
parameter_type string |
Тип параметра Варианты:
|
|
value any / обязательно |
Значение параметра |
password string / обязательно | Пароль пользователя, имеющего доступ к серверу Foreman. Если значение не указано в задании, будет использовано значение переменной окружения |
provision_method string | Метод, используемый для подготовки хоста. provision_method=bootdisk доступен только при установке плагина bootdisk. Варианты:
|
ptable string | Имя таблицы разделов |
puppet_ca_proxy string | Имя прокси-сервера Puppet CA |
puppet_proxy string | Имя прокси-сервера Puppet |
puppetclasses list / elements=string | Список классов Puppet для включения в эту группу хостов. Должен существовать для среды Puppet группы хостов. |
pxe_loader string | Загрузчик PXE Варианты:
|
realm string | Имя домена |
root_pass string | Пароль root. Приведёт к обязательному обновлению сущности, так как текущий пароль получить нельзя. |
server_url string / обязательно | URL сервера Foreman. Если значение не указано в задании, будет использовано значение переменной окружения |
state string | Состояние сущности Варианты:
|
subnet string | Имя подсети IPv4 |
subnet6 string | Имя подсети IPv6 |
username string / обязательно | Имя пользователя для доступа к серверу Foreman. Если значение не указано в задаче, будет использовано значение переменной окружения |
validate_certs boolean | Требовать проверку сертификатов TLS сервера Foreman. Если значение не указано в задаче, будет использовано значение переменной окружения Варианты:
|
Атрибуты
Атрибут | Поддержка | Описание |
|---|---|---|
check_mode | Поддержка: полная | Возможность работы в режиме check_mode для предсказания изменений без их внесения |
diff_mode | Поддержка: полная | Возвращает подробности о внесенных изменениях (или возможно необходимых в режиме check_mode) в режиме diff |
Примеры
- name: "Create a host"
theforeman.foreman.host:
username: "admin"
password: "changeme"
server_url: "https://foreman.example.com"
name: "new_host"
hostgroup: my_hostgroup
state: present
- name: "Create a host with build context"
theforeman.foreman.host:
username: "admin"
password: "changeme"
server_url: "https://foreman.example.com"
name: "new_host"
hostgroup: my_hostgroup
build: true
state: present
- name: "Create an unmanaged host"
theforeman.foreman.host:
username: "admin"
password: "changeme"
server_url: "https://foreman.example.com"
name: "new_host"
managed: false
state: present
- name: "Create a VM with 2 CPUs and 4GB RAM"
theforeman.foreman.host:
username: "admin"
password: "changeme"
server_url: "https://foreman.example.com"
name: "new_host"
compute_attributes:
cpus: 2
memory_mb: 4096
state: present
- name: "Create a VM and start it after creation"
theforeman.foreman.host:
username: "admin"
password: "changeme"
server_url: "https://foreman.example.com"
name: "new_host"
compute_attributes:
start: "1"
state: present
- name: "Create a VM on specific ovirt network"
theforeman.foreman.host:
username: "admin"
password: "changeme"
server_url: "https://foreman.example.com"
name: "new_host"
interfaces_attributes:
- type: "interface"
compute_attributes:
name: "nic1"
network: "969efbe6-f9e0-4383-a19a-a7ee65ad5007"
interface: "virtio"
state: present
- name: "Create a VM with 2 NICs on specific ovirt networks"
theforeman.foreman.host:
username: "admin"
password: "changeme"
server_url: "https://foreman.example.com"
name: "new_host"
interfaces_attributes:
- type: "interface"
primary: true
compute_attributes:
name: "nic1"
network: "969efbe6-f9e0-4383-a19a-a7ee65ad5007"
interface: "virtio"
- type: "interface"
name: "new_host_nic2"
managed: true
compute_attributes:
name: "nic2"
network: "969efbe6-f9e0-4383-a19a-a7ee65ad5008"
interface: "e1000"
state: present
- name: "Delete a host"
theforeman.foreman.host:
username: "admin"
password: "changeme"
server_url: "https://foreman.example.com"
name: "new_host"
state: absent
Возвращаемые значения
Общие возвращаемые значения описаны здесь, следующие поля уникальны для данного модуля:
Ключ | Описание |
|---|---|
entity словарь | Конечное состояние затронутых сущностей, сгруппированных по типу. Возвращается при: успехе |
|
hosts список / элементы=словарь |
Список хостов. Возвращается при: успехе |
Ссылки на сборку
© 2012–2018 Michael DeHaan
© 2018–2024 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/latest/collections/theforeman/foreman/host_module.html