Spec-Zone.ru › Ansible

модуль 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

Настраивать ли контекст сборки для узла

Варианты:

  • false
  • true

ca_path

path

Файл в формате PEM, содержащий сертификат центра сертификации, который будет использоваться для проверки.

Если значение не указано в задаче, вместо него будет использоваться значение переменной среды FOREMAN_CA_PATH.

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

Включать ли этот узел в отчёты

Варианты:

  • false
  • true

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

Следует ли использовать этот интерфейс для удалённого выполнения?

У каждого управляемого узла должен быть один интерфейс удалённого выполнения.

Варианты:

  • false
  • true

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 и настраивать ли его при подготовке?

Варианты:

  • false
  • true

mode

string

Режим bond-интерфейса.

Только для bond-интерфейсов.

Варианты:

  • "balance-rr"
  • "active-backup"
  • "balance-xor"
  • "broadcast"
  • "802.3ad"
  • "balance-tlb"
  • "balance-alb"

mtu

integer

MTU; этот атрибут имеет приоритет над MTU подсети.

name

string

DNS-имя интерфейса

Чтобы обновлять существующие интерфейсы и обеспечить идемпотентность выполнения, необходимо задать один из параметров identifier, name или mac.

password

string

Пароль для аутентификации BMC.

Только для интерфейсов BMC.

primary

boolean

Следует ли использовать этот интерфейс для формирования FQDN узла?

У каждого управляемого узла должен быть один основной интерфейс.

Варианты:

  • false
  • true

provider

string

Поставщик интерфейса, например IPMI.

Только для интерфейсов BMC.

Варианты:

  • "IPMI"
  • "Redfish"
  • "SSH"

provision

boolean

Следует ли использовать этот интерфейс для TFTP для PXELinux (или SSH для узлов на основе образов)?

У каждого управляемого узла должен быть один интерфейс подготовки.

Варианты:

  • false
  • true

subnet

string

Название подсети IPv4

subnet6

string

Название подсети IPv6

tag

string

Тег VLAN; этот атрибут имеет приоритет над идентификатором VLAN подсети.

Только для виртуальных интерфейсов.

type

string

Тип интерфейса.

Варианты:

  • "interface"
  • "bmc"
  • "bond"
  • "bridge"

username

string

Имя пользователя для аутентификации BMC.

Только для интерфейсов BMC.

virtual

boolean

Псевдоним или устройство VLAN

Варианты:

  • false
  • true

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

Варианты:

  • false
  • true

medium

псевдонимы: media

string

Название носителя

Несовместим с kickstart_repository.

name

string / обязательный

Полное доменное имя узла

oauth1_consumer_key

string

Ключ потребителя OAuth1 для доступа к серверу Foreman.

Если значение не указано в задаче, вместо него будет использоваться значение переменной среды FOREMAN_OAUTH1_CONSUMER_KEY.

oauth1_consumer_secret

string

Секрет потребителя OAuth1 для доступа к серверу Foreman.

Если значение не указано в задаче, вместо него будет использоваться значение переменной среды FOREMAN_OAUTH1_CONSUMER_SECRET.

openscap_proxy

string

Название прокси OpenSCAP.

Доступно только при установленном плагине OpenSCAP.

operatingsystem

string

Операционные системы ищутся по заголовку, составленному в формате «<name> <major>.<minor>».

Можно не указывать версию, если существует только одна операционная система с таким названием.

organization

string

Название связанной организации

owner

string

Владелец узла (пользователь).

Поиск пользователей выполняется по login.

Несовместим с owner_group.

owner_group

string

Владелец узла (группа пользователей).

Несовместим с owner.

parameters

list / elements=dictionary

Параметры узла, относящиеся к домену сущности

hidden_value

boolean

Следует ли скрыть значение

Варианты:

  • false
  • true

name

string / обязательный

Название параметра

parameter_type

string

Тип параметра

Варианты:

  • "string" ← (по умолчанию)
  • "boolean"
  • "integer"
  • "real"
  • "array"
  • "hash"
  • "yaml"
  • "json"

value

any / обязательный

Значение параметра

password

string

Пароль пользователя, обращающегося к серверу Foreman.

Если значение не указано в задаче, вместо него будет использоваться значение переменной среды FOREMAN_PASSWORD.

provision_method

string

Метод, используемый для подготовки узла.

provision_method=bootdisk доступен только при установленном плагине bootdisk.

Варианты:

  • "build"
  • "image"
  • "bootdisk"

ptable

string

Имя таблицы разделов

puppet_ca_proxy

string

Имя прокси-сервера Puppet CA

puppet_proxy

string

Имя прокси-сервера Puppet

puppetclasses

list / elements=string

Список классов Puppet, которые нужно включить в эту группу узлов. Они должны существовать в среде Puppet группы узлов.

pxe_loader

string

Загрузчик PXE

Варианты:

  • "PXELinux BIOS"
  • "PXELinux UEFI"
  • "Grub UEFI"
  • "Grub2 BIOS"
  • "Grub2 ELF"
  • "Grub2 UEFI"
  • "Grub2 UEFI SecureBoot"
  • "Grub2 UEFI HTTP"
  • "Grub2 UEFI HTTPS"
  • "Grub2 UEFI HTTPS SecureBoot"
  • "iPXE Embedded"
  • "iPXE UEFI HTTP"
  • "iPXE Chain BIOS"
  • "iPXE Chain UEFI"
  • "None"

realm

string

Имя области (realm)

root_pass

string

Пароль root.

Результатом будет постоянное обновление сущности, так как получить текущий пароль невозможно.

server_url

string / обязательный

URL сервера Foreman.

Если значение не указано в задаче, вместо него будет использовано значение переменной окружения FOREMAN_SERVER_URL.

state

string

Состояние сущности

Варианты:

  • "present" ← (по умолчанию)
  • "absent"

subnet

string

Имя подсети IPv4

subnet6

string

Имя подсети IPv6

use_gssapi

boolean

Использовать GSSAPI для аутентификации; обычно это Kerberos или Kerberos через аутентификацию Negotiate.

Требуется установленная библиотека Python requests-gssapi.

Если значение не указано в задаче, вместо него будет использовано значение переменной окружения FOREMAN_USE_GSSAPI.

Варианты:

  • false ← (по умолчанию)
  • true

username

string

Имя пользователя для доступа к серверу Foreman.

Если значение не указано в задаче, вместо него будет использовано значение переменной окружения FOREMAN_USERNAME.

validate_certs

boolean

Проверять ли сертификаты TLS сервера Foreman.

Если значение не указано в задаче, вместо него будет использовано значение переменной окружения FOREMAN_VALIDATE_CERTS.

Варианты:

  • false
  • true ← (по умолчанию)

Атрибуты

Атрибут

Поддержка

Описание

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

Авторы

  • Bernhard Hopfenmueller (@Fobhep) ATIX AG

Ссылки на коллекцию

  • Отслеживание проблем
  • Главная страница
  • Репозиторий (исходный код)

© 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

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API