zabbix服務端
1.配置yum倉庫
# 對應了nginx的location設定
https://mirrors.tuna.tsinghua.edu.cn/zabbix/zabbix/
# 安裝倆zabbix.repo倉庫檔案而已
rpm -ivh https://mirrors.tuna.tsinghua.edu.cn/zabbix/zabbix/4.0/rhel/7/x86_64/zabbix-release-4.0-1.el7.noarch.rpm
# 改成清華的
sed -i 's#repo.zabbix.com#mirrors.tuna.tsinghua.edu.cn/zabbix#g' /etc/yum.repos.d/zabbix.repo
# 安裝zabbix-server服務端,以及資料庫
# zabbix-server-mysql 以mysql作為儲存開發的zabbix-server服務端程式
# zabbix-web-mysql php核心程式,zabbix-UI頁面,也是以mysql為儲存版本
# zabbix-agent 採集客戶端資料的核心程式 ,自己監控自己
# mariadb-server 安裝mysql服務端程式
yum install -y zabbix-server-mysql zabbix-web-mysql zabbix-agent mariadb-server
# 啟動mysql,切建立使用者,待會用於和zabbix連結,以及建立zabbix庫,儲存資料。
啟動mariadb資料庫,設定開機自啟
systemctl start mariadb && systemctl enable mariadb
3.設定mariadb資料庫,建立zabbix庫,儲存監控資料,且建立賬號
mysqladmin password linux0224
mysql -uroot -plinux0224 -e 'create database zabbix character set utf8 collate utf8_bin;'
# 建立使用者賬戶,zabbix 密碼是 linux0224
# 給與許可權是,zabbix這個使用者 ,對於zabbix這個庫,下的所有表,都是最大許可權
# 看懂資料庫的操作 1111
mysql -uroot -plinux0224 -e "grant all privileges on zabbix.* to zabbix@localhost identified by 'linux0224';"
# 技巧,查詢命令來自於哪個軟體包,便於你去安裝 1111
yum provides zcat
yum install gzip -y
4.匯入zabbix服務端的資料庫內容
# 用zcat直接讀取gz壓縮包的資料,切管道符交給mysql命令匯入資料,往zabbix庫中匯入資料
# 看懂11111
zcat /usr/share/doc/zabbix-server-mysql-4.0.42/create.sql.gz | mysql -uroot -plinux0224 zabbix
# 檢視zabbix庫裡面的表
mysql -uroot -plinux0224 -e "show tables from zabbix;"
5. 修改zabbix-server服務端配置檔案,指明自己的ip,便於agent去連線
cat > /etc/zabbix/zabbix_server.conf <<'EOF'
LogFile=/var/log/zabbix/zabbix_server.log
LogFileSize=0
PidFile=/var/run/zabbix/zabbix_server.pid
SocketDir=/var/run/zabbix
DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=linux0224
SNMPTrapperFile=/var/log/snmptrap/snmptrap.log
Timeout=4
AlertScriptsPath=/usr/lib/zabbix/alertscripts
ExternalScripts=/usr/lib/zabbix/externalscripts
LogSlowQueries=3000
EOF
# 配置檔案裡面,不支援中文,因此筆記自己看就行
LogFile=/var/log/zabbix/zabbix_server.log
LogFileSize=0
PidFile=/var/run/zabbix/zabbix_server.pid
SocketDir=/var/run/zabbix
DBHost=localhost # 指明mysql的地址 zabboix-server mysql
DBName=zabbix # 資料庫名字
DBUser=zabbix # 資料庫的連結使用者
DBPassword=linux0224 # 資料庫密碼
SNMPTrapperFile=/var/log/snmptrap/snmptrap.log
Timeout=4
AlertScriptsPath=/usr/lib/zabbix/alertscripts # 存放自定義監控項指令碼的目錄
ExternalScripts=/usr/lib/zabbix/externalscripts
LogSlowQueries=3000
EOF
6.服務端配置檔案也寫好了
systemctl start zabbix-server && systemctl enable zabbix-server
7.檢查zabbix-server的埠是否執行 10051
[root@zabbix-server-71 ~]#netstat -tunlp|grep zabbix
tcp 0 0 0.0.0.0:10051 0.0.0.0:* LISTEN 2145/zabbix_server
tcp6 0 0 :::10051 :::* LISTEN 2145/zabbix_server
至此,zabbix-server,服務端核心程式就裝好了,以及zabbix-UI這個Php程式也裝好了
但是還不能訪問
apache配置
只需要改一個時區設定,改為中國即可,因為你得讓zabbix支援中文
[root@zabbix-server-71 ~]#grep -i shanghai /etc/httpd/conf.d/zabbix.conf
php_value date.timezone Asia/Shanghai
啟動80埠的apache服務了
systemctl start httpd && systemctl enable httpd
zabbix-UI前端配置
10.0.0.71:80/zabbix 訪問改url才能訪問zabbix
瀏覽器 > httpd > 轉發給底層處理php請求的模組
預設賬戶密碼
Admin
zabbix
1.訪問zabbix入口
2.體檢,安裝環境檢查
3.配置資料庫連線
4.配置zabbix服務端的主機埠資訊
修改zabbix語言為中文
修復中文亂碼
下載字型,修改zabbix的字型支援
解決辦法,這是因為缺少zabbix所需的字型
# 文泉儀微黑字型
[root@zabbix4-server ~]#yum install wqy-microhei-fonts -y
# 複製字型給zabbix用,覆蓋圖形字型
[root@zabbix4-server ~]#cp /usr/share/fonts/wqy-microhei/wqy-microhei.ttc /usr/share/zabbix/assets/fonts/graphfont.ttf
cp: overwrite ‘/usr/share/zabbix/assets/fonts/graphfont.ttf’? y
補充知識,關於apache和zabbix是怎麼結合的?
# LAMP
# 你訪問zabbix 的圖形化頁面,使用者> apache > php(zabbix圖形化頁面所有功能程式碼是php)
# 訪問 web伺服器入口 80埠,apache
# apache請求轉發給php的模組去處理
# 看apache配置檔案就行了,你可以訪問zabbix路由即可,apache自動載入php模組,解析請求
[root@zabbix4-server /var/www/html]#cat /etc/httpd/conf.d/zabbix.conf
#
# Zabbix monitoring system php web frontend
#
# 定義url別名,
# 10.0.0.71/zabbix
# 等於
Alias /zabbix /usr/share/zabbix
# 定義網頁根目錄的設定
# web伺服器配置的引數意思,對比nginx的配置去理解即可
#這裡是apache的知識點
<Directory "/usr/share/zabbix">
Options FollowSymLinks
AllowOverride None
# 該目錄的資料允許訪問,
Require all granted
# apache代理php的配置區域
# 使用者請求的是php程式,就交給這裡的 mod_php5.c 底層驅動去解析程式碼
#
<IfModule mod_php5.c>
php_value max_execution_time 300
php_value memory_limit 128M
php_value post_max_size 16M
php_value upload_max_filesize 2M
php_value max_input_time 300
php_value max_input_vars 10000
php_value always_populate_raw_post_data -1
php_value date.timezone Asia/Shanghai
</IfModule>
</Directory>
# 其他目錄的訪問許可權設定,這些4個字母目錄全部拒絕訪問
<Directory "/usr/share/zabbix/conf">
Require all denied
</Directory>
<Directory "/usr/share/zabbix/app">
Require all denied
</Directory>
<Directory "/usr/share/zabbix/include">
Require all denied
</Directory>
<Directory "/usr/share/zabbix/local">
# denied 都拒絕訪問的意思
Require all denied
</Directory>