自动化-zabbix
Posted 赵SIR
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了自动化-zabbix相关的知识,希望对你有一定的参考价值。
1.zabbix主动化模式
需要自己创建模板
搜索到linux -然后点进去----full clone全部克隆-----修改个名字--- 然后点添加
然后搜索进入新建的模板 active-- 全部勾选--批量修改mass update--修改type改成zabbix agent active----update。
#如果要主动模式还需要克隆一个模板
####点这个模板-----full clone 完整克隆--添加 active-----然后搜索active---点进去-items--选中 mass update---点进去把类型改成active.
##继续搜索active---选择template os linux active -----linked templates --unlink and clear清空监控项---然后查找刚才创建的agent active---update
###修改配置文件[root@node2 zabbix_agentd.d]# vim /etc/zabbix/zabbix_agentd.conf
StartAgents=0
[root@node2 zabbix_agentd.d]# grep "^[a-Z]" /etc/zabbix/zabbix_agentd.conf PidFile=/var/run/zabbix/zabbix_agentd.pid LogFile=/var/log/zabbix/zabbix_agentd.log LogFileSize=0 StartAgents=0 ServerActive=192.168.1.105 HostnameItem=system.hostname Include=/etc/zabbix/zabbix_agentd.d/*.conf
######创建主机host## 需要注意的是 主机名得跟被监控机一样否则会出问题
创建主机node2---给个分组linux系统组----创建templates--搜索active---添加--
修改node2主机的discovery--把type改成zabbi agent active--update
[root@node1 ~]# zabbix_server -R config_cache_reload 可以刷新缓存 生产环境不建议
####网络自动发现
configuration -----------Discovery------启用---------Actions---选择event source里面的discovery---operations---选择type类型为link to templates ---选择active模板--add---update
[root@node2 zabbix_agentd.d]# vim /etc/zabbix/zabbix_agentd.conf
HostMetadata=web
Server=192.168.1.105
StartAgents=3
systemctl restart zabbix-agent.service
###过一会自动发现主机
主动注册过程
创建主机组-------创建 templates----Actions--添加选项--update--过一会会发现自动发现
#####低级自动发现使用mysql来做
创建mysql多实例,cp /etc/my.cnf /etc/my3307.conf
[mysqld]
datadir=/data/3307
socket=/data/3307/mysql.sock
# Disabling symbolic-links is recommended to prevent assorted security risks symbolic-links=0
port=3307
# Settings user and group are ignored when systemd is used. # If you need to run mysqld under a different user or group, # customize your systemd unit file for mariadb according to the # instructions in http://fedoraproject.org/wiki/Systemd
[mysqld_safe]
log-error=/data/3307//mariadb.log
pid-file=/data/3307/mariadb.pid
mysql_install_db --user=mysql --defaults-file=/etc/my3307.cnf 初始化
mysqld_safe --defaults-file=/etc/my3307.cnf &
[root@node2 zabbix_agentd.d]# vim discovery_mysql.sh
#!/bin/bash #mysql low-level discovery res=`netstat -lntp|grep mysqld|awk -F \'[: ]+\' \'{print $5}\'` port=($res) printf \'{\' printf \'"data":[\' for key in ${!port[@]} do if [[ "${#port[@]}" -gt 1 && "${key}" -ne "$((${#port[@]}-1))" ]];then printf \'{\' printf "\\"{#MYSQLPORT}\\":\\"${port[${key}]}\\"}," else [[ "${key}" -eq "((${#port[@]}-1))" ]] printf \'{\' printf "\\"{#MYSQLPORT}\\":\\"${port[${key}]}\\"}" fi done printf \']\' printf \'}\'
[root@node2 zabbix_agentd.d]# sh discovery_mysql.sh|python -m json.tool
[root@node2 zabbix_agentd.d]# vim discovery_mysql.conf
UserParameter=discovery_mysql,sh /etc/zabbix/zabbix_agentd.d/discovery_mysql.sh
[root@node2 zabbix_agentd.d]# systemctl restart zabbix-agent.service
[root@node2 zabbix_agentd.d]# chmod u+s `which netstat` zabbix默认没有权限 给加个权限
###根据现有hosts主机里点dicovery----create discovery rule--- 加入key值-----点创建---然后点item prototypes----create item prototype ---填写内容看下面第二张图-----点进去新创建好的---clone---然后修改内容看第4张图---一直创建5个记得点克隆--
[root@node2 zabbix_agentd.d]# vim userparameter_mysql.conf
UserParameter=mysql.status[*],echo "show global status where Variable_name=\'$2\';" | HOME=/var/lib/zabbix mysql -uroot -p123456 -h 127.0.0.1 -P $1 -N | awk \'{print $$2}\'
[root@node2 zabbix_agentd.d]# mysqladmin -h 127.0.0.1 -uroot password \'123456\' -P 3306
[root@node2 zabbix_agentd.d]# mysqladmin -h 127.0.0.1 -uroot password \'123456\' -P 3307
[root@node2 zabbix_agentd.d]# mysqladmin -h 127.0.0.1 -uroot password \'123456\' -P 3308
[root@node2 zabbix_agentd.d]# mysql -uroot -p123456 -h127.0.0.1 -P3308
MariaDB [(none)]> show GLOBAL VARIABLES like \'port\';
以上是关于自动化-zabbix的主要内容,如果未能解决你的问题,请参考以下文章