The module needs a Proxmox VE user with at least the following permissions:
VM.Audit
Pool.Audit
Sys.Audit
Note: If the values from QEMU guest agent should be fetch too, additionally the permission
VM.Monitor
is required.
For authentification either a API token or the users password can be used. It is highly recommended to use the API token though.
See the official Proxmox VE documentation for more information on how to create user, role and API token.
At the moment icingaweb2-module-pve
can import PVE nodes, virtual machines / lxc container, storage and resource pools.
The following steps are necessary for all kinds of object types. Below you find additional instructions, which are specific to certain object types.
- Create a new import source in Director
- Select
Proxmox Virtual Environment (Proxmox VE)
in theSource Type
list - Configure the host details according to your local setup (section
Server configuration
)
Create an import source and perform the basic configuration as described above.
Additionall steps:
- Choose
Host Systems
in theObject Type
list - Set the
Key column name
(usuallyname
for a node)
The following fields are imported (fields marked with *
are optional):
name | type | description | example |
---|---|---|---|
vm_id |
integer | Unique id of the virtual machine / lxc container (can be used as key column) | 123 |
vm_name |
string | Name of the virtual machine / lxc container | srv-db01 |
vm_pool |
string | Assigned resource pool (empty if none) | Web servers |
vm_type |
string | qemu if VM or lxc if container |
Web servers |
vm_host |
string | Name of the PVE node where the virtual machine / lxc container is running | pve10 |
hardware_cpu |
integer | number of assigned cpu cores | 4 |
hardware_memory |
integer | amount of assigned memory in megabytes | 32768 |
guest_network * |
object | MAC address and ip addresses (IPv4 and IPv6). On virtual machines this field is only populated if the qemu guest agent is running and the import source has set the configuration option Fetch Guest Agent data to yes (needs additional request, thus might be slow in larger environments) |
{ |
vm_ha * |
bool | Is the VM or container managed by the high availability service. This field is only present if the import source has set the configuration option Fetch VM HA state to yes (needs additional request, thus might be slow in larger environments). |
true |
description * |
string | Optional description field of the VM or container. This field is only present if the import source has set the configuration option Fetch VM config to yes (needs additional request, thus might be slow in larger environments). |
Web server for customer ACME corp. |
os_type * |
string | Optional operating system type field of the VM or container. This field is only present if the import source has set the configuration option Fetch VM config to yes (needs additional request, thus might be slow in larger environments). |
win10 |
Create an import source and perform the basic configuration as described above.
Additionall steps:
- Choose
Virtual Machines
in theObject Type
list - Set the
Key column name
(usuallyvm_id
orvm_name
for a virtual machine)
The following fields are imported (fields marked with *
are optional):
name | type | description | example |
---|---|---|---|
name |
string | Hostname of the node (matches display value as in PVE UI) | pve01 |
cpu |
integer | Number of host cpu threads | 32 |
memory |
integer | Amount of host memory in bytes | 135030501376 |
Create an import source and perform the basic configuration as described above.
Additionall steps:
- Choose
Storages
in theObject Type
list - Set the
Key column name
(usuallystorage_id
for a resource pool)
The following fields are imported (fields marked with *
are optional):
name | type | description | example |
---|---|---|---|
storage_id |
string | Identifier / display name of the storage (matches display value as in PVE UI) | rpool |
content |
list | Allowed content for this storage. Values are separated by comma (split with a modifier) | rootdir,images,iso,vztmpl,backup |
nodes |
list | Comma separated list of node names, where the storage is present (empty if present on all nodes in cluster). Split content with a modifier if needed. | pve01,pve10 |
shared |
bool | Indicates if a pool is shared across the cluster (true when field nodes is empty) |
- |
type |
string | storage type | zfspool |
Create an import source and perform the basic configuration as described above.
Additionall steps:
- Choose
Pools
in theObject Type
list - Set the
Key column name
(usuallypool_id
for a resource pool)
The following fields are imported (fields marked with *
are optional):
name | type | description | example |
---|---|---|---|
pool_id |
string | Identifier / display name of the pool (matches display value as in PVE UI) | Web servers |
comment |
string | Optional descriptive comment of the pool | Pool contains all customer webservers |