theforeman.foreman.host – Управление хостами
Примечание
Этот плагин входит в коллекцию theforeman.foreman (версия 1.5.1).
Для установки используйте: ansible-galaxy collection install theforeman.foreman.
Для использования в книге задач укажите: theforeman.foreman.host.
Добавлена в версии 1.0.0: модуля theforeman.foreman
Обзор
- Создание, обновление и удаление хостов
Требования
Ниже перечислены требования к хосту, на котором выполняется этот модуль.
- requests
Параметры
| Параметр | Варианты/Значения по умолчанию | Комментарии | |
|---|---|---|---|
| архитектура строка | Имя архитектуры | ||
| создать логическое значение |
| Нужно ли настроить контекст сборки для хоста | |
| комментарий строка | Комментарий о хосте. | ||
| compute_attributes словарь | Дополнительные атрибуты, специфичные для вычислительных ресурсов. При установке этого параметра модуль не будет идемпотентным. | ||
| compute_profile строка | Имя профиля вычислений | ||
| compute_resource строка | Имя вычислительного ресурса | ||
| config_groups список / элементы=строка | Список групп конфигурации | ||
| content_source строка | Источник контента. Доступен только для установок Katello. | ||
| content_view строка | Представление контента. Доступен только для установок Katello. | ||
| домен строка | Имя домена | ||
| активирован логическое значение |
| Включить этот хост в отчетность | |
| среда строка | Имя среды Puppet | ||
| hostgroup строка | Имя связанной группы хостов. | ||
| образ строка | Используемый образ при provision_method=image. Необходим параметр compute_resource для поиска правильного образа. | ||
| interfaces_attributes список / элементы=словарь добавлен в 1.5.0 of theforeman.foreman | Дополнительные атрибуты, специфичные для интерфейсов. | ||
| подключенные_устройства список / элементы=строка | Идентификаторы подключенных интерфейсов, например ['eth1', 'eth2']. Для интерфейсов bond это подчиненные интерфейсы. Только для интерфейсов bond и bridge. | ||
| присоединен_к строка | Идентификатор интерфейса, к которому принадлежит этот интерфейс, например eth1. Только для виртуальных интерфейсов. | ||
| bond_options строка | Разделенные пробелами параметры, например miimon=100. Только для интерфейсов bond. | ||
| compute_attributes словарь | Дополнительные атрибуты, специфичные для вычислительных ресурсов для интерфейса. При установке этого параметра модуль не будет идемпотентным. | ||
| домен строка | Имя домена Требуется для первичных интерфейсов на управляемых хостах. | ||
| идентификатор строка | Идентификатор устройства, например eth0 или eth1.1 Необходимо установить один из параметров идентификатор, имя или mac, чтобы обновить существующие интерфейсы и сделать выполнение идемпотентным. | ||
| ip строка | IPv4 адрес интерфейса | ||
| ip6 строка | IPv6 адрес интерфейса | ||
| mac строка | MAC-адрес интерфейса. Требуется для управляемых интерфейсов на хостах без операционной системы. Пожалуйста, включите ведущие нули и разделите тетрады двоеточиями, в противном случае выполнение не будет идемпотентным. Пример EE:BB:01:02:03:04 Необходимо установить один из параметров идентификатор, имя или mac, чтобы обновить существующие интерфейсы и сделать выполнение идемпотентным. | ||
| управляемый логическое значение |
| Должен ли этот интерфейс управляться через DHCP и DNS-смарт-прокси и должен ли он настраиваться во время подготовки? | |
| режим строка |
| Режим bond интерфейса. Только для интерфейсов bond. | |
| mtu целое число | MTU, этот атрибут имеет приоритет над MTU подсети. | ||
| имя строка | Имя интерфейса в DNS Необходимо установить один из параметров идентификатор, имя или mac, чтобы обновить существующие интерфейсы и сделать выполнение идемпотентным. | ||
| пароль строка | Пароль для аутентификации BMC. Только для интерфейсов BMC. | ||
| первичный логическое значение |
| Должен ли этот интерфейс использоваться для построения FQDN хоста? Каждый управляемый хост должен иметь один первичный интерфейс. | |
| провайдер строка |
| Провайдер интерфейса, например IPMI. Только для интерфейсов BMC. | |
| подготовка логическое значение |
| Должен ли этот интерфейс использоваться для TFTP PXELinux (или SSH для хостов на основе образа)? Каждый управляемый хост должен иметь один интерфейс подготовки. | |
| подсеть строка | Имя IPv4 подсети | ||
| подсеть6 строка | Имя IPv6 подсети | ||
| метка строка | VLAN-метка, этот атрибут имеет приоритет над VLAN-ID подсети. Только для виртуальных интерфейсов. | ||
| тип строка |
| Тип интерфейса. | |
| логин строка | Логин для аутентификации BMC. Только для интерфейсов BMC. | ||
| виртуальный логическое значение |
| Псевдоним или устройство VLAN | |
| ip строка | IP-адрес первичного интерфейса хоста. | ||
| kickstart_repository строка | Имя репозитория kickstart. Требуется для использования функции «Синхронизированный контент». Взаимоисключающий с medium. Доступен только для установок Katello. | ||
| lifecycle_environment строка | Среда жизненного цикла. Доступен только для установок Katello. | ||
| местоположение строка | Имя связанного местоположения | ||
| mac строка | MAC-адрес первичного интерфейса хоста. Пожалуйста, включите ведущие нули и разделите тетрады двоеточиями, в противном случае выполнение не будет идемпотентным. Пример EE:BB:01:02:03:04 | ||
| управляемый логическое значение |
| Является ли хост управляемым или неуправляемым. Вынужденно установлено в значение «да» при build=true
| |
| носитель строка | Имя носителя Взаимоисключающий с kickstart_repository. псевдонимы: носители | ||
| имя строка / обязательно | Полное доменное имя хоста | ||
| openscap_proxy строка | Имя прокси OpenSCAP. Доступно только при установке плагина OpenSCAP. | ||
| operatingsystem строка | Операционные системы ищутся по их заголовкам, которые составлены как "<имя> <major>.<minor>". Можно опустить часть версии, если есть только одна операционная система с таким именем. | ||
| организация строка | Имя связанной организации | ||
| владелец строка | Владелец (пользователь) хоста. Взаимоисключающий с owner_group. | ||
| owner_group string | Владеющая группа (пользовательская группа) хоста. Исключающее с owner. | ||
| parameters list / elements=dictionary | Параметры хоста, специфичные для предметной области сущности. | ||
| name string / required | Имя параметра | ||
| parameter_type string |
| Тип параметра | |
| value raw / required | Значение параметра | ||
| password string / required | Пароль пользователя, получающего доступ к серверу Foreman. Если значение не указано в задаче, будет использовано значение переменной окружения FOREMAN_PASSWORD. | ||
| 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 | Корневой пароль. Приведет к обновлению сущности каждый раз, так как текущий пароль невозможно получить. | ||
| server_url string / required | URL-адрес сервера Foreman. Если значение не указано в задаче, будет использовано значение переменной окружения FOREMAN_SERVER_URL. | ||
| state string |
| Состояние сущности | |
| subnet string | Имя подсети IPv4 | ||
| subnet6 string | Имя подсети IPv6 | ||
| username string / required | Имя пользователя, получающего доступ к серверу Foreman. Если значение не указано в задаче, будет использовано значение переменной окружения FOREMAN_USERNAME. | ||
| validate_certs boolean |
| Требуется ли проверка сертификатов TLS сервера Foreman. Если значение не указано в задаче, будет использовано значение переменной окружения FOREMAN_VALIDATE_CERTS. | |
Примеры
- 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 | Список хостов. | |
Авторы
- Bernhard Hopfenmueller (@Fobhep) ATIX AG
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.10/collections/theforeman/foreman/host_module.html