# zabbix_modules **Repository Path**: xtlyk/zabbix_modules ## Basic Information - **Project Name**: zabbix_modules - **Description**: zabbix 模块合集,支持 zabbix 6/7/8 - **Primary Language**: PHP - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 32 - **Forks**: 12 - **Created**: 2025-09-17 - **Last Updated**: 2026-10-27 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Zabbix Modules Collection [中文](README.md) ## ✨ Version Compatibility Supported versions and deployment requirements vary by module. Refer to each module's README for its compatibility status. Zabbix Switch Visual is a dashboard widget currently targeting Zabbix 7.x. Full 6.0–8.0 compatibility is not yet implemented; changing only `manifest_version` does not enable legacy support. See the [widget compatibility notes](./zabbix_switch_visual/README_en.md#version-compatibility). ## Description This repository contains a collection of independent Zabbix frontend modules that extend Zabbix Web with additional functionality. ## Modules ### 1. Zabbix Reports - **Purpose**: Generate daily, weekly and monthly reports in Zabbix, with preview, PDF export and email delivery features. - **Features**: report generation (daily/weekly/monthly), problem counts and status stats, top problem hosts, top CPU/memory hosts, in-page preview, PDF export, email push. ![1](zabbix_reports/images/1.png) ![2](zabbix_reports/images/2.png) - **Docs**: [zabbix_reports/README_en.md](./zabbix_reports/README_en.md) ### 2. Zabbix CMDB - **Purpose**: Provide a lightweight CMDB view in Zabbix for centralized host information and management. - **Features**: search by hostname/IP, filter by host groups, display host details (interfaces, CPU, memory, groups), bilingual UI, responsive layout. ![1](zabbix_cmdb/images/1.jpg) ![2](zabbix_cmdb/images/2.png) ![3](zabbix_cmdb/images/3.jpg) - **Docs**: [zabbix_cmdb/README_en.md](./zabbix_cmdb/README_en.md) ### 3. Zabbix Graph Trees - **Purpose**: Browse monitoring data using a tree structure, select items and view real-time SVG charts. - **Features**: host/hostgroup tree, tag-based filtering, multi-select items, synchronized tooltips, fullscreen charts, auto-refresh intervals, multiple time ranges. ![1](zabbix_graphtrees/images/1.png) ![2](zabbix_graphtrees/images/2.png) - **Docs**: [zabbix_graphtrees/README_en.md](./zabbix_graphtrees/README_en.md) ### 4. Zabbix Rack - **Purpose**: Data center rack visualization and host placement management within Zabbix Web. - **Features**: room and rack management, 1–60U rack support, 42U visualization, host assignment to U positions, search by rack/host, bilingual UI. ![1](zabbix_rack/images/1.png) ![2](zabbix_rack/images/2.png) ![3](zabbix_rack/images/3.png) - **Docs**: [zabbix_rack/README_en.md](./zabbix_rack/README_en.md) ### 5. Zabbix SNMP - **Purpose**: An SNMP assistant Zabbix frontend module providing a MIB browser and SNMP Walk, with OID resolution, one-click item creation and bulk SNMP template creation. - **Features**: MIB browser with object table (OID, resolved OID, syntax/access/status, view source); SNMP Walk reading host SNMP connection parameters (v1/v2c/v3) into a paginated table; view raw data; copy snmpget command/OID; create a single item with automatic value-type mapping; check multiple results to create an SNMP template with items in bulk; bilingual UI. ![1](zabbix_snmp/images/1.png) ![2](zabbix_snmp/images/2.png) ![3](zabbix_snmp/images/3.png) - **Docs**: [zabbix_snmp/README_en.md](./zabbix_snmp/README_en.md) ### 6. Zabbix JumpServer - **Purpose**: A Zabbix frontend module that synchronizes Zabbix hosts and host groups to a JumpServer bastion, with bulk push, automatic node creation, and one-click connect to assets from Zabbix. - **Features**: host group, host, and alarm status dropdowns plus IP/hostname search (all groups/hosts by default); one-click "Push all host groups" / "Push all hosts" with auto node creation; "Fetch JumpServer asset IDs" to match by IP and write tags back; platform detection (Linux/Windows) and asset create/update with optional account template on create only; alarm status counts per severity with expandable row details; asset ID written back as a Zabbix host tag; re-push on hover for synced hosts; "Connect" button linking to the JumpServer connect page; bilingual UI. ![1](zabbix_jumpserver/images/1.png) - **Docs**: [zabbix_jumpserver/README_en.md](./zabbix_jumpserver/README_en.md) ### 7. IM Sync Assistant - **Purpose**: Sync **WeCom**, **Feishu**, and **DingTalk** org structures into Zabbix **user groups**, and match or create Zabbix users with group membership. - **Features**: multi-platform support; web UI for sync credentials (**Users → Sync Settings**, one active setting at a time); department sync with optional full-path group names; user sync with match/auto-create (12-char password shown once in results); DingTalk users without mobile get pinyin usernames from display name; preview before sync; bilingual UI. ![1](zabbix_im/images/1.png) ![2](zabbix_im/images/2.png) ![3](zabbix_im/images/3.png) - **Docs**: [zabbix_im/README_en.md](./zabbix_im/README_en.md) ([中文](./zabbix_im/README.md)) ### 8. Zabbix Clonehosts - **Purpose**: Batch-clone and import a large number of hosts based on an existing monitored host's configuration, with CSV upload and online table entry, plus preview, conflict detection, selective import and real-time progress feedback. - **Features**: source host cloning (interfaces, groups, templates, tags, macros, TLS, IPMI, inventory_mode inheritable); dual-mode data entry (CSV upload with UTF-8/GBK auto-detection and template download / online table with add-remove rows and live validation); smart field inheritance (only host name and IP required, others fall back to source); auto-create missing host groups; full preview with conflict detection (host name conflicts, missing required fields, in-batch duplicates, name clashes with hosts/templates) and status badges (exists / new / not found / inherited); selective import via per-row checkboxes; back-to-edit from preview with all data preserved; sequential AJAX import with real-time progress bar and counters; CSV result report download (host name, IP, host ID, result, error); bilingual UI. ![1](zabbix_clonehosts/images/image.png) ![2](zabbix_clonehosts/images/image-1.png) ![3](zabbix_clonehosts/images/image-2.png) ![4](zabbix_clonehosts/images/image-3.png) - **Docs**: [zabbix_clonehosts/README_en.md](./zabbix_clonehosts/README_en.md) ([中文](./zabbix_clonehosts/README.md)) ### 9. Zabbix IPAM - **Purpose**: Centrally manage IPv4 ranges, run asynchronous ICMP availability scans, and associate addresses with Zabbix hosts by interface IP. - **Features**: CIDR and start-end ranges up to 65,536 addresses; `fping`-based ICMP-only scans; automatic sharding and optional `pcntl` workers; manual and cron scans; live task progress; address matrix, filtering, pagination, and host links; bilingual UI. ![1](zabbix_ipam/images/1.png) ![2](zabbix_ipam/images/2.png) ![3](zabbix_ipam/images/3.png) - **Docs**: [zabbix_ipam/README_en.md](./zabbix_ipam/README_en.md) ([中文](./zabbix_ipam/README.md)) ### 10. Zabbix LLDP Topology - **Purpose**: Visualize LLDP neighbor relationships from Zabbix LLDP discovery items. - **Features**: filter hosts/groups by **Lldp Discovery** template; group/host dropdowns with all-groups/all-hosts defaults; on-demand query loading `lldp.remote.info[*]` values; SVG circles and lines (local left, remote right); hover tooltips with ports and update time; bilingual UI. - **Docs**: [zabbix_lldp/README_en.md](./zabbix_lldp/README_en.md) ([中文](./zabbix_lldp/README.md)) ### 11. Zabbix Clouds - **Purpose**: Synchronize Alibaba Cloud ECS, Huawei Cloud ECS, and Tencent Cloud CVM instances to Zabbix. - **Features**: preview-before-sync workflow; idempotent matching through the `cloud_instance_id` tag; automatic `Clouds/{Provider}/{Region}` host groups; soft marking for cloud-deleted managed hosts; cloud account configuration. - **Docs**: [zabbix_clouds/README_en.md](./zabbix_clouds/README_en.md) ([中文](./zabbix_clouds/README.md)) ### 12. Zabbix Rightsizing - **Purpose**: Generate CPU and memory sizing recommendations from Zabbix data over a selected period. - **Features**: trends-first analysis with history fallback; CPU and memory recommendations; result export; configurable analysis parameters; bilingual UI. - **Docs**: [zabbix_rightsizing/README_en.md](./zabbix_rightsizing/README_en.md) ([中文](./zabbix_rightsizing/README.md)) ### 13. Zabbix Switch Backup - **Purpose**: List, preview, and download switch configuration backup files from Zabbix. - **Features**: file metadata and newest-first ordering; text preview and downloads; traversal and symlink protection; role-based access controls; bilingual UI. - **Docs**: [zabbix_switch_backup/README_en.md](./zabbix_switch_backup/README_en.md) ([中文](./zabbix_switch_backup/README.md)) ### 14. Zabbix Switch Visual - **Purpose**: Visualize switch chassis, RJ45/SFP ports, traffic trends, and device status in a Zabbix dashboard widget. - **Features**: one host or multiple switches from host groups; port state, speed, inbound/outbound traffic, errors and alerts; links to item history graphs; automatic port detection, stack members, layout settings, SNMP index offsets, exclusions and aliases; per-port and aggregate traffic sparklines; optional CPU, memory, temperature, PoE and fan metrics; customizable colors, styles and zoom; bilingual UI. ![Zabbix Switch Visual switch-port panel](zabbix_switch_visual/images/1.png) - **Docs**: [zabbix_switch_visual/README_en.md](./zabbix_switch_visual/README_en.md) ([中文](./zabbix_switch_visual/README.md)) - **Compatibility**: Currently targets Zabbix 7.x. See the widget README for adaptation and validation status on other versions. ## Installation The following general steps apply to standard frontend modules. For Zabbix Switch Visual, follow its [installation instructions](./zabbix_switch_visual/README_en.md#installation) and add it through dashboard edit mode. ### Option 1: Download Release packages (for production, choose what you need) The Releases page offers two types of packages — no git required: - **All-in-one package**: `zabbix_modules-.tar.gz` (includes all modules; version format: `module_count.major.minor`, e.g., `13.2.0`) - **Single-module package**: `zabbix_-.tar.gz` (download only the modules you need) #### Option A: Download the all-in-one package 1. Go to the [Releases page](https://github.com/X-Mars/zabbix_modules/releases) and download the `zabbix_modules-.tar.gz` file (e.g., `zabbix_modules-13.2.0.tar.gz`). 2. Upload to the Zabbix server and extract to the modules directory: ```bash # Zabbix 6.0 / 7.0 tar -xzf zabbix_modules-.tar.gz -C /usr/share/zabbix/modules/ # Zabbix 7.2+ / 7.4 / 8.0 tar -xzf zabbix_modules-.tar.gz -C /usr/share/zabbix/ui/modules/ ``` 3. If you run Zabbix 6.0, change `manifest_version` for standard modules that support Zabbix 6.0: ```bash for mod in /usr/share/zabbix/modules/zabbix_*/; do grep -Eq '"type"[[:space:]]*:[[:space:]]*"widget"' "${mod}manifest.json" && continue sed -i 's/"manifest_version": 2.0/"manifest_version": 1.0/' "${mod}manifest.json" done ``` For Zabbix 7.0+ / 8.0+, no change is required. #### Option B: Download a single module 1. Go to the [Releases page](https://github.com/X-Mars/zabbix_modules/releases) and download the `zabbix_-.tar.gz` file for the module you want. 2. Upload to the Zabbix server and extract to the modules directory: ```bash # Zabbix 6.0 / 7.0 tar -xzf zabbix_-.tar.gz -C /usr/share/zabbix/modules/ # Zabbix 7.2+ / 7.4 / 8.0 tar -xzf zabbix_-.tar.gz -C /usr/share/zabbix/ui/modules/ ``` 3. If you run Zabbix 6.0, change `manifest_version`: ```bash sed -i 's/"manifest_version": 2.0/"manifest_version": 1.0/' /usr/share/zabbix/modules/zabbix_/manifest.json ``` For Zabbix 7.0+ / 8.0+, no change is required. ### Option 2: Deploy all modules via git clone (for development / tracking updates) 1. For Zabbix 6.0 / 7.0: ```bash git clone https://github.com/X-Mars/zabbix_modules.git /usr/share/zabbix/modules/ ``` 2. For Zabbix 7.2+ / 7.4 / 8.0: ```bash git clone https://github.com/X-Mars/zabbix_modules.git /usr/share/zabbix/ui/modules/ ``` 3. If you run Zabbix 6.0, change `manifest_version` for standard modules that support Zabbix 6.0: Batch update for standard modules (skips dashboard widgets): ```bash for mod in /usr/share/zabbix/modules/zabbix_*/; do grep -Eq '"type"[[:space:]]*:[[:space:]]*"widget"' "${mod}manifest.json" && continue sed -i 's/"manifest_version": 2.0/"manifest_version": 1.0/' "${mod}manifest.json" done ``` For a single module (e.g., zabbix_reports): ```bash sed -i 's/"manifest_version": 2.0/"manifest_version": 1.0/' /usr/share/zabbix/modules/zabbix_reports/manifest.json ``` For Zabbix 7.0+ / 8.0+, no change is required. ### Enable modules in Zabbix Web 1. Open Zabbix Web UI → Administration → General → Modules 2. Click **Scan directory** to detect new modules 3. Enable the modules you need After enabling and refreshing the UI, the modules appear under the following menus: - **Reports → Zabbix Reports** (Daily/Weekly/Monthly) - **Inventory → CMDB** - **Monitoring → Graph Trees** - **Inventory → Rack Management** - **Data collection → SNMP Assistant** (Zabbix Mibs / Zabbix Walk) - **Inventory → JumpServer** - **Users → IM Sync Assistant** (IM Sync / Sync Settings) - **Data collection → Host Batch Import** (batch clone hosts from a source host) - **Monitoring → LLDP Topology** (LLDP neighbor topology) - **Inventory → IPAM** (IP Management / IP Details / Task Management) - **Inventory → Cloud Sync** (Cloud Hosts / Cloud Settings) - **Inventory → Rightsizing** (resource sizing recommendations) - **Inventory → Switch Backup** (switch configuration backups) - **Dashboard → Edit → Add widget → Zabbix Switch Visual** (switch-port visualization) Each module contains its own README with specific installation and usage details. ## Contributing Contributions, bug reports and feature requests are welcome. Please open issues in the relevant module folder. ## License All modules follow the Zabbix license terms. See: https://www.zabbix.com/license