host-linux-device datasource
The host-linux-device datasource collects information about Linux hosts from the operating system and creates metric data points and entities.
This datasource can add dependency relationships among the entities it creates and the entities created by the following datasources:
- host-cpu
- host-linux-lvm
- host-process
- host-disk
- host-filesystem
- host-linux-service
- host-network-interface
To enable the addition of dependency relationships, configure and enable the preceding datasources through this datasource's configuration file.
Metrics
Metric data points include the following groups and name styles:
CPU
Name | Units | Description |
---|---|---|
cpu.usage_active | percent | Percent of CPU used for activity |
cpu.usage_guest | percent | Percent of CPU used for guest activity |
cpu.usage_guest_nice | percent | Percent of CPU used for guest nice activity |
cpu.usage_idle | percent | Percent of CPU used for idleness |
cpu.usage_iowait | percent | Percent of CPU used for IO Waiting activity |
cpu.usage_irq | percent | Percent of CPU used for IRQ activity |
cpu.usage_nice | percent | Percent of CPU used for Nice activity |
cpu.usage_softirq | percent | Percent of CPU used for Soft IRQ activity |
cpu.usage_steal | percent | Percent of CPU used for Steal activity |
cpu.usage_system | percent | Percent of CPU used for System activity |
cpu.usage_user | percent | Percent of CPU used for User activity |
Memory
Name | Units | Description |
---|---|---|
mem.buffered | bytes | The amount of buffered memory |
mem.cached | bytes | The amount of cached memory |
mem.free | GB | The amount of free memory for the system |
mem.swap_free | bytes | The amount of available swap space |
mem.swap_total | bytes | The total amount of swap space |
mem.total | GB | The total amount of memory for the system |
mem.utilization | percent | The percent of memory used |
Processes
Name | Units | Description |
---|---|---|
process.count | count | The number of running processes on a host |
Users
Name | Units | Description |
---|---|---|
users.count | count | The number of users logged in to a host |
Name styles
This datasource supports two mutually exclusive naming styles for the metrics that it collects:
- canonical: The default style, which features namespace prefixes.
- linuxMonitorZenPack: The legacy style, used in the Linux Monitor ZenPack.
To change the default style, set the metric-names-variant
property in
the datasource section to linuxMonitorZenPack
.
CPU
Canonical style | ZenPack style |
---|---|
cpu.usage_active | cpu_ssCpuUserPerCpu |
cpu.usage_guest | cpu_guestPerCpu |
cpu.usage_guest_nice | cpu_guestNicePerCpu |
cpu.usage_idle | cpu_ssCpuIdlePerCpu |
cpu.usage_iowait | cpu_ssCpuWaitPerCpu |
cpu.usage_irq | cpu_ssCpuInterruptPerCpu |
cpu.usage_nice | cpu_ssCpuNicePerCpu |
cpu.usage_softirq | cpu_ssCpuSoftInterruptPerCpu |
cpu.usage_steal | cpu_ssCpuStealPerCpu |
cpu.usage_system | cpu_ssCpuSystemPerCpu |
cpu.usage_user | cpu_ssCpuUsedPerCpu |
Memory
Canonical style | ZenPack style |
---|---|
mem.buffered | mem_Buffers |
mem.cached | mem_Cached |
mem.free | mem_MemFree |
mem.swap_free | mem_SwapFree |
mem.swap_total | mem_SwapTotal |
mem.total | mem_MemTotal |
mem.utilization | mem_MemUsedPercent |
Processes
Canonical style | ZenPack style |
---|---|
process.count | ps_count |
Users
Canonical style | ZenPack style |
---|---|
users.count | users.count |
Entities
Property | Description |
---|---|
name | System hostname |
hostId | System UUID |
kernelArch | CPU architecture (from uname -m ) |
kernelVersion | Kernel version, if available |
os | Operating system (linux ) |
platform | Distribution name (for example, ubuntu or linuxmint ) |
platformFamily | Distribution heritage (for example, debian or rhel ) |
platformVersion | Distribution version number |
virtualizationRole | Hypervisor system role (guest or host ) |
virtualizationSystem | Hypervisor system name |
bootTime | System boot time |
Example
{
"bootTime": 1663232877,
"hostId": "420733dc-7643-70b7-5f78-44e76d094e86",
"kernelArch": "x86_64",
"kernelVersion": "3.10.0-1160.76.1.el7.x86_64",
"name": "ServerStation1",
"os": "linux",
"platform": "centos",
"platformFamily": "rhel",
"platformVersion": "7.9.2009",
"virtualizationRole": "",
"virtualizationSystem": ""
}
Configuration
If you specify the host-linux-device datasource during installation, its configuration file is placed in the following location:
/etc-configs/configs/host-linux-device.config.yaml
Otherwise, you must copy it from the templates directory:
cp /etc-configs/.templates/.configs/host-linux-device.config.yaml \
/etc-configs/configs/host-linux-device.config.yaml
The Zenoss Cloud agent service monitors the /etc/zendatamon-configs/configs
directory
and loads any new or changed configuration files immediately.
Properties
This datasource includes both common and datasource-specific properties.
Common properties
interval
(number)- The number of seconds to wait between collection attempts.
This value overrides the
defaultInterval
value in the Zenoss Cloud agent service configuration file. timeout
(number)- The number of seconds to wait before dropping a collection attempt.
metric-names-variant
(string, default =canonical
)- The metric name style, either
canonical
orlinuxMonitorZenPack
. protocol
(string, default =local
)- Collection type; only
local
is supported, so this key can be omitted.
Datasource properties
Use the component_configs
property to specify the following datasources:
- host-cpu
- host-disk
- host-filesystem
- host-linux-lvm
- host-linux-service
- host-network-interface
- host-process
The datasource-specific fields you set in the host-linux-device configuration file are used as the default configurations for each datasource, which you can override in the separate datasource configuration files.
You can disable a datasource by setting its enabled
property in the host-linux-device configuration file to false
. Datasources are enabled by
default, so the field is typically omitted.
Example
apiVersion: v1
kind: datasource
name: host-linux-device
spec:
type: host-linux-device
datasource:
interval: 60
timeout: 30
metric-names-variant: canonical
protocol: ""
component_configs:
host-cpu: {}
host-linux-lvm:
enabled: false
host-process:
enabled: false
include-processes:
- .*runzope.*zenoss.*
exclude-processes:
- \b(vim|tail|grep|tar|cat|bash)\b
host-disk:
include-block-types:
- disk
- part
- lvm
- raid1
host-filesystem:
ignore-types:
- other
- ram
- virtualMemory
- removableDisk
- floppyDisk
- compactDisk
- ramDisk
- flashMemory
- networkDisk
host-linux-service:
enabled: false
exclude-names:
- addhostname
- anacron
- bluetooth
- cpuspeed
- ondemand
- firstboot
- irqbalance
- isdn
- lvm2-monitor
- mcstrans
- mdmonitor
- portreserve
- pppd-dns
- rpcgssd
- rsync
- sudo
- sysstat
exclude-load-statuses:
- not-found
exclude-active-statuses:
- inactive
- failed
- deactivating
exclude-sub-statuses:
- exited
host-network-interface:
enabled: true
use-sudo: true
exclude-names:
- ens*
ZenPack compatibility
For compatibility with the Linux Monitor ZenPack, use the action service to create a metric trigger (and accompanying destination and rule) when cpu.usage_active or mem.utilization are greater than 90%.