Примеры

POST /api/hosts
{
  "host": {
    "name": "testhost11",
    "environment_id": 334344675,
    "domain_id": 22495316,
    "ptable_id": 1007981711,
    "medium_id": 980190962,
    "architecture_id": 501905019,
    "operatingsystem_id": 1073012828,
    "puppet_proxy_id": 182953976,
    "compute_resource_id": 980190962,
    "root_pass": "xybxa6JUkz63w",
    "location_id": 255093256,
    "organization_id": 447626438,
    "interfaces_attributes": {
      "1": {
        "primary": true,
        "ip": "10.0.0.20",
        "mac": "00:11:22:33:44:00"
      },
      "2": {
        "type": "bmc",
        "provider": "IPMI",
        "mac": "00:11:22:33:44:01"
      },
      "3": {
        "mac": "00:11:22:33:44:02",
        "_destroy": 1
      }
    }
  }
}
201
{
  "ip": "10.0.0.20",
  "ip6": null,
  "environment_id": 334344675,
  "environment_name": "production",
  "last_report": null,
  "mac": "00:11:22:33:44:00",
  "realm_id": null,
  "realm_name": null,
  "sp_mac": "00:11:22:33:44:01",
  "sp_ip": null,
  "sp_name": null,
  "domain_id": 22495316,
  "domain_name": "mydomain.net",
  "architecture_id": 501905019,
  "architecture_name": "x86_64",
  "operatingsystem_id": 1073012828,
  "operatingsystem_name": "RHEL 6.1",
  "subnet_id": null,
  "subnet_name": null,
  "subnet6_id": null,
  "subnet6_name": null,
  "sp_subnet_id": null,
  "ptable_id": 1007981711,
  "ptable_name": "ptable8",
  "medium_id": 980190962,
  "medium_name": "CentOS 5.4",
  "pxe_loader": "Grub UEFI",
  "build": false,
  "comment": null,
  "disk": null,
  "installed_at": null,
  "model_id": null,
  "hostgroup_id": null,
  "owner_id": 135138680,
  "owner_name": "Admin User",
  "owner_type": "User",
  "enabled": true,
  "managed": true,
  "use_image": null,
  "image_file": "",
  "uuid": null,
  "compute_resource_id": 980190962,
  "compute_resource_name": "bigcompute",
  "compute_profile_id": null,
  "compute_profile_name": null,
  "capabilities": [
    "build",
    "image",
    "new_volume"
  ],
  "provision_method": "build",
  "certname": "testhost11.mydomain.net",
  "image_id": null,
  "image_name": null,
  "created_at": "2019-09-11 14:31:57 UTC",
  "updated_at": "2019-09-11 14:31:57 UTC",
  "last_compile": null,
  "global_status": 0,
  "global_status_label": "Warning",
  "uptime_seconds": null,
  "organization_id": 447626438,
  "organization_name": "Organization 1",
  "location_id": 255093256,
  "location_name": "Location 1",
  "puppet_status": 0,
  "model_name": null,
  "configuration_status": 0,
  "configuration_status_label": "No reports",
  "build_status": 0,
  "build_status_label": "Installed",
  "name": "testhost11.mydomain.net",
  "id": 95,
  "puppet_proxy_id": 182953976,
  "puppet_proxy_name": "Puppetmaster Proxy",
  "puppet_ca_proxy_id": 182953976,
  "puppet_ca_proxy_name": "Puppetmaster Proxy",
  "puppet_proxy": {
    "name": "Puppetmaster Proxy",
    "id": 182953976,
    "url": "http://else.where:4567"
  },
  "puppet_ca_proxy": {
    "name": "Puppetmaster Proxy",
    "id": 182953976,
    "url": "http://else.where:4567"
  },
  "hostgroup_name": null,
  "hostgroup_title": null,
  "parameters": [],
  "all_parameters": [
    {
      "priority": null,
      "created_at": "2019-09-11 14:31:50 UTC",
      "updated_at": "2019-09-11 14:31:50 UTC",
      "id": 716195090,
      "name": "os1",
      "parameter_type": null,
      "value": "os1"
    },
    {
      "priority": null,
      "created_at": "2019-09-11 14:31:50 UTC",
      "updated_at": "2019-09-11 14:31:50 UTC",
      "id": 665394701,
      "name": "parameter",
      "parameter_type": null,
      "value": "value1"
    },
    {
      "priority": null,
      "created_at": "2019-09-11 14:31:50 UTC",
      "updated_at": "2019-09-11 14:31:50 UTC",
      "id": 513706444,
      "name": "loc_param",
      "parameter_type": null,
      "value": "abc"
    },
    {
      "priority": null,
      "created_at": "2019-09-11 14:31:50 UTC",
      "updated_at": "2019-09-11 14:31:50 UTC",
      "id": 32400255,
      "name": "org_param",
      "parameter_type": null,
      "value": "xyz"
    },
    {
      "priority": null,
      "created_at": "2019-09-11 14:31:50 UTC",
      "updated_at": "2019-09-11 14:31:50 UTC",
      "id": 636252244,
      "name": "test",
      "parameter_type": null,
      "value": "myvalue"
    }
  ],
  "interfaces": [
    {
      "subnet_id": null,
      "subnet_name": null,
      "subnet6_id": null,
      "subnet6_name": null,
      "domain_id": 22495316,
      "domain_name": "mydomain.net",
      "created_at": "2019-09-11 14:31:57 UTC",
      "updated_at": "2019-09-11 14:31:57 UTC",
      "managed": true,
      "identifier": null,
      "id": 101,
      "name": "testhost11.mydomain.net",
      "ip": "10.0.0.20",
      "ip6": null,
      "mac": "00:11:22:33:44:00",
      "mtu": null,
      "fqdn": "testhost11.mydomain.net",
      "primary": true,
      "provision": true,
      "type": "interface",
      "virtual": false
    },
    {
      "subnet_id": null,
      "subnet_name": null,
      "subnet6_id": null,
      "subnet6_name": null,
      "domain_id": null,
      "domain_name": null,
      "created_at": "2019-09-11 14:31:57 UTC",
      "updated_at": "2019-09-11 14:31:57 UTC",
      "managed": true,
      "identifier": null,
      "id": 102,
      "name": null,
      "ip": null,
      "ip6": null,
      "mac": "00:11:22:33:44:01",
      "mtu": null,
      "fqdn": null,
      "primary": false,
      "provision": false,
      "type": "bmc",
      "username": null,
      "password": null,
      "provider": "IPMI",
      "virtual": false
    }
  ],
  "puppetclasses": [],
  "config_groups": [],
  "all_puppetclasses": [],
  "permissions": {
    "view_hosts": true,
    "create_hosts": true,
    "edit_hosts": true,
    "destroy_hosts": true,
    "build_hosts": true,
    "power_hosts": true,
    "console_hosts": true,
    "ipmi_boot_hosts": true,
    "puppetrun_hosts": true
  }
}

Параметры

Имя параметра Описание
location_id
необязательно

Ограничить местоположением

Validations:

  • Must be a Integer

organization_id
необязательно

Ограничить организацией

Validations:

  • Must be a Integer

host
обязательно

Validations:

  • Must be a Hash

host[name]
обязательно

Validations:

  • Must be a String

host[location_id]
обязательно

Validations:

  • Must be a number.

host[organization_id]
обязательно

Validations:

  • Must be a number.

host[environment_id]
необязательно , nil разрешен

требуется, если узел уже контролируется, но значение не было унаследовано от группы узлов

Validations:

  • Must be a String

host[ip]
необязательно , nil разрешен

не требуется, если используется подсеть с DHCP прокси

Validations:

  • Must be a String

host[mac]
необязательно , nil разрешен

требуется для управления узлом на голом железе, не требуется для виртуальной машины

Validations:

  • Must be a String

host[architecture_id]
необязательно , nil разрешен

требуется, если узел уже контролируется, но значение не было унаследовано от группы узлов

Validations:

  • Must be a number.

host[domain_id]
необязательно , nil разрешен

требуется, если узел уже контролируется, но значение не было унаследовано от группы узлов

Validations:

  • Must be a number.

host[realm_id]
необязательно , nil разрешен

Validations:

  • Must be a number.

host[puppet_proxy_id]
необязательно , nil разрешен

Идентификатор прокси Puppet

Validations:

  • Must be a number.

host[puppet_ca_proxy_id]
необязательно , nil разрешен

Идентификатор прокси Puppet CA

Validations:

  • Must be a number.

host[puppetclass_ids]
необязательно , nil разрешен

Validations:

  • Must be an array of any type

host[config_group_ids]
необязательно , nil разрешен

IDs of associated config groups

Validations:

  • Must be an array of any type

host[operatingsystem_id]
необязательно , nil разрешен

требуется, если узел уже контролируется, но значение не было унаследовано от группы узлов

Validations:

  • Must be a String

host[medium_id]
необязательно , nil разрешен

требуется, если подготовка управляемого узла осуществляется без участия образов и при этом значение не было унаследовано от группы узлов

Validations:

  • Must be a String

host[pxe_loader]
необязательно , nil разрешен

DHCP filename option (Grub2/PXELinux by default)

Validations:

  • Must be one of: None, 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.

host[ptable_id]
необязательно , nil разрешен

требуется, если узел находится под управлением, но собственный раздел не был объявлен

Validations:

  • Must be a number.

host[subnet_id]
необязательно , nil разрешен

требуется, если узел уже контролируется, но значение не было унаследовано от группы узлов

Validations:

  • Must be a number.

host[compute_resource_id]
необязательно , nil разрешен

ноль обозначает узел на голом железе

Validations:

  • Must be a number.

host[root_pass]
необязательно , nil разрешен

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

Validations:

  • Must be a String

host[model_id]
необязательно , nil разрешен

Validations:

  • Must be a number.

host[hostgroup_id]
необязательно , nil разрешен

Validations:

  • Must be a number.

host[owner_id]
необязательно , nil разрешен

Validations:

  • Must be a number.

host[owner_type]
необязательно , nil разрешен

Тип владельца узла

Validations:

  • Must be one of: User, Usergroup.

host[image_id]
необязательно , nil разрешен

Validations:

  • Must be a number.

host[host_parameters_attributes]
необязательно , nil разрешен

Параметры узла (массив или индексированный хэш)

Validations:

  • Must be an Array of nested elements

host[host_parameters_attributes][name]
обязательно

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

Validations:

  • Must be a String

host[host_parameters_attributes][value]
обязательно

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

Validations:

  • Must be a String

host[build]
необязательно , nil разрешен

Validations:

  • Must be one of: true, false, 1, 0.

host[enabled]
необязательно , nil разрешен

Включить этот узел в отчетность Foreman

Validations:

  • Must be one of: true, false, 1, 0.

host[provision_method]
необязательно , nil разрешен

The method used to provision the host.

Validations:

  • Must be one of: build, image.

host[managed]
необязательно , nil разрешен

Флаг True/False сообщает, является ли узел контролируемым. Кроме того, в зависимости от этого значения может потребоваться настроить дополнительные параметры.

Validations:

  • Must be one of: true, false, 1, 0.

host[progress_report_id]
необязательно , nil разрешен

UUID для отслеживания состояния задач оркестрации, GET /api/orchestration/:UUID/tasks

Validations:

  • Must be a String

host[comment]
необязательно , nil разрешен

Дополнительная информация об этом узле

Validations:

  • Must be a String

host[capabilities]
необязательно , nil разрешен

Validations:

  • Must be a String

host[compute_profile_id]
необязательно , nil разрешен

Validations:

  • Must be a number.

host[interfaces_attributes]
необязательно , nil разрешен

Сетевые интерфейсы узла.

Validations:

  • Must be an Array of nested elements

host[interfaces_attributes][mac]
необязательно , nil разрешен

MAC адрес интерфейса. Требуется для управления интерфейсами на голом железе.

Validations:

  • Must be a String

host[interfaces_attributes][ip]
необязательно , nil разрешен

IPv4 address of interface

Validations:

  • Must be a String

host[interfaces_attributes][ip6]
необязательно , nil разрешен

IPv6 address of interface

Validations:

  • Must be a String

host[interfaces_attributes][type]
необязательно , nil разрешен

Тип интерфейса, например bmc. По умолчанию interface

Validations:

  • Must be one of: interface, bmc, bond, bridge.

host[interfaces_attributes][name]
необязательно , nil разрешен

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

Validations:

  • Must be a String

host[interfaces_attributes][subnet_id]
необязательно , nil разрешен

Foreman subnet ID of IPv4 interface

Validations:

  • Must be a number.

host[interfaces_attributes][subnet6_id]
необязательно , nil разрешен

Foreman subnet ID of IPv6 interface

Validations:

  • Must be a number.

host[interfaces_attributes][domain_id]
необязательно , nil разрешен

Код домена Foreman для интерфейса. Требуется для первичного интерфейса на управляемых узлах.

Validations:

  • Must be a number.

host[interfaces_attributes][identifier]
необязательно , nil разрешен

Имя интерфейса, например eth0 или eth1.1

Validations:

  • Must be a String

host[interfaces_attributes][managed]
необязательно , nil разрешен

Должен ли интерфейс контролироваться капсулой DHCP и DNS? В этом случае он будет настроен во время подготовки узла.

Validations:

  • Must be one of: true, false, 1, 0.

host[interfaces_attributes][primary]
необязательно , nil разрешен

Должен ли интерфейс использоваться для формирования FQDN-имени узла? Каждый управляемый узел должен иметь один первичный интерфейс.

Validations:

  • Must be one of: true, false, 1, 0.

host[interfaces_attributes][provision]
необязательно , nil разрешен

Должен ли интерфейс использоваться для сетевой загрузки по TFTP (или SSH на узлах, устанавливаемых из образа)? Каждый управляемый узел должен иметь один подготовительный интерфейс.

Validations:

  • Must be one of: true, false, 1, 0.

host[interfaces_attributes][username]
необязательно , nil разрешен

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

Validations:

  • Must be a String

host[interfaces_attributes][password]
необязательно , nil разрешен

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

Validations:

  • Must be a String

host[interfaces_attributes][provider]
необязательно , nil разрешен

Поставщик интерфейса, например IPMI. Только для интерфейса BMC.

Validations:

  • Must be one of: IPMI, SSH.

host[interfaces_attributes][virtual]
необязательно , nil разрешен

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

Validations:

  • Must be one of: true, false, 1, 0.

host[interfaces_attributes][tag]
необязательно , nil разрешен

Метка VLAN, этот атрибут имеет приоритет над подсетью VLAN ID. Только для виртуальных интерфейсов.

Validations:

  • Must be a String

host[interfaces_attributes][mtu]
необязательно , nil разрешен

MTU, this attribute has precedence over the subnet MTU.

Validations:

  • Must be a Integer

host[interfaces_attributes][attached_to]
необязательно , nil разрешен

Идентификатор интерфейса к которому принадлежит этот интерфейс, например eth1. Только для виртуальных интерфейсов.

Validations:

  • Must be a String

host[interfaces_attributes][mode]
необязательно , nil разрешен

Режим агрегации интерфейсов, например balance-rr. Только для агрегированных интерфейсов.

Validations:

  • Must be one of: balance-rr, active-backup, balance-xor, broadcast, 802.3ad, balance-tlb, balance-alb.

host[interfaces_attributes][attached_devices]
необязательно , nil разрешен

Идентификаторы подчиненных интерфейсов, например [eth1, eth2]. Только для агрегированных интерфейсов и мостов.

Validations:

  • Must be an array of any type

host[interfaces_attributes][bond_options]
необязательно , nil разрешен

Список параметров через запятую, например: miimon=100. Только для агрегированных интерфейсов.

Validations:

  • Must be a String

host[interfaces_attributes][compute_attributes]
необязательно , nil разрешен

Дополнительные атрибуты вычислительного ресурса для интерфейса.

Validations:

  • Must be a Hash

host[compute_attributes]
необязательно , nil разрешен

Дополнительные атрибуты вычислительного ресурса.

Validations:

  • Must be a Hash