自动化-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的主要内容,如果未能解决你的问题,请参考以下文章

zabbix 3.2.2自动安装脚本 (For Centos6)

基于ansible的zabbix源代码安装

postman 自动生成 curl 代码片段

postman 自动生成 curl 代码片段

zabbix/自动发现规则

使用 zabbix 自动发现监控 MySQL