GET /api/hosts/:host_id/interfaces
Afficher toutes les interfaces de l'hôte

GET /api/domains/:domain_id/interfaces
Afficher toutes les interfaces du domaine

GET /api/subnets/:subnet_id/interfaces
Afficher toutes les interfaces du sous-réseau

Exemples

GET /api/hosts/host727/interfaces
404
{
  "error": {
    "message": "Resource interface not found by id ''"
  }
}

Paramètres

Nom du paramètre Description
location_id
optionel

Tri par emplacement

Validations:

  • Must be a Integer

organization_id
optionel

Tri par organisation

Validations:

  • Must be a Integer

host_id
requis

ID ou nom d’hôte

Validations:

  • Must be a String

domain_id
optionel

ID du nom de domaine

Validations:

  • Must be a String

subnet_id
optionel

ID ou nom du sous réseau

Validations:

  • Must be a String

page
optionel

Numéro de la page, commençant par 1

Validations:

  • Must be a number.

per_page
optionel

Nombre de résultats par page à renvoyer

Validations:

  • Must be a number.


GET /api/hosts/:host_id/interfaces/:id
Afficher une interface d'un hôte

Exemples

GET /api/hosts/host2647/interfaces/19
200
{
  "subnet_id": null,
  "subnet_name": null,
  "subnet6_id": null,
  "subnet6_name": null,
  "domain_id": null,
  "domain_name": null,
  "created_at": "2019-09-11 14:58:36 UTC",
  "updated_at": "2019-09-11 14:58:36 UTC",
  "managed": true,
  "identifier": "eth852",
  "id": 19,
  "name": null,
  "ip": "0.0.0.203",
  "ip6": null,
  "mac": "00:33:45:ab:01:46",
  "mtu": null,
  "fqdn": null,
  "primary": false,
  "provision": false,
  "type": "interface",
  "virtual": false
}

Paramètres

Nom du paramètre Description
location_id
optionel

Tri par emplacement

Validations:

  • Must be a Integer

organization_id
optionel

Tri par organisation

Validations:

  • Must be a Integer

host_id
requis

ID ou nom d’hôte

Validations:

  • Must be a String

id
requis

ID ou nom de l’interface

Validations:

  • Must be a String


POST /api/hosts/:host_id/interfaces
Créer une interface sur un hôte

Exemples

POST /api/hosts/host2642/interfaces
{
  "interface": {
    "name": "test.foreman.com",
    "ip": "10.0.1.1",
    "mac": "AA:AA:AA:AA:AA:AA",
    "username": "foo",
    "password": "bar",
    "provider": "IPMI",
    "type": "bmc",
    "ip6": "2001:db8::1"
  }
}
201
{
  "subnet_id": null,
  "subnet_name": null,
  "subnet6_id": null,
  "subnet6_name": null,
  "domain_id": null,
  "domain_name": null,
  "created_at": "2019-09-11 14:58:36 UTC",
  "updated_at": "2019-09-11 14:58:36 UTC",
  "managed": true,
  "identifier": null,
  "id": 5,
  "name": "test.foreman.com",
  "ip": "10.0.1.1",
  "ip6": "2001:db8::1",
  "mac": "aa:aa:aa:aa:aa:aa",
  "mtu": null,
  "fqdn": "test.foreman.com",
  "primary": false,
  "provision": false,
  "type": "bmc",
  "username": "foo",
  "password": "bar",
  "provider": "IPMI",
  "virtual": false
}

Paramètres

Nom du paramètre Description
location_id
optionel

Tri par emplacement

Validations:

  • Must be a Integer

organization_id
optionel

Tri par organisation

Validations:

  • Must be a Integer

host_id
requis

ID ou nom d’hôte

Validations:

  • Must be a String

interface
requis

information de l’interface

Validations:

  • Must be a Hash

interface[mac]
optionel , nil autorisé

Adresse MAC de l’interface. Requis pour les interfaces gérées des hôtes physiques.

Validations:

  • Must be a String

interface[ip]
optionel , nil autorisé

interface de l’adresse IPv4

Validations:

  • Must be a String

interface[ip6]
optionel , nil autorisé

interface de l’adresse IPv6

Validations:

  • Must be a String

interface[type]
optionel , nil autorisé

Type d’interface , p.e. bmc. Valeur par défaut interface

Validations:

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

interface[name]
optionel , nil autorisé

Nom DNS de l’interface

Validations:

  • Must be a String

interface[subnet_id]
optionel , nil autorisé

ID du sous-réseau Foreman de l’interface IPv4

Validations:

  • Must be a number.

interface[subnet6_id]
optionel , nil autorisé

ID du sous-réseau Foreman de l’interface IPv6

Validations:

  • Must be a number.

interface[domain_id]
optionel , nil autorisé

Domaine ID Foreman de l’interface. Requis pour les interfaces primaires des hôtes gérés.

Validations:

  • Must be a number.

interface[identifier]
optionel , nil autorisé

Identifiant du périphérique. Ex : eth0 ou eth1.1

Validations:

  • Must be a String

interface[managed]
optionel , nil autorisé

Cette interface doit-elle être gérée par les smart proxies DHCP et DNS et être configurée pendant le provisioning ?

Validations:

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

interface[primary]
optionel , nil autorisé

Cette interface doit-elle être utilisée pour choisir le FQDN de l’hôte ? Chaque hôte géré doit avoir une interface primaire.

Validations:

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

interface[provision]
optionel , nil autorisé

Cette interface doit-elle être utilisée pour les communications TFTP et PXE (ou SSH pour les images d’hôtes) ? Chaque hôte géré doit avoir une interface de provisioning.

Validations:

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

interface[username]
optionel , nil autorisé

Seulement pour les interfaces BMC.

Validations:

  • Must be a String

interface[password]
optionel , nil autorisé

Seulement pour les interfaces BMC.

Validations:

  • Must be a String

interface[provider]
optionel , nil autorisé

Fournisseur de l’interface. Ex. IPMI. Seulement pour les interfaces BMC.

Validations:

  • Must be one of: IPMI, SSH.

interface[virtual]
optionel , nil autorisé

Périphérique Alias ou VLAN

Validations:

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

interface[tag]
optionel , nil autorisé

Tag VLAN. Cet attribut a précédence sur l’ID VLAN du sous-réseau. Seulement pour les interfaces virtuelles.

Validations:

  • Must be a String

interface[mtu]
optionel , nil autorisé

MTU, cet attribut a précédence sur la MTU du sous réseau.

Validations:

  • Must be a Integer

interface[attached_to]
optionel , nil autorisé

Identifiant de l’interface auquel est rattachée cette interface. Ex. eth1. Seulement pour les interfaces virtuelles.

Validations:

  • Must be a String

interface[mode]
optionel , nil autorisé

Mode d’agrégat de l’interface. Par exemple balance-rr. Seulement pour les interfaces bond.

Validations:

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

interface[attached_devices]
optionel , nil autorisé

Identifiants des interfaces rattachées. Par ex. [eth0, eth1]. Pour les interfaces bond, il s’agit des esclaves. Seulement pour les interfaces de type bond ou bridge.

Validations:

  • Must be an array of any type

interface[bond_options]
optionel , nil autorisé

Options séparées par des espaces. Ex : miimon=100. Seulement pour les interfaces bond.

Validations:

  • Must be a String

interface[compute_attributes]
optionel , nil autorisé

Autres attributs pour la ressource de calcul spécifiques à cet interface.

Validations:

  • Must be a Hash


PUT /api/hosts/:host_id/interfaces/:id
Mise à jour d'une interface d'un hôte

Exemples

PUT /api/hosts/host2643/interfaces/7
{
  "interface": {
    "name": "wuhebbfueg"
  }
}
200
{
  "subnet_id": null,
  "subnet_name": null,
  "subnet6_id": null,
  "subnet6_name": null,
  "domain_id": null,
  "domain_name": null,
  "created_at": "2019-09-11 14:58:36 UTC",
  "updated_at": "2019-09-11 14:58:36 UTC",
  "managed": true,
  "identifier": "eth844",
  "id": 7,
  "name": "wuhebbfueg",
  "ip": "0.0.0.195",
  "ip6": null,
  "mac": "00:33:45:ab:01:3e",
  "mtu": null,
  "fqdn": "wuhebbfueg",
  "primary": false,
  "provision": false,
  "type": "interface",
  "virtual": false
}

Paramètres

Nom du paramètre Description
location_id
optionel

Tri par emplacement

Validations:

  • Must be a Integer

organization_id
optionel

Tri par organisation

Validations:

  • Must be a Integer

host_id
requis

ID ou nom d’hôte

Validations:

  • Must be a String

id
requis

ID de l’interface

Validations:

  • Must be an identifier, string from 1 to 128 characters containing only alphanumeric characters, space, underscore(_), hypen(-) with no leading or trailing space.

interface
requis

information de l’interface

Validations:

  • Must be a Hash

interface[mac]
optionel , nil autorisé

Adresse MAC de l’interface. Requis pour les interfaces gérées des hôtes physiques.

Validations:

  • Must be a String

interface[ip]
optionel , nil autorisé

interface de l’adresse IPv4

Validations:

  • Must be a String

interface[ip6]
optionel , nil autorisé

interface de l’adresse IPv6

Validations:

  • Must be a String

interface[type]
optionel , nil autorisé

Type d’interface , p.e. bmc. Valeur par défaut interface

Validations:

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

interface[name]
optionel , nil autorisé

Nom DNS de l’interface

Validations:

  • Must be a String

interface[subnet_id]
optionel , nil autorisé

ID du sous-réseau Foreman de l’interface IPv4

Validations:

  • Must be a number.

interface[subnet6_id]
optionel , nil autorisé

ID du sous-réseau Foreman de l’interface IPv6

Validations:

  • Must be a number.

interface[domain_id]
optionel , nil autorisé

Domaine ID Foreman de l’interface. Requis pour les interfaces primaires des hôtes gérés.

Validations:

  • Must be a number.

interface[identifier]
optionel , nil autorisé

Identifiant du périphérique. Ex : eth0 ou eth1.1

Validations:

  • Must be a String

interface[managed]
optionel , nil autorisé

Cette interface doit-elle être gérée par les smart proxies DHCP et DNS et être configurée pendant le provisioning ?

Validations:

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

interface[primary]
optionel , nil autorisé

Cette interface doit-elle être utilisée pour choisir le FQDN de l’hôte ? Chaque hôte géré doit avoir une interface primaire.

Validations:

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

interface[provision]
optionel , nil autorisé

Cette interface doit-elle être utilisée pour les communications TFTP et PXE (ou SSH pour les images d’hôtes) ? Chaque hôte géré doit avoir une interface de provisioning.

Validations:

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

interface[username]
optionel , nil autorisé

Seulement pour les interfaces BMC.

Validations:

  • Must be a String

interface[password]
optionel , nil autorisé

Seulement pour les interfaces BMC.

Validations:

  • Must be a String

interface[provider]
optionel , nil autorisé

Fournisseur de l’interface. Ex. IPMI. Seulement pour les interfaces BMC.

Validations:

  • Must be one of: IPMI, SSH.

interface[virtual]
optionel , nil autorisé

Périphérique Alias ou VLAN

Validations:

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

interface[tag]
optionel , nil autorisé

Tag VLAN. Cet attribut a précédence sur l’ID VLAN du sous-réseau. Seulement pour les interfaces virtuelles.

Validations:

  • Must be a String

interface[mtu]
optionel , nil autorisé

MTU, cet attribut a précédence sur la MTU du sous réseau.

Validations:

  • Must be a Integer

interface[attached_to]
optionel , nil autorisé

Identifiant de l’interface auquel est rattachée cette interface. Ex. eth1. Seulement pour les interfaces virtuelles.

Validations:

  • Must be a String

interface[mode]
optionel , nil autorisé

Mode d’agrégat de l’interface. Par exemple balance-rr. Seulement pour les interfaces bond.

Validations:

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

interface[attached_devices]
optionel , nil autorisé

Identifiants des interfaces rattachées. Par ex. [eth0, eth1]. Pour les interfaces bond, il s’agit des esclaves. Seulement pour les interfaces de type bond ou bridge.

Validations:

  • Must be an array of any type

interface[bond_options]
optionel , nil autorisé

Options séparées par des espaces. Ex : miimon=100. Seulement pour les interfaces bond.

Validations:

  • Must be a String

interface[compute_attributes]
optionel , nil autorisé

Autres attributs pour la ressource de calcul spécifiques à cet interface.

Validations:

  • Must be a Hash


DELETE /api/hosts/:host_id/interfaces/:id
Supprimer une interface d'hôte

Exemples

DELETE /api/hosts/host2645/interfaces/13
{
  "interface": {}
}
200
{
  "id": 13,
  "mac": "00:33:45:ab:01:42",
  "ip": "0.0.0.199",
  "name": null,
  "host_id": 5,
  "subnet_id": null,
  "domain_id": null,
  "attrs": {},
  "created_at": "2019-09-11T14:58:36.301Z",
  "updated_at": "2019-09-11T14:58:36.301Z",
  "provider": null,
  "username": null,
  "password": null,
  "virtual": false,
  "link": true,
  "identifier": "eth848",
  "tag": "",
  "attached_to": "",
  "managed": true,
  "mode": "balance-rr",
  "attached_devices": "",
  "bond_options": "",
  "primary": false,
  "provision": false,
  "compute_attributes": {},
  "ip6": null,
  "subnet6_id": null
}

Paramètres

Nom du paramètre Description
location_id
optionel

Tri par emplacement

Validations:

  • Must be a Integer

organization_id
optionel

Tri par organisation

Validations:

  • Must be a Integer

host_id
requis

ID ou nom d’hôte

Validations:

  • Must be a String

id
requis

ID de l’interface

Validations:

  • Must be a String