1. 程式人生 > >CentOS 7.x下部署和配置zabbix 3.2.x監控工具

CentOS 7.x下部署和配置zabbix 3.2.x監控工具

centos zabbix 監控

一.安裝zabbix服務端

1.下載官方yum源:

rpm -ivh http://repo.zabbix.com/zabbix/3.2/rhel/7/x86_64/zabbix-release-3.2-1.el7.noarch.rpm

2.安裝zabbix服務端(會自動安裝httpd和php服務):

yum --enablerepo=zabbix install zabbix-server-mysql zabbix-web-mysql zabbix-agent zabbix-sender zabbix-get -y

3.驗證安裝包:

rpm -qa|grep "zabbix\|php\|httpd"

技術分享

註意,如果網速太慢導致安裝一直出現超時,可以先通過wget下載rpm包,再進行本地安裝:

wget "http://repo.zabbix.com/zabbix/3.2/rhel/7/x86_64/zabbix-server-mysql-3.2.4-2.el7.x86_64.rpm "
wget "http://repo.zabbix.com/zabbix/3.2/rhel/7/x86_64/zabbix-web-mysql-3.2.4-2.el7.noarch.rpm"
wget "http://repo.zabbix.com/zabbix/3.2/rhel/7/x86_64/zabbix-agent-3.2.4-2.el7.x86_64.rpm"
wget "http://repo.zabbix.com/zabbix/3.2/rhel/7/x86_64/zabbix-sender-3.2.4-2.el7.x86_64.rpm"
wget "http://repo.zabbix.com/zabbix/3.2/rhel/7/x86_64/zabbix-get-3.2.4-2.el7.x86_64.rpm"

下載完畢後依次安裝(會自動安裝依賴):

yum localinstall zabbix-server-mysql-3.2.4-2.el7.x86_64.rpm -y
yum localinstall zabbix-web-mysql-3.2.4-2.el7.noarch.rpm -y
yum localinstall zabbix-agent-3.2.4-2.el7.x86_64.rpm -y
yum localinstall zabbix-sender-3.2.4-2.el7.x86_64.rpm -y
yum localinstall zabbix-get-3.2.4-2.el7.x86_64.rpm -y

驗證安裝包:

rpm -qa|grep "zabbix\|php\|httpd"

如果對selinux不熟悉,最好先禁用selinux,以免部署過程中出錯:

sed -i "s/^SELINUX=enforcing/SELINUX=disabled/g" /etc/selinux/config
setenforce 0


二、安裝和配置數據庫

1.安裝mariadb數據庫:

yum install mariadb-server mariadb mariadb-devel -y

2.配置mariadb數據庫,修改數據存儲路徑,可根據實際情況修改優化參數:

# vim /etc/my.cnf
datadir=/data/mysql

3.創建數據庫數據存儲目錄,並賦予mysql用戶權限:

mkdir -p /data/mysql
chown -R mysql.mysql /data/mysql

4.啟動mariadb,設置開機自啟動:

systemctl start mariadb
systemctl enable mariadb

5.配置數據庫用戶和權限:

shell> mysqladmin -uroot password "cB5wB2mD1qR6lR1n"
shell> mysql -uroot -p
MariaDB [(none)]> drop database test;
MariaDB [(none)]> grant all privileges on *.* to [email protected] identified by ‘cB5wB2mD1qR6lR1n‘;
MariaDB [(none)]> grant all privileges on *.* to [email protected] identified by ‘cB5wB2mD1qR6lR1n‘;
MariaDB [(none)]> create database zabbix character set utf8 collate utf8_bin;
MariaDB [(none)]> grant all privileges on zabbix.* to [email protected] identified by ‘dR1dF4fR1iP1dB1l‘;
MariaDB [(none)]> quit

6.導入zabbix數據:

zcat /usr/share/doc/zabbix-server-mysql-3.2.*/create.sql.gz | mysql -uzabbix -p zabbix

三、配置zabbix

1.更改fping命令權限:

chown root:zabbix /usr/sbin/fping
chmod 4710 /usr/sbin/fping

2.配置zabbix服務,修改數據庫zabbix用戶的密碼參數:

# vi /etc/zabbix/zabbix_server.conf
DBHost=localhost
DBName=zabbix
DBUser=zabbix
DBPassword=dR1dF4fR1iP1dB1l
FpingLocation=/usr/sbin/fping

3.啟動zabbix服務,設置開機自啟動:

systemctl start zabbix-server
systemctl enable zabbix-server

四、配置php和apache服務

1.修改php配置,將時區改為東八區:

# vim /etc/httpd/conf.d/zabbix.conf
php_value date.timezone Asia/Shanghai

2.修改apache配置,為安全考慮,將默認的80端口修改為其他端口,尤其是需要通過公網訪問時:

# vim /etc/httpd/conf/httpd.conf
Listen 53302

3.啟動apache服務,設置開機自啟動:

systemctl start httpd
systemctl enable httpd

4.配置防火墻,開放apache端口

iptables -I INPUT  -p tcp --dport 53302 -j ACCEPT


五、web端初始化安裝zabbix:

登錄zabbix,並按提示進行安裝:

http://10.135.3.135:53302/zabbix

技術分享

確保php檢測項都通過,沒問題點擊下一步:

技術分享

輸入數據庫的密碼,其他使用默認參數:

技術分享

使用默認參數,點擊下一步:

技術分享

檢查配置信息,沒問題的話進行下一步:

技術分享

安裝完成,配置信息寫入到zabbix.conf.php文件:

技術分享

六、配置zabbix

1.安裝完畢後使用默認賬號密碼進行登陸:

默認用戶名/密碼:

Admin/zabbix


2.禁止重裝zabbix:

cd /usr/share/zabbix && mv setup.php setup.php.default

3.在界面將語言修改成中文

技術分享

4.修改默認的賬號密碼


技術分享技術分享

5.禁用Guests用戶群組

技術分享

6.解決zabbix圖表顯示中文亂碼問題:

技術分享

進入windows目錄 C:\Windows\Fonts\微軟雅黑 找到文件 微軟雅黑-常規字體,復制出來將文件名修改為msyh.ttf,然後上傳到zabbix服務器的/usr/share/zabbix/fonts目錄下。

編輯/usr/share/zabbix/include/defines.inc.php文件,將45行的 ‘graphfont‘ 修改為 ‘msyh‘

技術分享


7.新建zabbix模板:

1)Linux通用模板:

新建通用模板,方便所有linux主機直接鏈接使用該模板:

技術分享

技術分享

2)Windows通用模板:

新建通用模板,方便所有windows主機直接鏈接使用該模板:

技術分享技術分享


8.配置報警媒介,使用郵箱來發送報警郵件(用來發送報警的郵箱必須要先開啟SMTP):

技術分享

9.配置用戶的報警媒介(指定報警接收人信息):

技術分享

10.配置告警動作:

1)新建告警動作:

技術分享

2)配置操作:

默認接收人:告警{TRIGGER.STATUS},服務器:{HOSTNAME1}發生: {TRIGGER.NAME}告警!

默認信息:

告警主機:{HOSTNAME1}

告警IP:{HOST.IP}

告警群組:{TRIGGER.HOSTGROUP.NAME}

告警時間:{EVENT.DATE} {EVENT.TIME}

告警等級:{TRIGGER.SEVERITY}

告警信息:{TRIGGER.NAME}

問題詳情:{ITEM.NAME}:{ITEM.VALUE}

事件ID:{EVENT.ID}

------------------------------------------------------------------

技術分享

3)配置恢復操作:

默認接收人:恢復{TRIGGER.STATUS}, 服務器:{HOSTNAME1}: {TRIGGER.NAME}已恢復!

默認信息:

告警主機:{HOSTNAME1}

告警IP:{HOST.IP}

告警群組:{TRIGGER.HOSTGROUP.NAME}

告警時間:{EVENT.DATE} {EVENT.TIME}

告警等級:{TRIGGER.SEVERITY}

告警信息:{TRIGGER.NAME}

問題詳情:{ITEM.NAME}:{ITEM.VALUE}

事件ID:{EVENT.ID}

------------------------------------------------------------------

技術分享

11.配置自動發現

1)配置自動發現規則:

技術分享

2)配置自動發現動作:

技術分享

3)被發現的主機自動鏈接到通用模板:

技術分享

4)配置完畢,啟動激活規則

技術分享

5)註意,在使用自動發現時,需要將所有客戶端的IP和主機名映射都配置到服務端的/etc/hosts文件中,以便發現的監控主機的主機名稱顯示為主機名而不是IP地址。

[[email protected] ~]# cat /etc/hosts
127.0.0.1  localhost  localhost.localdomain  VM_3_135_centos
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
10.104.46.195    phptest

七、客戶端主機安裝zabbix

1.linux服務器安裝zabbix客戶端:

1)安裝官方yum源:

rpm -ivh 
http://repo.zabbix.com/zabbix/3.2/rhel/7/x86_64/zabbix-release-3.2-1.el7.noarch.rpm


2)安裝zabbix客戶端:

yum --enablerepo=zabbix install zabbix-agent

註意,如果網速太慢導致安裝一直出現超時,可以先通過wget下載rpm包,再進行本地安裝:

 wget "http://repo.zabbix.com/zabbix/3.2/rhel/7/x86_64/zabbix-agent-3.2.4-2.el7.x86_64.rpm"

下載完畢後進行安裝:

yum localinstall zabbix-agent-3.2.4-2.el7.x86_64.rpm -y

3)驗證安裝包:

rpm -qa|grep "zabbix"

4)配置客戶端服務:

sed -i ‘s#Server=127.0.0.1#Server=10.135.3.135#g‘ /etc/zabbix/zabbix_agentd.conf
sed -i ‘s#\# Timeout=3#Timeout=30#g‘ /etc/zabbix/zabbix_agentd.conf

修改Hostname參數為客戶端的主機名

5)啟動zabbix服務,設置開機自啟動:

systemctl start zabbix-agent
systemctl enable zabbix-agent

6)zabbix客戶端自動安裝腳本:

[[email protected] ~]# cat install_zabbix_agent.sh 
#!/bin/bash
#
################################################
# author:ellen
# describe:自動安裝zabbix客戶端服務
# updated:20170531
###############################################
#
# 錯誤信息以紅色顯示
_err()
{
    echo -e "\033[1;31m[ERROR] $@\033[0m"
}
# 一般信息以綠色顯示
_info()
{
    echo -e "\033[1;32m[Info] $@\033[0m"
}
rpm -qa|grep zabbix-agent
if [ $? -eq 0 ];then
    _err "zabbix客戶端已存在,請檢查。"
    exit 1
fi
# 下載zabbix官方源
_info "開始安裝zabbix官方源..."
rpm -ivh http://repo.zabbix.com/zabbix/3.2/rhel/7/x86_64/zabbix-release-3.2-1.el7.noarch.rpm
if [ $? -eq 0 ];then
    _info "zabbix官方源安裝成功,開始安裝zabbix客戶端..."
else
    rpm -qa|grep zabbix-release-3.2
    if [ $? -eq 0 ];then
        _info "zabbix官方源已存在,開始安裝zabbix客戶端..."
    else
        _err "zabbix官方源安裝失敗,請檢查。"
        exit 1
    fi
fi
# 在線安裝zabbix客戶端
#yum --enablerepo=zabbix install zabbix-agent -y
# 本地安裝zabbix客戶端
yum localinstall /root/zabbix-agent-3.2.4-2.el7.x86_64.rpm -y
if [ $? -eq 0 ];then
    _info "zabbix客戶端安裝成功,開始配置zabbix客戶端..."
else
    _err "zabbix客戶端安裝失敗,請檢查。"
    exit 1
fi
# 修改zabbix配置
sed -i ‘s#Server=127.0.0.1#Server=10.135.3.135#g‘ /etc/zabbix/zabbix_agentd.conf
grep "^Server=" /etc/zabbix/zabbix_agentd.conf
sed -i ‘s#\# Timeout=3#Timeout=30#g‘ /etc/zabbix/zabbix_agentd.conf
grep "^Timeout=" /etc/zabbix/zabbix_agentd.conf
sed  -i "s/Hostname=Zabbix server/Hostname=`hostname`/g" /etc/zabbix/zabbix_agentd.conf
grep "^Hostname=" /etc/zabbix/zabbix_agentd.conf
_info "配置修改完畢,現在開始啟動zabbix客戶端..."
# 啟動zabbix客戶端,並設置開機自啟動
systemctl enable zabbix-agent
systemctl start zabbix-agent
if [ $? -eq 0 ];then
    _info "zabbix客戶端啟動成功。"
else
    _err "zabbix客戶端啟動失敗,請檢查。"
    exit 1
fi
ps aux|grep -v grep|grep zabbix_agentd
[[email protected] ~]#

如果在使用腳本自動安裝,啟動zabbix客戶端時出現以下進程,請執行 systemctl restart zabbix-agent 命令重啟zabbix客戶端

技術分享

重啟後服務正常:

技術分享

2.windows服務器安裝zabbix客戶端:

1)下載客戶端壓縮包http://www.zabbix.com/downloads/3.2.0/zabbix_agents_3.2.0.win.zip

解壓壓縮包,然後將解壓出來的子目錄conf裏面的zabbix_agentd.win.conf重命名為zabbix_agentd.conf

2)修改zabbix_agentd.conf配置中的以下參數:

Server=10.135.3.135
ServerActive=10.135.3.135
Timeout=30
Hostname=10_104_102_26

註意:Hostname主機名通過本機打開cmd命令行執行hostname獲得

技術分享

3)修改完畢將zabbix_agents_3.2.0.win程序目錄復制到c盤,將zabbix_agentd.conf剪切到c盤,進入到C:\Windows\System32目錄下以管理員身份打開cmd:

技術分享

4)執行以下命令安裝客戶端:

zabbix_agentd.exe --install

技術分享

5)安裝完畢執行以下命令啟動客戶端:

zabbix_agentd.exe --start

技術分享

技術分享


本文出自 “Ellen” 博客,請務必保留此出處http://ellenv.blog.51cto.com/12252761/1931583

CentOS 7.x下部署和配置zabbix 3.2.x監控工具