目錄
一.網絡設備監控
1、GNS模擬器的使用
創建路由
創建交換機
2.構建網絡
3.添加Cisco路由器的監控
二.中間件監控
1、MySQL數據庫監控
1.1、拷貝自定義的監控腳本到指定目錄
1.2、添加監控用戶
1.3、重啟zabbix-agent服務
1.4、在zabbix-server服務端測試數據
1.5、在UI界面添加監控模版
2、Redis數據庫監控
下載agent2
修改配置
3、Nginx服務監控
修改Nginx配置文件
重啟Nginx生效配置
驗證狀態頁是否正常
配置Zabbix Agent
4、MySQL主從監控
配置主從配置
?主庫配置(192.168.71.192)?
從庫配置(192.168.71.193)?
在被監控端創建監控腳本
?配置Zabbix Agent2
5、Redis集群監控
一.網絡設備監控
1、GNS模擬器的使用
創建路由
下載安裝好GNS后,最開始是沒有路由設備的,需要自己創建,先點擊Edit里的Preferences
進去之后點擊IOS routers下的new創建新路由
選擇之前安裝包所在文件夾里的C3640?
點擊選擇后出現提示不是英文要轉換一下,點ok和yes即可?
一直點下一步即可完成創建路由器
完成后發現完成創建?
點擊C3600后點擊打開,再右鍵點擊console,等待開機并回車確認
再點擊idle-PC
一定選擇帶星號的,并且最大的,圖下則選擇58*
創建交換機
再添加一個交換機,步驟與路由相同,唯二不同則是在以下界面打勾,和接口
創建完成后發現已經有了交換機,步驟相同,先開機,再點console,回車,
2.構建網絡
分別選擇vm1和vm2網絡進行連接
創建兩臺虛擬機,并分別連入VM1和VM2,確定網絡編輯器
開機之后打開路由(start)
(選擇使用)可以連接WindTerm
對路由進行配置
為虛擬機添加虛擬地址
配置網關(net后加0/0是任意網關,可以單獨指向地址段,也可以任意)
測試連通性
再次加入一組路由和主機,將zabbix主機連到路由上
使用zabbix主機測試連通性
3.添加Cisco路由器的監控
增加共同體
創建主機組
添加主機
修改宏后點擊添加
添加Cisco的模板
等待可用后,選擇圖形查看
如果沒有數據,可以選擇縮短時間來看
二.中間件監控
1、MySQL數據庫監控
在被監控機下載mysql
1.1、拷貝自定義的監控腳本到指定目錄
將配置文件直接復制到zabbix目錄下
cp /usr/share/doc/zabbix-agent/userparameter_mysql.conf /etc/zabbix/zabbix_agentd.d/
進入配置文件,測試命令可行性
確認都可行之后,重啟zabbix_agent服務,在模板里,將之前的取消,選擇新的模板
然后去模板處查看使用說明
Requirements for template operation:
1. Install Zabbix agent and MySQL client. If necessary, add the path to the 'mysql' and 'mysqladmin' utilities to the global environment variable PATH.
2. Copy the 'template_db_mysql.conf' file with user parameters into folder with Zabbix agent configuration (/etc/zabbix/zabbix_agentd.d/ by default). Don't forget to restart Zabbix agent.
3. Create the MySQL user that will be used for monitoring ('<password>' at your discretion). For example:
CREATE USER 'zbx_monitor'@'%' IDENTIFIED BY '<password>';
GRANT REPLICATION CLIENT,PROCESS,SHOW DATABASES,SHOW VIEW ON *.* TO 'zbx_monitor'@'%';For more information, please see MySQL documentation (https://dev.mysql.com/doc/refman/8.0/en/grant.html).
NOTE: In order to collect replication metrics, MariaDB Enterprise Server 10.5.8-5 and above and MariaDB Community Server 10.5.9 and above require the SLAVE MONITOR privilege to be set for the monitoring user:
GRANT REPLICATION CLIENT,PROCESS,SHOW DATABASES,SHOW VIEW,SLAVE MONITOR ON *.* TO 'zbx_monitor'@'%';
For more information, please read the MariaDB documentation (https://mariadb.com/docs/server/ref/mdb/privileges/SLAVE_MONITOR/).
4. Create '.my.cnf' configuration file in the home directory of Zabbix agent for Linux distributions (/var/lib/zabbix by default) or 'my.cnf' in c:\ for Windows. For example:
[client]
protocol=tcp
user='zbx_monitor'
password='<password>'For more information, please see MySQL documentation (https://dev.mysql.com/doc/refman/8.0/en/option-files.html).
NOTE: Linux distributions that use SELinux may require additional steps for access configuration.
You can discuss this template or leave feedback on our forum https://www.zabbix.com/forum/zabbix-suggestions-and-feedback/384189-discussion-thread-for-official-zabbix-template-db-mysql
Generated by official Zabbix template tool "Templator"
1.2、添加監控用戶
mysql
create user root@'192.168.115.%' identified by '123.com';
grant all on *.* to root@'192.168.115.%';
vim /etc/my.cnf
[client]
protocol=tcp
user='root'
password='123.com'
此時登錄mysql,可以免密登錄
1.3、重啟zabbix-agent服務
systemctl restart zabbix-agent
1.4、在zabbix-server服務端測試數據
1.5、在UI界面添加監控模版
在宏界面加上mysql主機ip
完成后去查看監控的圖形(等數據輸出過來)
2、Redis數據庫監控
下載agent2
另外開一臺機子,下載源(不可以既安裝1又安裝2)
下載zabbix_agent2
修改配置
進入配置文件/etc/zabbix/zabbix_agent2.conf修改配置
關閉防火墻等,重啟服務,然后添加主機
然后查看redis模板的說明
Get Redis metrics from plugin for the New Zabbix Agent (zabbix-agent2).
You can discuss this template or leave feedback on our forum https://www.zabbix.com/forum/zabbix-suggestions-and-feedback/389050-discussion-thread-for-official-zabbix-template-redis
Generated by official Zabbix template tool "Templator"
下載redis,并且修改文件配置,后開啟redis
再在/etc/zabbix/zabbix_agent2.conf中加入
Plugins.Redis.Sessions.Redis1.Uri=tcp://192.168.71.193:6379Plugins.Redis.Sessions.Redis1.Password=your_password # 若Redis設置了密碼,沒密碼不寫
重啟zabbix-agent2服務
回到zabbix頁面,將模板的宏ip修改為redis主機的ip
更新后,刷新數據,即可查看
3、Nginx服務監控
修改Nginx配置文件
下載nginx,并修改配置文件/etc/nginx/conf.d/status.conf (沒有就創建)
server {listen 80;server_name localhost;location /nginx_status { # 路徑可自定義(如/basic_status)stub_status on; # 啟用狀態模塊access_log off; # 關閉日志allow 127.0.0.1; # 允許本地訪問(Zabbix Agent需訪問)deny all; # 禁止其他IP}
}
重啟Nginx生效配置
驗證狀態頁是否正常
配置Zabbix Agent
在配置文件最下方加入
UserParameter=nginx.status[*],curl -s http://127.0.0.1:80/nginx_status
然后添加模板并且增加宏
然后查看數據
4、MySQL主從監控
配置主從配置
?主庫配置(192.168.71.192)?
重啟服務后,創建一個復制賬戶
-- 創建復制賬號(從庫使用)
CREATE USER 'repl'@'192.168.71.193' IDENTIFIED BY 'YourPassword';
GRANT REPLICATION SLAVE ON *.* TO 'repl'@'192.168.71.193';
FLUSH PRIVILEGES;-- 查看主庫狀態(記錄File和Position)
SHOW MASTER STATUS;
從庫配置(192.168.71.193)?
增加主庫信息
-- 配置主庫連接信息
CHANGE MASTER TOMASTER_HOST = '192.168.71.192',MASTER_USER = 'repl',MASTER_PASSWORD = 'YourPassword',MASTER_LOG_FILE = 'mysql-bin.000001', -- 替換為主庫記錄的FileMASTER_LOG_POS = 154; -- 替換為主庫記錄的Position-- 啟動復制
START SLAVE;-- 檢查復制狀態
SHOW SLAVE STATUS\G
在被監控端創建監控腳本
#!/bin/bash
# 獲取主從狀態并返回"Yes"的數量(正常值為2)
mysql -e "SHOW SLAVE STATUS\G" 2>/dev/null \| grep -E "Slave_IO_Running|Slave_SQL_Running" \| grep -c "Yes"
# 賦予執行權限
sudo chmod +x /etc/zabbix/zabbix_agent2.d/mysql_slave_status.sh
?配置Zabbix Agent2
sudo vi /etc/zabbix/zabbix_agent2.conf# 啟用自定義Key
UserParameter=mysql.replication.status, /etc/zabbix/zabbix_agent2.d/mysql_slave_status.sh# 重啟Agent
sudo systemctl restart zabbix-agent2
選擇模板,并創建監控項,添加圖形
運行腳本測試
得到圖像結果應為2,但是卻是0,正常來說是2就對了
5、Redis集群監控
交給大家去研究