zabbix-get là một công cụ dòng lệnh của Zabbix, một hệ thống giám sát mạng mã nguồn mở. Nó được sử dụng để lấy dữ liệu từ các trình giám sát Zabbix và trả về kết quả dưới dạng text hoặc JSON.
Zabbix-get có thể được sử dụng để lấy dữ liệu từ các máy chủ, máy khách, ứng dụng hoặc các thiết bị mạng khác được giám sát bởi Zabbix. Với zabbix-get, người dùng có thể lấy dữ liệu về các thông số như tài nguyên hệ thống, mức độ sử dụng CPU, RAM, băng thông mạng, tốc độ truy cập ổ cứng, và các thông số khác.
Zabbix-get là một công cụ hữu ích trong việc tạo ra các kịch bản tự động hoặc các công cụ giám sát tùy chỉnh cho các môi trường Zabbix.
Để cài đặt zabbix-get trên hệ thống của bạn, bạn cần làm theo các bước sau:
- Đảm bảo rằng bạn đã cài đặt gói Zabbix Agent trên máy chủ mà bạn muốn kiểm tra UserParameter.
- Tải xuống gói Zabbix Agent từ trang web chính thức của Zabbix (https://www.zabbix.com/download_agents). Chọn phiên bản phù hợp với hệ điều hành của bạn và giải nén gói tải về.
cp /path/to/zabbix_get /usr/bin/
- Cấp quyền thực thi cho file zabbix_get:
chmod +x /usr/bin/zabbix_get
- Hoặc đơn giản hơn bạn hãy chạy lệnh.
apt install zabbix-get
Sau khi cài đặt zabbix_get, bạn có thể sử dụng lệnh này để kiểm tra UserParameter. Ví dụ:
zabbix_get -s <ip_address> -p <port> -k <key>
Trong đó:
- <ip_address> là địa chỉ IP của máy chủ Zabbix Agent.
- <port> là cổng mà Zabbix Agent đang lắng nghe (mặc định là 10050).
- <key> là tên của UserParameter bạn muốn kiểm tra.
Ví dụ, để kiểm tra UserParameter có tên “my.custom.param” trên máy chủ có địa chỉ IP là 192.168.1.100, bạn có thể chạy lệnh sau:
zabbix_get -s 192.168.1.100 -k my.custom.param
Nếu bạn gặp lỗi zabbix_get [20974]: Check access restrictions in Zabbix agent configuration
có nghĩa là gì? Lỗi “Check access restrictions in Zabbix agent configuration” có nghĩa là bạn đã cố gắng truy cập vào một tài nguyên mà Zabbix Agent không cho phép truy cập hoặc địa chỉ IP của máy chủ Zabbix không được cấp phép truy cập vào tài nguyên đó.
Để giải quyết lỗi này, bạn cần kiểm tra cấu hình của Zabbix Agent để xem liệu nó có cho phép truy cập vào tài nguyên cần thiết không. Bạn cần đảm bảo rằng địa chỉ IP của máy chủ Zabbix đã được cấp phép truy cập vào tài nguyên đó.
Bạn có thể kiểm tra cấu hình của Zabbix Agent bằng cách truy cập vào file cấu hình tại đường dẫn /etc/zabbix/zabbix_agentd.conf.
Tìm đến Server và ServerActive và bổ sung thêm IP được phép kết nối vào, ví dụ.
Server=192.168.13.211,192.168.13.212,127.0.0.1
ServerActive=192.168.13.211,192.168.13.212,127.0.0.1
Theo như config trên thì các IP 192.168.13.211,192.168.13.212 và tại máy localhost 127.0.0.1 sẽ được phép chạy lệnh kết nối vào Zabbix Agent. Sau khi kiểm tra cấu hình của Zabbix Agent và cập nhật nó nếu cần thiết, bạn hãy khởi động lại Zabbix Agent và thử lại lệnh để kiểm tra xem lỗi đã được giải quyết chưa.
systemctl restart zabbix-agent
Và đây là kết quả đứng từ IP 192.168.13.211 chạy lệnh.
$ zabbix_get -s 192.168.13.212 -k cisco.interface.status
[{"mgmt0": "Down"}, {"Vlan1": "Down"}, {"Vlan2": "Up"}, {"Vlan4": "Up"}, {"Vlan5": "Up"}, {"Vlan6": "Up"}, {"Vlan7": "Up"}, {"Vlan8": "Up"}, {"Vlan9": "Up"}, {"Vlan20": "Up"}, {"Vlan21": "Up"}, {"Vlan31": "Up"}, {"Vlan32": "Up"}, {"Vlan33": "Up"}, {"Vlan34": "Up"}, {"Vlan35": "Up"}, {"Vlan36": "Up"}, {"Vlan37": "Up"}, {"Vlan38": "Up"}, {"Vlan39": "Up"}, {"Vlan47": "Up"}, {"Vlan99": "Up"}, {"Vlan100": "Up"}, {"Vlan101": "Up"}, {"Vlan102": "Up"}, {"Vlan103": "Up"}, {"Vlan150": "Up"}, {"port-channel1": "Up"}, {"port-channel2": "Up"}, {"port-channel22": "Down"}, {"port-channel24": "Down"}, {"port-channel26": "Down"}, {"port-channel28": "Down"}, {"port-channel30": "Down"}, {"port-channel32": "Down"}, {"port-channel34": "Down"}, {"port-channel36": "Down"}, {"port-channel45": "Down"}, {"port-channel46": "Up"}, {"port-channel51": "Up"}, {"port-channel52": "Up"}, {"port-channel99": "Down"}, {"port-channel100": "Up"}, {"Ethernet1/1": "Down"}, {"Ethernet1/2": "Down"}, {"Ethernet1/3": "Down"}, {"Ethernet1/4": "Down"}, {"Ethernet1/5": "Down"}, {"Ethernet1/6": "Down"}, {"Ethernet1/7": "Up"}, {"Ethernet1/8": "Down"}, {"Ethernet1/9": "Down"}, {"Ethernet1/10": "Down"}, {"Ethernet1/11": "Up"}, {"Ethernet1/12": "Down"}, {"Ethernet1/13": "Down"}, {"Ethernet1/14": "Down"}, {"Ethernet1/15": "Down"}, {"Ethernet1/16": "Down"}, {"Ethernet1/17": "Down"}, {"Ethernet1/18": "Down"}, {"Ethernet1/19": "Up"}, {"Ethernet1/20": "Down"}, {"Ethernet1/21": "Down"}, {"Ethernet1/22": "Down"}, {"Ethernet1/23": "Down"}, {"Ethernet1/24": "Down"}, {"Ethernet1/25": "Down"}, {"Ethernet1/26": "Down"}, {"Ethernet1/27": "Down"}, {"Ethernet1/28": "Down"}, {"Ethernet1/29": "Down"}, {"Ethernet1/30": "Up"}, {"Ethernet1/31": "Down"}, {"Ethernet1/32": "Down"}, {"Ethernet1/33": "Up"}, {"Ethernet1/34": "Down"}, {"Ethernet1/35": "Up"}, {"Ethernet1/36": "Down"}, {"Ethernet1/37": "Up"}, {"Ethernet1/38": "Down"}, {"Ethernet1/39": "Up"}, {"Ethernet1/40": "Up"}, {"Ethernet1/41": "Up"}, {"Ethernet1/42": "Down"}, {"Ethernet1/43": "Up"}, {"Ethernet1/44": "Up"}, {"Ethernet1/45": "Down"}, {"Ethernet1/46": "Up"}, {"Ethernet1/47": "Up"}, {"Ethernet1/48": "Up"}, {"Ethernet1/49": "Up"}, {"Ethernet1/50": "Up"}, {"Ethernet1/51": "Down"}, {"Ethernet1/52": "Up"}]
Còn đây là kết quả đứng từ localhost chạy lệnh.
$ zabbix_get -s 127.0.0.1 -k cisco.interface.status
[{"mgmt0": "Down"}, {"Vlan1": "Down"}, {"Vlan2": "Up"}, {"Vlan4": "Up"}, {"Vlan5": "Up"}, {"Vlan6": "Up"}, {"Vlan7": "Up"}, {"Vlan8": "Up"}, {"Vlan9": "Up"}, {"Vlan20": "Up"}, {"Vlan21": "Up"}, {"Vlan31": "Up"}, {"Vlan32": "Up"}, {"Vlan33": "Up"}, {"Vlan34": "Up"}, {"Vlan35": "Up"}, {"Vlan36": "Up"}, {"Vlan37": "Up"}, {"Vlan38": "Up"}, {"Vlan39": "Up"}, {"Vlan47": "Up"}, {"Vlan99": "Up"}, {"Vlan100": "Up"}, {"Vlan101": "Up"}, {"Vlan102": "Up"}, {"Vlan103": "Up"}, {"Vlan150": "Up"}, {"port-channel1": "Up"}, {"port-channel2": "Up"}, {"port-channel22": "Down"}, {"port-channel24": "Down"}, {"port-channel26": "Down"}, {"port-channel28": "Down"}, {"port-channel30": "Down"}, {"port-channel32": "Down"}, {"port-channel34": "Down"}, {"port-channel36": "Down"}, {"port-channel45": "Down"}, {"port-channel46": "Up"}, {"port-channel51": "Up"}, {"port-channel52": "Up"}, {"port-channel99": "Down"}, {"port-channel100": "Up"}, {"Ethernet1/1": "Down"}, {"Ethernet1/2": "Down"}, {"Ethernet1/3": "Down"}, {"Ethernet1/4": "Down"}, {"Ethernet1/5": "Down"}, {"Ethernet1/6": "Down"}, {"Ethernet1/7": "Up"}, {"Ethernet1/8": "Down"}, {"Ethernet1/9": "Down"}, {"Ethernet1/10": "Down"}, {"Ethernet1/11": "Up"}, {"Ethernet1/12": "Down"}, {"Ethernet1/13": "Down"}, {"Ethernet1/14": "Down"}, {"Ethernet1/15": "Down"}, {"Ethernet1/16": "Down"}, {"Ethernet1/17": "Down"}, {"Ethernet1/18": "Down"}, {"Ethernet1/19": "Up"}, {"Ethernet1/20": "Down"}, {"Ethernet1/21": "Down"}, {"Ethernet1/22": "Down"}, {"Ethernet1/23": "Down"}, {"Ethernet1/24": "Down"}, {"Ethernet1/25": "Down"}, {"Ethernet1/26": "Down"}, {"Ethernet1/27": "Down"}, {"Ethernet1/28": "Down"}, {"Ethernet1/29": "Down"}, {"Ethernet1/30": "Up"}, {"Ethernet1/31": "Down"}, {"Ethernet1/32": "Down"}, {"Ethernet1/33": "Up"}, {"Ethernet1/34": "Down"}, {"Ethernet1/35": "Up"}, {"Ethernet1/36": "Down"}, {"Ethernet1/37": "Up"}, {"Ethernet1/38": "Down"}, {"Ethernet1/39": "Up"}, {"Ethernet1/40": "Up"}, {"Ethernet1/41": "Up"}, {"Ethernet1/42": "Down"}, {"Ethernet1/43": "Up"}, {"Ethernet1/44": "Up"}, {"Ethernet1/45": "Down"}, {"Ethernet1/46": "Up"}, {"Ethernet1/47": "Up"}, {"Ethernet1/48": "Up"}, {"Ethernet1/49": "Up"}, {"Ethernet1/50": "Up"}, {"Ethernet1/51": "Down"}, {"Ethernet1/52": "Up"}]