host.create

Apraksts

object host.create(object/array hosts)

Šī metode ļauj izveidot jaunus hostus.

Šī metode ir pieejama tikai Admin un Super admin lietotāju tipiem. Atļaujas izsaukt šo metodi var tikt atsauktas lietotāju lomu iestatījumos. Plašāku informāciju skatiet Lietotāju lomas.

Parametri

(object/array) Hosts, ko izveidot.

Papildus standarta hosta īpašībām metode pieņem šādus parametrus.

Parameter Type Description
groups object/array Host grupas, kurām pievienot hostu.

Host grupām jābūt definētai tikai groupid īpašībai.

Parametra uzvedība:
- required
interfaces object/array Saskarnes, kas jāizveido hostam.
tags object/array Host tagi.
templates object/array Veidnes, kas jāsaista ar hostu.

Veidnēm jābūt definētai tikai templateid īpašībai.
macros object/array Lietotāja makro, kas jāizveido hostam.
inventory object Host inventāra īpašības.

Atgrieztās vērtības

(object) Atgriež objektu, kas satur izveidoto hostu ID īpašībā hostids. Atgriezto ID secība atbilst nodoto hostu secībai.

Piemēri

Hosta izveide

Izveidojiet hostu ar nosaukumu "Linux server" ar IP saskarni un tagiem, pievienojiet to grupai, piesaistiet tam veidni un iestatiet MAC adreses hosta inventārā.

Pieprasījums:

{
    "jsonrpc": "2.0",
    "method": "host.create",
    "params": {
        "host": "Linux server",
        "interfaces": [
            {
                "type": 1,
                "main": 1,
                "useip": 1,
                "ip": "192.168.3.1",
                "dns": "",
                "port": "10050"
            }
        ],
        "groups": [
            {
                "groupid": "50"
            }
        ],
        "tags": [
            {
                "tag": "host-name",
                "value": "linux-server"
            }
        ],
        "templates": [
            {
                "templateid": "20045"
            }
        ],
        "macros": [
            {
                "macro": "{$USER_ID}",
                "value": "123321"
            },
            {
                "macro": "{$USER_LOCATION}",
                "value": "0:0:0",
                "description": "platuma, garuma un augstuma koordinātas"
            }
        ],
        "inventory_mode": 0,
        "inventory": {
            "macaddress_a": "01234",
            "macaddress_b": "56768"
        }
    },
    "id": 1
}

Atbilde:

{
    "jsonrpc": "2.0",
    "result": {
        "hostids": [
            "107819"
        ]
    },
    "id": 1
}

Hosta izveide ar SNMP saskarni

Izveidojiet hostu ar nosaukumu "SNMP host" ar SNMPv3 saskarni un detalizētu informāciju.

Pieprasījums:

{
    "jsonrpc": "2.0",
    "method": "host.create",
    "params": {
        "host": "SNMP host",
        "interfaces": [
            {
                "type": 2,
                "main": 1,
                "useip": 1,
                "ip": "127.0.0.1",
                "dns": "",
                "port": "161",
                "details": {
                    "version": 3,
                    "bulk": 0,
                    "securityname": "mysecurityname",
                    "contextname": "",
                    "securitylevel": 1
                }
            }
        ],
        "groups": [
            {
                "groupid": "4"
            }
        ]
    },
    "id": 1
}

Atbilde:

{
    "jsonrpc": "2.0",
    "result": {
        "hostids": [
            "10658"
        ]
    },
    "id": 1
}

Hosta izveide ar PSK šifrēšanu

Izveidojiet hostu ar nosaukumu "PSK host", kuram ir konfigurēta PSK šifrēšana. Ņemiet vērā, ka hostam jābūt iepriekš konfigurētam PSK izmantošanai.

Pieprasījums:

{
    "jsonrpc": "2.0",
    "method": "host.create",
    "params": {
        "host": "PSK host",
        "interfaces": [
            {
                "type": 1,
                "ip": "192.168.3.1",
                "dns": "",
                "port": "10050",
                "useip": 1,
                "main": 1
            }
        ],
        "groups": [
            {
                "groupid": "2"
            }
        ],
        "tls_accept": 2,
        "tls_connect": 2,
        "tls_psk_identity": "PSK 001",
        "tls_psk": "1f87b595725ac58dd977beef14b97461a7c1045b9a1c963065002c5473194952"
    },
    "id": 1
}

Atbilde:

{
    "jsonrpc": "2.0",
    "result": {
        "hostids": [
            "10590"
        ]
    },
    "id": 1
}

Hosta, ko uzrauga starpniekserveris, izveide

Izveidojiet hostu, ko uzraudzīs starpniekserveris ar ID "1".

Pieprasījums:

{
    "jsonrpc": "2.0",
    "method": "host.create",
    "params": {
        "host": "Host monitored by proxy",
        "groups": [
            {
                "groupid": "2"
            }
        ],
        "monitored_by": 1,
        "proxyid": 1
    },
    "id": 1
}

Atbilde:

{
    "jsonrpc": "2.0",
    "result": {
        "hostids": [
            "10591"
        ]
    },
    "id": 1
}

Hosta, ko uzrauga starpniekserveru grupa, izveide

Izveidojiet hostu, ko uzraudzīs starpniekserveru grupa ar ID "1".

Pieprasījums:

{
    "jsonrpc": "2.0",
    "method": "host.create",
    "params": {
        "host": "Host monitored by proxy group",
        "groups": [
            {
                "groupid": "2"
            }
        ],
        "monitored_by": 2,
        "proxy_groupid": 1
    },
    "id": 1
}

Atbilde:

{
    "jsonrpc": "2.0",
    "result": {
        "hostids": [
            "10592"
        ]
    },
    "id": 1
}

Skatiet arī

Avots

CHost::create() failā ui/include/classes/api/services/CHost.php.