最全的zabbix部署(Server、agent、proxy)

zabbix-3.4

  • 一、zabbix介绍
  • 二、安装部署zabbix-server
      • 1.安装zabbix-server
      • 2.安装httpd和mysql
      • 3.导入初始架构和数据
  • 三、安装部署zabbix-agent/安装部署zabbix-proxy
      • 1.安装zabbix-agent、zabbix-proxy
      • 2.修改配置文件
          • 1.zabbix-agent配置文件
          • 2.zabbix-proxy配置文件
      • 3.配置zabbix proxy数据库
          • 1.创建zabbix proxy数据库
          • 2.查找zabbix proxy数据
          • 3.导入zabbix proxy数据
          • 4.启动zabbix-proxy和zabbix-agent并设为开机自启
  • 四、告警设置
      • 1.中文设置
      • 2.钉钉设置
      • 3.服务器设置
      • 4.web设置
      • 5.验证结果
  • 五、将agent加入zabbix监控
      • 1.创建agent代理
      • 2.添加主机
      • 3.完成监控

192.168.100.100    zabbix-server
192.168.100.110    zabbix-agent、zabbix-proxy

一、zabbix介绍

最全的zabbix部署(Server、agent、proxy)_第1张图片最全的zabbix部署(Server、agent、proxy)_第2张图片
最全的zabbix部署(Server、agent、proxy)_第3张图片

二、安装部署zabbix-server

1.安装zabbix-server

rpm -ivh http://repo.zabbix.com/zabbix/3.4/rhel/7/x86_64/zabbix-release-3.4-2.el7.noarch.rpm
yum install zabbix-server-mysql zabbix-web-mysql zabbix-agent -y 

最全的zabbix部署(Server、agent、proxy)_第4张图片

2.安装httpd和mysql

mkdir /opt/download/
cd /opt/download/
mysql-5.6.36-linux-glibc2.5-x86_64.tar.gz

my.cnf
修改 Socket=/var/lib/mysql/mysql.sock

msyql.sh

chmod +x msyql.sh
./msyql.sh

最全的zabbix部署(Server、agent、proxy)_第5张图片

##/bin/bash
##安装mysql
	rm -rf mysql-5.6.36-linux-glibc2.5-x86_64
	rm -rf /opt/mysql
	rm -rf /data/my3306/* 
	tar -zxvf mysql-5.6.36-linux-glibc2.5-x86_64.tar.gz
	mv mysql-5.6.36-linux-glibc2.5-x86_64 /opt/mysql
	#rpm -qa|grep maria
	#rpm -qa|grep mysql
	
	yum remove -y maria*
	yum -y remove mysql mysql-server mysql-libs
	userdel -r mysql

	yum install -y ncurses ncurses-devel libaio libaio-devel
	yum install -y perl perl-DBD-MySQL 
	yum install -y perl-DBI perl-Time-HiRes perl-IO-Socket-SSL perl-TermReadKey

	useradd -r -g mysql -s /bin/false mysql
	mkdir -p /data/my3306/{data,log,tmp,run}
	cp /opt/download/my.cnf  /data/my3306/
	chown -R mysql.mysql /opt/mysql
	chown -R mysql:mysql /data/my3306
	cd /opt/mysql/scripts/
	./mysql_install_db --user=mysql --basedir=/opt/mysql/ --datadir=/data/my3306/data --defaults-file=/data/my3306/my.cnf
	touch /etc/ld.so.conf.d/mysql56.conf
	echo "/opt/mysql/lib/" >> /etc/ld.so.conf.d/mysql56.conf
	ldconfig

	echo "export PATH=\$PATH:/opt/mysql/bin" >> ~/.bash_profile
	sleep 3
	source  ~/.bash_profile

	whereis mysql
	if [ $? -ne 0 ];then
		source  ~/.bash_profile
	else
		echo 'is fail  again !'
	fi 

	ln -s /var/lib/mysql/mysql.sock  /tmp/mysql.sock
	/opt/mysql/bin/mysqld_safe --defaults-file=/data/my3306/my.cnf & 
/opt/mysql/bin/mysql
SET PASSWORD FOR 'root'@'localhost'=PASSWORD('abc123');
SET PASSWORD FOR 'root'@'127.0.0.1'=PASSWORD('abc123');
grant all privileges on *.* to root@'%' identified by 'abc123';

create database zabbix character set utf8 collate utf8_bin;
grant all on zabbix.* to zabbix@'%' identified by 'abc123';

FLUSH PRIVILEGES;
exit

最全的zabbix部署(Server、agent、proxy)_第6张图片

3.导入初始架构和数据

rm -rf /user/local/msyql/msyql.sock
ln -s /var/lib/mysql/mysql.sock /user/local/msyql/msyql.sock
>>lrwxrwxrwx. 1 root root 27 10 31 20:30 /var/lib/mysql/mysql.sock -> /data/my3306/run/mysql.sock

zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -pzabbix zabbix;
sed -i "s/# DBPassword=/DBPassword=abc123/g" /etc/zabbix/zabbix_server.conf
sed -i "s/# DBHost=localhost/DBHost=localhost/g" /etc/zabbix/zabbix_server.conf

最全的zabbix部署(Server、agent、proxy)_第7张图片

sed -i "s/# php_value date.timezone Europe\/Riga/php_value date.timezone Asia\/Shanghai/g" /etc/httpd/conf.d/zabbix.conf

最全的zabbix部署(Server、agent、proxy)_第8张图片

systemctl restart zabbix-server zabbix-agent httpd
systemctl enable zabbix-server zabbix-agent httpd

三、安装部署zabbix-agent/安装部署zabbix-proxy

1.安装zabbix-agent、zabbix-proxy

rpm -ivh http://repo.zabbix.com/zabbix/3.4/rhel/7/x86_64/zabbix-release-3.4-2.el7.noarch.rpm
yum install -y zabbix-proxy zabbix-proxy-mysql zabbix-agent
cd /etc/zabbix
#修改配置文件
rm -rf /etc/zabbix/zabbix_agentd.conf
rm -rf /etc/zabbix/zabbix_proxy.conf

2.修改配置文件

1.zabbix-agent配置文件
vim /etc/zabbix/zabbix_agentd.conf
注意修改ip
PidFile=/var/run/zabbix/zabbix_agentd.pid
LogFile=/var/log/zabbix/zabbix_agentd.log
LogFileSize=0
#Server=192.168.100.100
#ServerActive=192.168.100.100
#Hostname=192.168.100.100
AllowRoot=1
Include=/etc/zabbix/zabbix_agentd.d/*.conf
2.zabbix-proxy配置文件
vim /etc/zabbix/zabbix_proxy.conf
注意修改ip
PidFile=/var/run/zabbix/zabbix_agentd.pid
LogFile=/var/log/zabbix/zabbix_agentd.log
LogFileSize=0
#Server=192.168.100.100
#ServerActive=192.168.100.100
#Hostname=192.168.100.100
AllowRoot=1
Include=/etc/zabbix/zabbix_agentd.d/*.conf
[root@localhost ~]# 
[root@localhost ~]# ^C
[root@localhost ~]# cat /etc/zabbix/zabbix_proxy.conf
#Server=192.168.100.100
#Hostname=192.168.100.110
LogFile=/var/log/zabbix/zabbix_proxy.log
LogFileSize=0
PidFile=/var/run/zabbix/zabbix_proxy.pid
SocketDir=/var/run/zabbix
#DBHost=192.168.100.100
DBName=zabbix_proxy
DBUser=zabbix
DBPassword=zabbix
#DBSocket=/var/lib/mysql/mysql.sock
SNMPTrapperFile=/var/log/snmptrap/snmptrap.log
Timeout=4
ExternalScripts=/usr/lib/zabbix/externalscripts
LogSlowQueries=3000
AllowRoot=1

3.配置zabbix proxy数据库

1.创建zabbix proxy数据库
/opt/mysql/bin/mysql -uroot -pabc123

mysql> create database zabbix_proxy character set utf8;
#创建zabbix用户,密码也为zabbix,并授权
mysql> GRANT ALL PRIVILEGES ON zabbix_proxy.* TO zabbix@"%" IDENTIFIED BY "zabbix"; 
#刷新授权表
mysql> FLUSH PRIVILEGES;
2.查找zabbix proxy数据
find / -name schema.sql.gz
/usr/share/doc/zabbix-proxy-mysql-3.4.15/schema.sql.gz
3.导入zabbix proxy数据
zcat /usr/share/doc/zabbix-proxy-mysql/schema.sql.gz |mysql -uzbx_proxy -pzabbix zabbix_proxy
4.启动zabbix-proxy和zabbix-agent并设为开机自启
systemctl start zabbix-agent.service zabbix-proxy.service
systemctl enable zabbix-agent.service zabbix-proxy.service

四、告警设置

http://192.168.100.100/zabbix

最全的zabbix部署(Server、agent、proxy)_第9张图片
最全的zabbix部署(Server、agent、proxy)_第10张图片
最全的zabbix部署(Server、agent、proxy)_第11张图片

Admin/zabbix

最全的zabbix部署(Server、agent、proxy)_第12张图片

1.中文设置

最全的zabbix部署(Server、agent、proxy)_第13张图片
最全的zabbix部署(Server、agent、proxy)_第14张图片

2.钉钉设置

最全的zabbix部署(Server、agent、proxy)_第15张图片
最全的zabbix部署(Server、agent、proxy)_第16张图片
最全的zabbix部署(Server、agent、proxy)_第17张图片
最全的zabbix部署(Server、agent、proxy)_第18张图片
复制webhook地址
https://oapi.dingtalk.com/robot/send?access_token=****

3.服务器设置

查看zabbix-server脚本存放的位置

[root@localhost ~]# grep ^AlertScriptsPath /etc/zabbix/zabbix_server.conf
AlertScriptsPath=/usr/lib/zabbix/alertscripts

[root@localhost ~]# cd /usr/lib/zabbix/alertscripts/
[root@localhost alertscripts]# vim dingding.sh
#!/usr/bin/bash
sendkey=钉钉token值
curl 'https://oapi.dingtalk.com/robot/send?access_token='$sendkey \
-H 'Content-Type: application/json' \
-d "
        {
                \"actionCard\": {
                \"title\": \"$2\",
                \"text\": \"$3\",
                \"hideAvatar\": \"0\",
                \"btnOrientation\": \"0\",
                \"btns\": [
                        {
                                \"title\": \" 请赶快处理\"
                                        }
            ]
    },
    \"msgtype\": \"actionCard\"
}"

[root@localhost alertscripts]# chmod +x dingding.sh
[root@localhost alertscripts]# sh -x dingding.sh 1 测试  告警
[root@localhost alertscripts]# touch /var/log/zabbix/dingding.log
[root@localhost alertscripts]# chown zabbix.zabbix /var/log/zabbix/dingding.log

最全的zabbix部署(Server、agent、proxy)_第19张图片最全的zabbix部署(Server、agent、proxy)_第20张图片

4.web设置

名称:告警
类型:脚本
脚本名称:dingding.sh
脚本参数://新增以下三个参数

{ALERT.SENDTO}
{ALERT.SUBJECT}
{ALERT.MESSAGE}

在这里插入图片描述
注意执行脚本名称
最全的zabbix部署(Server、agent、proxy)_第21张图片

最全的zabbix部署(Server、agent、proxy)_第22张图片

名称:Linux servers(随便)
条件 A 主机群组=Linux servers
条件 B 主机群组 = agent-1

最全的zabbix部署(Server、agent、proxy)_第23张图片
最全的zabbix部署(Server、agent、proxy)_第24张图片

默认操作步骤持续时间 60
默认接收人  {TRIGGER.STATUS}:{TRIGGER.NAME}
默认信息:

告警主机:{HOST.NAME}
告警  IP:{HOST.IP}
告警时间:{EVENT.DATE}-{EVENT.TIME}
告警等级:{TRIGGER.SEVERITY}
告警信息:{TRIGGER.NAME}:{ITEM.VALUE}
事件  ID:{EVENT.ID}

操作细节:-》
操作类型:发送消息
发送到用户:Admin (Zabbix Administrator) 
仅送到:告警  //一定要配置否则邮件发送不成功

最全的zabbix部署(Server、agent、proxy)_第25张图片

恢复操作:{TRIGGER.STATUS}:{TRIGGER.NAME}
恢复信息:

恢复主机:{HOST.NAME}
恢复  IP:{HOST.IP}
恢复时间:{EVENT.DATE}-{EVENT.TIME}
恢复等级:{TRIGGER.SEVERITY}
恢复信息:{TRIGGER.NAME}:{ITEM.VALUE}
恢复  ID:{EVENT.ID}

操作细节:-》
操作类型:发送消息
发送到用户:Admin (Zabbix Administrator) 
仅送到:告警  //一定要配置否则邮件发送不成功

最全的zabbix部署(Server、agent、proxy)_第26张图片

为用户添加报警媒介

最全的zabbix部署(Server、agent、proxy)_第27张图片
最全的zabbix部署(Server、agent、proxy)_第28张图片

5.验证结果

systemctl stop zabbix-agent.service zabbix-proxy.service
让我们静等一会儿吧

最全的zabbix部署(Server、agent、proxy)_第29张图片

最全的zabbix部署(Server、agent、proxy)_第30张图片

五、将agent加入zabbix监控

1.创建agent代理

最全的zabbix部署(Server、agent、proxy)_第31张图片
最全的zabbix部署(Server、agent、proxy)_第32张图片

2.添加主机

在这里插入图片描述
最全的zabbix部署(Server、agent、proxy)_第33张图片
最全的zabbix部署(Server、agent、proxy)_第34张图片
最全的zabbix部署(Server、agent、proxy)_第35张图片

3.完成监控

zbx点亮说明已经成功接人监控
最全的zabbix部署(Server、agent、proxy)_第36张图片

你可能感兴趣的:(监控,安全)