модуль theforeman.foreman.host – Управление узлами
Примечание
Этот модуль входит в коллекцию theforeman.foreman (версия 5.11.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 string | Ключи активации, используемые для развертывания. Список, разделённый запятыми. Доступно только для установок Katello. |
architecture string | Название архитектуры |
build boolean | Настраивать ли контекст сборки для узла Варианты:
|
ca_path path | Файл в формате PEM, содержащий сертификат центра сертификации, который будет использоваться для проверки. Если значение не указано в задаче, вместо него будет использоваться значение переменной среды |
comment string | Комментарий об узле. |
compute_attributes dictionary | Дополнительные атрибуты, относящиеся к вычислительному ресурсу. Если задан этот параметр, модуль не будет идемпотентным. Если здесь указать cluster и задан compute_resource, идентификатор кластера будет найден автоматически. |
compute_profile string | Название вычислительного профиля |
compute_resource string | Название вычислительного ресурса |
config_groups list / elements=string | Список групп конфигурации |
content_source string | Название источника содержимого (Smart Proxy с содержимым). Доступно только для установок Katello. |
content_view string | Представление содержимого. Доступно только для установок Katello. |
domain string | Название домена |
enabled boolean | Включать ли этот узел в отчёты Варианты:
|
environment string | Название среды Puppet |
hostgroup string | Заголовок связанной группы узлов Пример: дочерняя группа узлов bar в родительской группе узлов foo будет иметь заголовок foo/bar. |
image string | Образ, используемый при provision_method=image. Для поиска нужного образа требуется параметр compute_resource. |
interfaces_attributes list / elements=dictionary добавлено в theforeman.foreman 1.5.0 | Дополнительные атрибуты, относящиеся к интерфейсам. |
|
attached_devices list / elements=string |
Идентификаторы подключённых интерфейсов, например [‘eth1’, ‘eth2’]. Для bond-интерфейсов это подчинённые интерфейсы. Только для bond-интерфейсов и мостовых интерфейсов. |
|
attached_to string |
Идентификатор интерфейса, которому принадлежит этот интерфейс, например eth1. Только для виртуальных интерфейсов. |
|
bond_options string |
Параметры, разделённые пробелами, например miimon=100. Только для bond-интерфейсов. |
|
compute_attributes dictionary |
Дополнительные атрибуты вычислительного ресурса для интерфейса. Если задан этот параметр, модуль не будет идемпотентным. Если здесь указать network и задан compute_resource, идентификатор сети будет найден автоматически. В oVirt/RHV для выполнения поиска в compute_attributes узла необходимо указать cluster. |
|
domain string |
Название домена Обязательно для основных интерфейсов управляемых узлов. |
|
execution boolean |
Следует ли использовать этот интерфейс для удалённого выполнения? У каждого управляемого узла должен быть один интерфейс удалённого выполнения. Варианты:
|
|
identifier string |
Идентификатор устройства, например eth0 или eth1.1 Чтобы обновлять существующие интерфейсы и обеспечить идемпотентность выполнения, необходимо задать один из параметров identifier, name или mac. |
|
ip string |
IPv4-адрес интерфейса |
|
ip6 string |
IPv6-адрес интерфейса |
|
mac string |
MAC-адрес интерфейса. Обязателен для управляемых интерфейсов на физическом оборудовании. Указывайте начальные нули и разделяйте шестнадцатеричные разряды двоеточиями, иначе выполнение не будет идемпотентным. Пример: EE:BB:01:02:03:04 Чтобы обновлять существующие интерфейсы и обеспечить идемпотентность выполнения, необходимо задать один из параметров identifier, name или mac. |
|
managed boolean |
Следует ли управлять этим интерфейсом через Smart Proxy DHCP и DNS и настраивать ли его при подготовке? Варианты:
|
|
mode string |
Режим bond-интерфейса. Только для bond-интерфейсов. Варианты:
|
|
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 псевдонимы: media string | Название носителя Несовместим с kickstart_repository. |
name string / обязательный | Полное доменное имя узла |
oauth1_consumer_key string | Ключ потребителя OAuth1 для доступа к серверу Foreman. Если значение не указано в задаче, вместо него будет использоваться значение переменной среды |
oauth1_consumer_secret string | Секрет потребителя OAuth1 для доступа к серверу Foreman. Если значение не указано в задаче, вместо него будет использоваться значение переменной среды |
openscap_proxy string | Название прокси OpenSCAP. Доступно только при установленном плагине OpenSCAP. |
operatingsystem string | Операционные системы ищутся по заголовку, составленному в формате «<name> <major>.<minor>». Можно не указывать версию, если существует только одна операционная система с таким названием. |
organization string | Название связанной организации |
owner string | Владелец узла (пользователь). Поиск пользователей выполняется по Несовместим с owner_group. |
owner_group string | Владелец узла (группа пользователей). Несовместим с owner. |
parameters list / elements=dictionary | Параметры узла, относящиеся к домену сущности |
|
boolean |
Следует ли скрыть значение Варианты:
|
|
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 | Имя области (realm) |
root_pass string | Пароль root. Результатом будет постоянное обновление сущности, так как получить текущий пароль невозможно. |
server_url string / обязательный | URL сервера Foreman. Если значение не указано в задаче, вместо него будет использовано значение переменной окружения |
state string | Состояние сущности Варианты:
|
subnet string | Имя подсети IPv4 |
subnet6 string | Имя подсети IPv6 |
use_gssapi boolean | Использовать GSSAPI для аутентификации; обычно это Kerberos или Kerberos через аутентификацию Negotiate. Требуется установленная библиотека Python requests-gssapi. Если значение не указано в задаче, вместо него будет использовано значение переменной окружения Варианты:
|
username string | Имя пользователя для доступа к серверу Foreman. Если значение не указано в задаче, вместо него будет использовано значение переменной окружения |
validate_certs boolean | Проверять ли сертификаты TLS сервера Foreman. Если значение не указано в задаче, вместо него будет использовано значение переменной окружения Варианты:
|
Атрибуты
Атрибут | Поддержка | Описание |
|---|---|---|
check_mode | Поддержка: full | Может выполняться в режиме check_mode и возвращать прогноз статуса изменений без изменения сущности |
diff_mode | Поддержка: full | В режиме diff возвращает сведения об изменениях (или о том, что, возможно, требуется изменить в режиме check_mode) |
Примеры
- 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 dictionary | Итоговое состояние затронутых сущностей, сгруппированных по типу. Возвращается: success |
|
hosts list / elements=dictionary |
Список узлов. Возвращается: success |
Ссылки на коллекцию
© 2012–2018 Michael DeHaan
© 2018–2025 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/projects/ansible/latest/collections/theforeman/foreman/host_module.html