- 1.自定义进程监控
- 1.1编写脚本
- 1.2修改配置文件
- 1.3web界面配置监控项和触发器
- 2.自定义日志监控
- 2.1 编写脚本
- 2.2 修改配置文件
- 2.3 重启
- 2.4 web界面配置监控项和触发
- 3.自定义MySQL主从监控和声音报警
- 3.1 部署mysql主从
- 写脚本(脚本放在统一位置)
- 修改/usr/local/etc/zabbix_agentd.conf文件
- UnsafeUserParameters=1
- UserParameter=
,
- 重启zabbix_agent
- 在web界面配置监控项和触发器
[root@agent scripts]# cat check_process.sh
#!/bin/bash
count=$(ps -ef | grep -Ev "grep|$0" | grep -c "$1")
if [ $count -eq 1 ];then
echo '1'
else
echo '0'
fi
1.2修改配置文件
[root@agent ~]# vim /usr/local/etc/zabbix_agentd.conf UnsafeUserParameters=1 //修改 UserParameter=check_process[*],/scripts/check_process.sh $1 //最后一行添加 [root@agent ~]# systemctl restart zabbix_agentd.service1.3web界面配置监控项和触发器
//关闭httpd服务 [root@agent ~]# ss -anltu Netid State Recv-Q Send-Q Local Address:Port Peer Address:Port tcp LISTEN 0 128 0.0.0.0:10050 0.0.0.0:* tcp LISTEN 0 128 0.0.0.0:22 0.0.0.0:* tcp LISTEN 0 128 *:80 *:* tcp LISTEN 0 128 [::]:22 [::]:* [root@agent ~]# systemctl stop httpd.service [root@agent ~]# ss -anltu Netid State Recv-Q Send-Q Local Address:Port Peer Address:Port tcp LISTEN 0 128 0.0.0.0:10050 0.0.0.0:* tcp LISTEN 0 128 0.0.0.0:22 0.0.0.0:* tcp LISTEN 0 128 [::]:22 [::]:*
报错
- 写脚本(脚本放在统一位置)
- 修改/usr/local/etc/zabbix_agentd.conf文件
- UnsafeUserParameters=1
- UserParameter=
,
- 重启zabbix_agent
- 在web界面配置监控项和触发器
[root@agent scripts]# ll log.py -rwxr-xr-x 1 root root 1854 10月 11 19:19 log.py2.2 修改配置文件
//执行log.py脚本需要安装python [root@agent ~]# yum -y install python3 [root@agent ~]# vim /usr/local/etc/zabbix_agentd.conf UserParameter=check_log[*],/scripts/log.py $1 $2 $3 //最后一行添加 //修改文件权限便于key访问 [root@agent ~]# chmod 755 /var/log/httpd //在控制主机测试 [root@zabbix ~]# zabbix_get -s 192.168.237.169 -k check_log[/var/log/httpd/error_log] 02.3 重启
[root@agent ~]# systemctl restart zabbix_agentd.service2.4 web界面配置监控项和触发
添加监控项
添加触发器
手动触发验证
[root@agent ~]# echo "Error" >> /var/log/httpd/error_log
成功收到警告和邮件
主数据库: //安装mariadb,开启并设置开机自启 [root@master ~]# yum -y install mariadb mariadb-server [root@master ~]# systemctl enable --now mariadb Created symlink /etc/systemd/system/mysql.service → /usr/lib/systemd/system/mariadb.service. Created symlink /etc/systemd/system/mysqld.service → /usr/lib/systemd/system/mariadb.service. Created symlink /etc/systemd/system/multi-user.target.wants/mariadb.service → /usr/lib/systemd/system/mariadb.service. //初始化数据库 [root@master ~]# mysql_secure_installation //关闭防火墙和selinux [root@master ~]# systemctl disable --now firewalld.service Removed /etc/systemd/system/multi-user.target.wants/firewalld.service. Removed /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service. [root@master ~]# setenforce 0 [root@master ~]# sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config 从数据库: //安装,开启并设置开机自启 [root@slave ~]# yum -y install mariadb mariadb-server [root@slave ~]# systemctl enable --now mariadb Created symlink /etc/systemd/system/mysql.service → /usr/lib/systemd/system/mariadb.service. Created symlink /etc/systemd/system/mysqld.service → /usr/lib/systemd/system/mariadb.service. Created symlink /etc/systemd/system/multi-user.target.wants/mariadb.service → /usr/lib/systemd/system/mariadb.service. //初始化 [root@slave ~]# mysql_secure_installation //关闭防火墙和selinux [root@slave ~]# systemctl enable --now firewalld.service Created symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service → /usr/lib/systemd/system/firewalld.service. Created symlink /etc/systemd/system/multi-user.target.wants/firewalld.service → /usr/lib/systemd/system/firewalld.service. [root@slave ~]# setenforce 0 [root@slave ~]# sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
修改配置文件
主数据库: [root@master ~]# vim /etc/my.cnf.d/mariadb-server.cnf [mysqld] datadir=/var/lib/mysql socket=/var/lib/mysql/mysql.sock log-error=/var/log/mariadb/mariadb.log pid-file=/run/mariadb/mariadb.pid log_bin=mysql-bin //开启二进制日志 server_id=1 //服务id号,不可从复,值为0时则表示拒绝服务器连接 [root@master ~]# systemctl restart mariadb.service 从数据库: [root@slave ~]# vim /etc/my.cnf.d/mariadb-server.cnf [mysqld] datadir=/var/lib/mysql socket=/var/lib/mysql/mysql.sock log-error=/var/log/mariadb/mariadb.log pid-file=/run/mariadb/mariadb.pid server_id=2 //服务id号,不可重复,为0则拒绝从服务器连接 relay-log=myrelay //开启中继日志 [root@slave ~]# systemctl restart mariadb.service
授权用户
主数据库: MariaDB [(none)]> grant replication slave on *.* to 'wys'@'%' identified by 'wys123!'; Query OK, 0 rows affected (0.001 sec) MariaDB [(none)]> flush privileges; Query OK, 0 rows affected (0.000 sec) MariaDB [(none)]> show master status; +------------------+----------+--------------+------------------+ | File | Position | Binlog_Do_DB | Binlog_Ignore_DB | +------------------+----------+--------------+------------------+ | mysql-bin.000001 | 637 | | | +------------------+----------+--------------+------------------+ 1 row in set (0.000 sec)
在从数据库配置主服务器的信息
//配置主服务器信息
MariaDB [(none)]> change master to master_host='192.168.237.170',master_user='wys',master_password='wys123!',master_log_file='mysql-bin.000001',master_log_pos=637;
Query OK, 0 rows affected (0.004 sec)
//开启主从
MariaDB [(none)]> start slave;
Query OK, 0 rows affected (0.002 sec)
//查看主从复制的信息状态
MariaDB [(none)]> show slave status G
*************************** 1. row ***************************
Slave_IO_State: Waiting for master to send event
Master_Host: 192.168.237.170
Master_User: wys
Master_Port: 3306
Connect_Retry: 60
Master_Log_File: mysql-bin.000001
Read_Master_Log_Pos: 637
Relay_Log_File: myrelay.000002
Relay_Log_Pos: 555
Relay_Master_Log_File: mysql-bin.000001
Slave_IO_Running: Yes
Slave_SQL_Running: Yes
......



