- 环境准备
- systemctl enable —now mariadb 立即启动并设置开机自启
#mysql_secure_installation 初始化数据库
Enter current password for root (enter for none): 输入当前root密码, 默认为空;enter
Set root password? [Y/n] 设置root密码 y
New passwoed:
Re-enter new password:
……
Success!
……
Remove anonymous users? [Y/n] 删除匿名用户 y
Disallow root login remotely? [Y/n] 不允许root远程登录 n
Remove test database and access to it? [Y/n] 删除测试数据库 y
Reload privilege tables now? [Y/n] 刷新授权 y
#mysql -uroot -p - mysql -uroot -p
mysql> create database zabbix character set utf8 collate utf8_bin; - 监控
环境准备
① 系统:centos 7.9
② Zabbix版本: 5.0
③ MariaDB版本:5.5.68
④ 防火墙,sexlinux关!
关闭selinux #setenforce 0 记得防火墙加策略 firewall-cmd —zone=public —add-port=10050/tcp —permanent 以10050端口为例 zabbix server和zabbix agent所使用的10050、10051端口 firewall-cmd —reload 重新加载策略 firewall-cmd —list-port 再次查看
1.获取zabbix下载源
rpm -Uvh https://repo.zabbix.com/zabbix/6.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm
使用zabbix官方源比较慢,换成阿里源
2. 更改zabbix.repo源,为阿里的
sed -i 's#[http://repo.zabbix.com#https://mirrors.aliyun.com/zabbix#'](http://repo.zabbix.com#https://mirrors.aliyun.com/zabbix#') /etc/yum/repos.d/zabbix.repo
替换 /etc/yum.repos .d/zabbix.repo 文件里的 http://repo.zabbix.com 为 https://mirrors.aliyun.com/zabbix
3. 清理yum缓存
4. 安装zabbix server和agent
yum install zabbix-server-mysql zabbix-agent -y
5. 安装scl工具
yum install centos-release-scl -y
scL(Software Collections)可以让你在同一个操作系统上安装和使用多个版本的软件,而不会影响整个系统的安装包。软件包会安装在/opt/rh目录下
6. 修改zabbix前端源参数
vim /etc/yum.repos.d/zabbix.repo
[zabbix-frontend]name=Zabbix Official Repository frontend - $basearchbaseurl=https://mirrors.aliyun.com/zabbix/zabbix/5.0/rhel/7/$basearch/frontendenabled=1gpgcheck=0
7. 安装zabbix前端环境,且安装在scl环境下
yum install zabbix-web-mysql-scl zabbix-nginx-conf-scl
8. 安装zabbix所需数据库, 用centos7 自带的mariadb
9. 配置数据库
systemctl enable —now mariadb 立即启动并设置开机自启
#mysql_secure_installation 初始化数据库
Enter current password for root (enter for none): 输入当前root密码, 默认为空;enter
Set root password? [Y/n] 设置root密码 y
New passwoed:
Re-enter new password:
……
Success!
……
Remove anonymous users? [Y/n] 删除匿名用户 y
Disallow root login remotely? [Y/n] 不允许root远程登录 n
Remove test database and access to it? [Y/n] 删除测试数据库 y
Reload privilege tables now? [Y/n] 刷新授权 y
#mysql -uroot -p
10. 设置zabbix连接用户密码和授权
mysql -uroot -p
mysql> create database zabbix character set utf8 collate utf8_bin;
创建zabbix用户,设置密码为123456
mysql> create user zabbix@localhost identified by ‘123456’ ;
授权,zabbix用户,目标zabbix里所有的表
mysql> grant all privileges on zabbix. to zabbix@localhost;
刷新授权
mysql> flush privileges;
退出mysql
mysql> exit;
11. 导入zabbix数据库文件
zcat /usr/share/doc/zabbix-server-mysql*/create.sql.gz | mysql -uzabbix -p zabbix
mysql -u用户名 -p 数据库名 ,加入密码设置为123456mysql -uzabbix -p123456 登录zabbix数据库
12. 修改zabbix-server 配置文件,修改数据库密码
vim /etc/zabbix/zabbix_server.conf
DBPassword=123456
13. 修改nginx取消listen和server_name 的注释
vim /etc/opt/rh/rh-nginx116/nginx/conf.d/zabbix.conf
server {
listen 80;
server_name zabbix.jld.com;
….
}
14. 修改zabbix的php配置文件
vim /etc/opt/rh/rh-php72/php-fpm.d/zabbix.conf
#修改时区 (前面的封号是注释,去掉)
php_value[date.timezone] = Asia/Shanghai
#监听nginx
listen.acl_users = apache,nginx
15. 启动zabbix相关服务器
systemctl restart zabbix-server zabbix-agent rh-nginx116-nginx rh-php72-php-fpmsystemctl enable zabbix-server zabbix-agent rh-nginx116-nginx rh-php72-php-fpm
16. 本地hosts解析
192.168.203.138 zabbix.jld.com
17.登录web
默认的用户名是“Admin”,密码“zabbix”
zabbix配置中文界面
usee settings —>user —> Language —> chinese —> update
监控
自定义监控项
自定义监控项
1.监控系统的登录状态,如果登录的xshell超过2个用户,则触发报警。
uptime|awk ‘{print $4}’
2.在zabbix-agent端上自定义监控项,使用UserParameter
vim /etc/zabbix/zabbix_agent.conf
#名称,shell
UserParameter=login.number,uptime|awk ‘{print $4}’
3.重启zabbix-agent
systemctl restart zabbix-agent
4.检查zabbix-agent端上自定义监控项是否存在<br /> [root@web01 ~]# zabbix_agentd -p<br /> login.number [t|1]<br /> <br /> 5.在zabbix-server端上获取zabbix-agent端上的自定义监控项的值,zabbix_get<br /> # zabbix_get -s 192.168.203.129 -k login.number<br /> 2<br /> <br /> 6.在web界面添加监控项
创建触发器
自定义值映射


监控tcp的连接数
[root@web01 ~]# netstat -ant | grep -iw listentcp 0 0 127.0.0.1:9000 0.0.0.0:* LISTENtcp 0 0 0.0.0.0:111 0.0.0.0:* LISTENtcp 0 0 0.0.0.0:80 0.0.0.0:* LISTENtcp 0 0 0.0.0.0:22 0.0.0.0:* LISTENtcp 0 0 127.0.0.1:25 0.0.0.0:* LISTENtcp 0 0 0.0.0.0:10050 0.0.0.0:* LISTENtcp6 0 0 :::111 :::* LISTENtcp6 0 0 :::22 :::* LISTENtcp6 0 0 ::1:25 :::* LISTENtcp6 0 0 :::10050 :::* LISTEN[root@web01 ~]# netstat -ant | grep -iwc listen10[root@web01 zabbix_agentd.d]# systemctl restart zabbix-agent.service[root@web01 zabbix_agentd.d]# cat test.conf#UserParameter=tcp_listen,netstat -ant | grep -iwc listen#传参的方式UserParameter=tcp[*],netstat -ant | grep -iwc $1[root@zabbix ~]# zabbix_get -s 192.168.203.129 -k tcp[listen]10
监控内存
定义监控项
[root@web01 zabbix_agentd.d]# cat mem.conf
UserParameter=mem.ava,free -m| awk ‘/^Mem/ {print $NF/$2*100}’
查看指标
[root@web01 zabbix_agentd.d]# zabbix_agentd -p
获取指标
[root@zabbix ~]# zabbix_get -s 192.168.203.129 -k mem.ava
72.7323
添加监控项
添加触发器










