Modernizing UNIX Monitoring: Collecting Metrics from HP-UX, Solaris, and AIX with Grafana and Prometheus

August 20, 20266 min read
UNIXObservabilityGrafanaPrometheusSNMP

Introduction

Many large enterprises sustain their most critical operations on traditional UNIX servers (such as Oracle Solaris, HP-UX, or IBM AIX). Whether running giant relational databases, legacy billing systems, or ERP systems (such as SAP Business One), these UNIX platforms deliver high stability but often operate as "black boxes" for modern monitoring teams.

Maintaining separate, disconnected legacy monitoring consoles leads to operational silos. In this instructive article, we demonstrate how to integrate Solaris, HP-UX, and AIX servers into a modern observability ecosystem based on Prometheus and Grafana, creating centralized dashboards that facilitate preventive decision-making.


๐Ÿ—๏ธ Technical Challenges and Solution Architecture

Unlike modern Linux systems, installing and running the standard node_exporter directly on commercial UNIX systems can be complex. This is due to a lack of compatible native builds, specific system libraries (libc differences), or older processor architectures (such as Oracle's SPARC or HP's PA-RISC).

The most robust architectural solution uses a collection bridge:

[Solaris / HP-UX / AIX Server]
              โ”‚ (Native metrics collected via local SNMP)
              โ–ผ
    [Prometheus SNMP Exporter] (Running in a Linux container)
              โ”‚
              โ–ผ
        [Prometheus] <โ”€โ”€โ”€> [Grafana Dashboard]

Why SNMP?

The SNMP (Simple Network Management Protocol) is native and highly mature on these operating systems. Activating the native SNMP daemon (such as snmpd) on UNIX systems consumes very little CPU from the main server, preserving the stability required for critical infrastructures.

โš™๏ธ Step-by-Step Implementation

Step 1: Configure the SNMP Daemon on UNIX

On Oracle Solaris 11, for example, enabling the SNMP service is managed by the Service Management Facility (SMF):

Enable the SNMP service

svcadm enable svc:/application/management/net-snmp:default

On AIX, configure the /etc/snmpdv3.conf file to allow reading classic system MIBs (such as memory usage, disk status, and CPU load) and restart the subsystem:

stopsrc -s snmpd
startsrc -s snmpd

Step 2: Configure the Prometheus SNMP Exporter

On an intermediary Linux server on the same network, install the official Prometheus snmp_exporter. Configure the snmp.yml file to translate manufacturer-specific hardware MIBs (e.g., Sun/Oracle or HP-UX hardware MIBs).

Map the target in your prometheus.yml:

scrape_configs:
  • job_name: 'unix-legacy'
  • static_configs:
  • targets:
  • 192.168.1.100 # IP of the Solaris/AIX server
  • metrics_path: /snmp params: module: [if_mib] # Target SNMP module relabel_configs:
  • source_labels: [__address__]
  • target_label: __param_target
  • source_labels: [__param_target]
  • target_label: instance
  • target_label: __address__
  • replacement: 127.0.0.1:9116 # Address of the snmp_exporter

    What sar still answers

    The exporter does not replace diagnosis on the host. When the panel goes red, I log into Solaris, HP-UX, or AIX and confirm with the same 1-second interval.

    sar -u 1 5
    vmstat 1 5
    iostat -x 1 3
    snmpwalk -v2c -c public 192.0.2.10 1.3.6.1.2.1.25.2.3

    192.0.2.10 here is a documentation address. In production the walk uses the management-zone community, never the default public left in the example. If sar and Grafana disagree, the Prometheus scrape is late, not the UNIX host.


    ๐Ÿ“Š Benefits of the Grafana Dashboard

    Once Prometheus begins scraping SNMP metrics, Grafana allows you to build visually rich dashboards that aggregate: Disk Capacity: Essential for predicting tablespace overflows in databases. CPU Utilization & Load Average: Identifying processing spikes during nightly batch routines. * Network Metrics (I/O): Detecting bottlenecks in communications with the Storage Area Network (SAN).

    This centralization eliminates the need for system administrators to query terminal commands (sar, vmstat, iostat) in isolation, bringing agility to the Network Operations Center (NOC) and aligning the legacy environment with SRE (Site Reliability Engineering) best practices.

    Related Articles