Install Zabbix proxy on Nodegrid OS
  • 18 May 2023
  • 1 Minute to read
  • Dark
    Light
  • PDF

Install Zabbix proxy on Nodegrid OS

  • Dark
    Light
  • PDF

Article summary

Zabbix proxy deployment on Nodegrid OS

This document outlines the installation of a Zabbix proxy agent on a Nodegrid appliance.

1. Overview

At a high level, the following steps must be performed

  • Enable docker service on Nodegrid OS
  • Install docker-compose
  • Install Zabbix Proxy agent

Note: All steps must be performed through the CLI or root shell. Configuration through the WebUI is currently not supported.

2. Requirements

  • Nodegrid OS 5.8 or higher
  • Virtulisation License

3. Nodegrid OS preperation

It is recommended to run large docker images with persistent data storage requirements like Zabbix on a dedicated 2nd disk.
To configure the Nodegrid OS and docker service to utilise the 2nd disk, follow this guide

  • open an admin cli interface
  • Recomended if a 2nd disk ais available
  • change the default storage location to a dedicated 2nd disk if available, following this guide
  • enable the docker service
    cd /settings/services/
    set enable_docker=yes
    commit
    
  • Confirm that a valid Virtulisation License is installed
    show /settings/license/
    
    The Example displayes a valid installed license
      serial_number  license_key              application        number_of_licenses  expiration date  details  peer address  type
      =============  =======================  =================  ==================  ===============  =======  ============  =================
      00000000588    xxxxx-xxxxx-xxxxx-UMUER  docker containers  05                  2023-07-01                local         locally installed
    
  • install a new license key if required
    cd /settings/license/
    add
    set license_key=xxxxx-xxxxx-xxxxx-xxxxx
    commit
    
  • install docker-compose
    shell sudo mount -o remount,rw /
    shell sudo curl -SL https://github.com/docker/compose/releases/download/v2.17.3/docker-compose-linux-x86_64 -o /var/opt/docker-compose
    shell sudo chmod +x /var/opt/docker-compose
    shell sudo ln -s /var/opt/docker-compose /usr/bin/docker-compose
    shell sudo mount -o remount,ro /
    

4. Install Zabbix Proxy Agent

  • open an root shell interface, from a admin cli
    shell sudo su -
    
  • create a folder for the configuration
    mkdir zabix-proxy
    cd zabix-proxy
    
  • create a docker-compose file and adjust the values are required
    vi docker-compose.yml
    
    Example File Content , adjust the values which are marked with <...>, i.e.
    version: '3.5'
    services:
      zabbix-proxy-sqlite3:
        image: zabbix/zabbix-proxy-sqlite3:6.2.1-ubuntu
        ports:
          - "10061:10051"
        volumes:
          - /etc/localtime:/etc/localtime:ro
          - ./zbx_env/usr/lib/zabbix/externalscripts:/usr/lib/zabbix/externalscripts:ro
          - ./zbx_env/var/lib/zabbix/modules:/var/lib/zabbix/modules:ro
          - ./zbx_env/var/lib/zabbix/enc:/var/lib/zabbix/enc:ro
          - ./zbx_env/var/lib/zabbix/ssh_keys:/var/lib/zabbix/ssh_keys:ro
          - ./zbx_env/var/lib/zabbix/mibs:/var/lib/zabbix/mibs:ro
          - snmptraps:/var/lib/zabbix/snmptraps:rw
        environment:
          - ZBX_PROXYMODE=0
          - ZBX_HOSTNAME=<NAME>
          - ZBX_SERVER_HOST=<IP_ADDRESS>
        depends_on:
          - zabbix-snmptraps
        networks:
          - zabbix-proxy
        stop_grace_period: 30s
        labels:
          com.zabbix.description: "Zabbix proxy"
          com.zabbix.company: "<COMPANY>"
          com.zabbix.component: "zabbix-proxy"
          com.zabbix.os: "ubuntu"
      zabbix-snmptraps:
        image: zabbix/zabbix-snmptraps:6.2.1-ubuntu
        ports:
          - "162:1162/udp"
        volumes:
          - snmptraps:/var/lib/zabbix/snmptraps:rw
        networks:
          - zabbix-proxy
        stop_grace_period: 5s
        labels:
           com.zabbix.description: "Zabbix SNMP trap"
           com.zabbix.company: "ZPE Systems"
           com.zabbix.component: "zabbix-snmp-trap"
           com.zabbix.os: "ubuntu"
    networks:
      zabbix-proxy:
    volumes:
      snmptraps:
    
  • start the services with
     docker-compose up -d
    
  • The running service can be viewed after in the WebUI by Navigating to Applications -> Docker

Apps_Docker_Zabbix_Proxy.png


Was this article helpful?

ESC

Eddy AI, facilitating knowledge discovery through conversational intelligence