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) Hosti, ko izveidot.

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

Parametrs Tips Apraksts
groups object/array Hostu grupas, kurām pievienot hostu.

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

Parametra darbība:
- obligāts
interfaces object/array Saskarnes, kas tiks izveidotas hostam.
tags object/array Hosta birkas.
templates object/array Veidnes, kas tiks piesaistītas hostam.

Veidnēm jābūt definētai tikai templateid īpašībai.
macros object/array Lietotāja makrosi, kas tiks izveidoti hostam.
inventory object Hosta inventarizācijas ī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.