GET /api/hosts/:host_id/interfaces
Alle Host-Schnittstellen auflisten

GET /api/domains/:domain_id/interfaces
Alle Schnittstellen für Domäne auflisten

GET /api/subnets/:subnet_id/interfaces
Alle Schnittstellen für das Subnetz auflisten

Beispiele

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

Parameter

Parametername Beschreibung
location_id
optional

Scope nach Standorten

Validations:

  • Must be a Integer

organization_id
optional

Scope nach Organisationen

Validations:

  • Must be a Integer

host_id
verpflichtend

Kennung oder Name des Hosts

Validations:

  • Must be a String

domain_id
optional

Kennung oder Name der Domäne

Validations:

  • Must be a String

subnet_id
optional

Kennung oder Name des Subnetzes

Validations:

  • Must be a String

page
optional

Seitennummer, beginnend bei 1

Validations:

  • Must be a number.

per_page
optional

Anzahl der angezeigten Ergebnisse pro Seite

Validations:

  • Must be a number.


GET /api/hosts/:host_id/interfaces/:id
Schnittstelle für den Host anzeigen

Beispiele

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
}

Parameter

Parametername Beschreibung
location_id
optional

Scope nach Standorten

Validations:

  • Must be a Integer

organization_id
optional

Scope nach Organisationen

Validations:

  • Must be a Integer

host_id
verpflichtend

Kennung oder Name des Hosts

Validations:

  • Must be a String

id
verpflichtend

Kennung oder Name der Schnittstelle

Validations:

  • Must be a String


POST /api/hosts/:host_id/interfaces
Schnittstelle auf einem Host erstellen

Beispiele

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
}

Parameter

Parametername Beschreibung
location_id
optional

Scope nach Standorten

Validations:

  • Must be a Integer

organization_id
optional

Scope nach Organisationen

Validations:

  • Must be a Integer

host_id
verpflichtend

Kennung oder Name des Hosts

Validations:

  • Must be a String

interface
verpflichtend

Schnittstelleninformation

Validations:

  • Must be a Hash

interface[mac]
optional , nil erlaubt

MAC-Adresse der Schnittstelle. Erforderlich für gemanagte Bare-Metal-Schnittstellen.

Validations:

  • Must be a String

interface[ip]
optional , nil erlaubt

IPv4-Adresse der Schnittstelle

Validations:

  • Must be a String

interface[ip6]
optional , nil erlaubt

IPv6-Adresse der Schnittstelle

Validations:

  • Must be a String

interface[type]
optional , nil erlaubt

Schnittstellentyp, z.B. BMC. Standard ist interface

Validations:

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

interface[name]
optional , nil erlaubt

DNS-Name der Schnittstelle

Validations:

  • Must be a String

interface[subnet_id]
optional , nil erlaubt

Foreman Subnetz Kennung der IPv4 Schnittstelle

Validations:

  • Must be a number.

interface[subnet6_id]
optional , nil erlaubt

Foreman Subnetz Kennung der IPv6 Schnittstelle

Validations:

  • Must be a number.

interface[domain_id]
optional , nil erlaubt

Foreman-Domänen-Kennung der Schnittstelle. Erforderlich für Primärschnittstellen auf gemanagten Hosts.

Validations:

  • Must be a number.

interface[identifier]
optional , nil erlaubt

Gerätebezeichner, z.B. eth0 oder eth1.1

Validations:

  • Must be a String

interface[managed]
optional , nil erlaubt

Soll diese Schnittstelle über DHCP- und DNS-Smart-Proxy verwaltet werden, oder soll sie bei der Bereitstellung konfiguriert werden?

Validations:

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

interface[primary]
optional , nil erlaubt

Soll diese Schnittstelle zum Erstellen des FQDN des Hosts verwendet werden? Jeder gemanagte Host muss eine Primärschnittstelle aufweisen.

Validations:

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

interface[provision]
optional , nil erlaubt

Soll diese Schnittstelle für TFTP von PXELinux (oder SSH für image-basierte Hosts) verwendet werden? Jeder gemanagte Host muss eine Bereitstellungsschnittstelle aufweisen.

Validations:

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

interface[username]
optional , nil erlaubt

Nur für BMC-Schnittstellen.

Validations:

  • Must be a String

interface[password]
optional , nil erlaubt

Nur für BMC-Schnittstellen.

Validations:

  • Must be a String

interface[provider]
optional , nil erlaubt

Schnittstellen-Provider, z.B. IPMI. Nur für BMC-Schnittstellen.

Validations:

  • Must be one of: IPMI, SSH.

interface[virtual]
optional , nil erlaubt

Alias oder VLAN-Gerät

Validations:

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

interface[tag]
optional , nil erlaubt

VLAN-Tag, dieses Atttribut hat Vorrang vor der Subnetz-VLAN-Kennung. Nur für virtuelle Schnittstellen.

Validations:

  • Must be a String

interface[mtu]
optional , nil erlaubt

MTU. Dieser Wert hat Vorrang über die Subnetz MTU.

Validations:

  • Must be a Integer

interface[attached_to]
optional , nil erlaubt

Kennung der Schnittstelle, zu der diese Schnittstelle gehört, z.B. eth1. Nur für virtuelle Schnittstellen.

Validations:

  • Must be a String

interface[mode]
optional , nil erlaubt

Bond-Modus der Schnittstelle, z.B. balance-rr. Ausschließlich für Bond-Schnittstellen.

Validations:

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

interface[attached_devices]
optional , nil erlaubt

Kennungen von verbundenen Schnittstellen, z.B. ['eth1', 'eth2']. Für Bond-Schnittstellen sind diese die Slaves. Nur für Bond- und Bridge-Schnittstellen.

Validations:

  • Must be an array of any type

interface[bond_options]
optional , nil erlaubt

Durch Leerzeichen getrennte Optionen, z.B. miimon=100. Ausschließlich für Bond-Schnittstellen.

Validations:

  • Must be a String

interface[compute_attributes]
optional , nil erlaubt

Zusätzliche Rechenressourcen-spezifische Attribute für die Schnittstelle.

Validations:

  • Must be a Hash


PUT /api/hosts/:host_id/interfaces/:id
Host-Schnittstelle aktualisieren

Beispiele

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
}

Parameter

Parametername Beschreibung
location_id
optional

Scope nach Standorten

Validations:

  • Must be a Integer

organization_id
optional

Scope nach Organisationen

Validations:

  • Must be a Integer

host_id
verpflichtend

Kennung oder Name des Hosts

Validations:

  • Must be a String

id
verpflichtend

Kennung der Schnittstelle

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
verpflichtend

Schnittstelleninformation

Validations:

  • Must be a Hash

interface[mac]
optional , nil erlaubt

MAC-Adresse der Schnittstelle. Erforderlich für gemanagte Bare-Metal-Schnittstellen.

Validations:

  • Must be a String

interface[ip]
optional , nil erlaubt

IPv4-Adresse der Schnittstelle

Validations:

  • Must be a String

interface[ip6]
optional , nil erlaubt

IPv6-Adresse der Schnittstelle

Validations:

  • Must be a String

interface[type]
optional , nil erlaubt

Schnittstellentyp, z.B. BMC. Standard ist interface

Validations:

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

interface[name]
optional , nil erlaubt

DNS-Name der Schnittstelle

Validations:

  • Must be a String

interface[subnet_id]
optional , nil erlaubt

Foreman Subnetz Kennung der IPv4 Schnittstelle

Validations:

  • Must be a number.

interface[subnet6_id]
optional , nil erlaubt

Foreman Subnetz Kennung der IPv6 Schnittstelle

Validations:

  • Must be a number.

interface[domain_id]
optional , nil erlaubt

Foreman-Domänen-Kennung der Schnittstelle. Erforderlich für Primärschnittstellen auf gemanagten Hosts.

Validations:

  • Must be a number.

interface[identifier]
optional , nil erlaubt

Gerätebezeichner, z.B. eth0 oder eth1.1

Validations:

  • Must be a String

interface[managed]
optional , nil erlaubt

Soll diese Schnittstelle über DHCP- und DNS-Smart-Proxy verwaltet werden, oder soll sie bei der Bereitstellung konfiguriert werden?

Validations:

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

interface[primary]
optional , nil erlaubt

Soll diese Schnittstelle zum Erstellen des FQDN des Hosts verwendet werden? Jeder gemanagte Host muss eine Primärschnittstelle aufweisen.

Validations:

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

interface[provision]
optional , nil erlaubt

Soll diese Schnittstelle für TFTP von PXELinux (oder SSH für image-basierte Hosts) verwendet werden? Jeder gemanagte Host muss eine Bereitstellungsschnittstelle aufweisen.

Validations:

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

interface[username]
optional , nil erlaubt

Nur für BMC-Schnittstellen.

Validations:

  • Must be a String

interface[password]
optional , nil erlaubt

Nur für BMC-Schnittstellen.

Validations:

  • Must be a String

interface[provider]
optional , nil erlaubt

Schnittstellen-Provider, z.B. IPMI. Nur für BMC-Schnittstellen.

Validations:

  • Must be one of: IPMI, SSH.

interface[virtual]
optional , nil erlaubt

Alias oder VLAN-Gerät

Validations:

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

interface[tag]
optional , nil erlaubt

VLAN-Tag, dieses Atttribut hat Vorrang vor der Subnetz-VLAN-Kennung. Nur für virtuelle Schnittstellen.

Validations:

  • Must be a String

interface[mtu]
optional , nil erlaubt

MTU. Dieser Wert hat Vorrang über die Subnetz MTU.

Validations:

  • Must be a Integer

interface[attached_to]
optional , nil erlaubt

Kennung der Schnittstelle, zu der diese Schnittstelle gehört, z.B. eth1. Nur für virtuelle Schnittstellen.

Validations:

  • Must be a String

interface[mode]
optional , nil erlaubt

Bond-Modus der Schnittstelle, z.B. balance-rr. Ausschließlich für Bond-Schnittstellen.

Validations:

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

interface[attached_devices]
optional , nil erlaubt

Kennungen von verbundenen Schnittstellen, z.B. ['eth1', 'eth2']. Für Bond-Schnittstellen sind diese die Slaves. Nur für Bond- und Bridge-Schnittstellen.

Validations:

  • Must be an array of any type

interface[bond_options]
optional , nil erlaubt

Durch Leerzeichen getrennte Optionen, z.B. miimon=100. Ausschließlich für Bond-Schnittstellen.

Validations:

  • Must be a String

interface[compute_attributes]
optional , nil erlaubt

Zusätzliche Rechenressourcen-spezifische Attribute für die Schnittstelle.

Validations:

  • Must be a Hash


DELETE /api/hosts/:host_id/interfaces/:id
Host-Schnittstelle löschen

Beispiele

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
}

Parameter

Parametername Beschreibung
location_id
optional

Scope nach Standorten

Validations:

  • Must be a Integer

organization_id
optional

Scope nach Organisationen

Validations:

  • Must be a Integer

host_id
verpflichtend

Kennung oder Name des Hosts

Validations:

  • Must be a String

id
verpflichtend

Kennung der Schnittstelle

Validations:

  • Must be a String