【运维知识进阶篇】Zabbix5.0稳定版详解10(Zabbix自动注册+Ansible自动部署,实现一条命令监控任意主机)

简介: 【运维知识进阶篇】Zabbix5.0稳定版详解10(Zabbix自动注册+Ansible自动部署,实现一条命令监控任意主机)

当我们的Zabbix自动注册+Ansible自动部署在一起时,会碰出什么样的火花,答案就是可以实现执行ansible的一条命令,监控任意一台或多台主机。

一、配置好自动注册规则

二、编写Ansible playbook

1、编写playbook

1. [root@Ansible zabbix]# cat zabbix.yaml 
2. - hosts: web03
3.   vars:
4.  - SERVER_IP: 172.16.1.71
5.   tasks:
6.  - name: Install Zabbix-Agent
7.       yum:
8.         name: https://mirrors.aliyun.com/zabbix/zabbix/5.0/rhel/7/x86_64/zabbix-agent-5.0.34-1.el7.x86_64.rpm
9.         state: present
10.  - name: Install centos-release-scl and Agent
11.       yum:
12.         name: centos-release-scl
13.         state: present
14.  - name: Install Agent
15.       yum:
16.         name: zabbix-agent
17.         state: present
18.  - name: Config Zabbix-Agent
19.       template:
20.         src: zabbix_agentd.conf.j2
21.         dest: /etc/zabbix/zabbix_agentd.conf
22.       notify: Restart Zabbix Agent
23.  - name: Scp Zabbix Agent Configure
24. copy:
25.         src: ./zabbix_agentd.d
26.         dest: /etc/zabbix/
27.  - name: Start Zabbix Agent
28.       systemd:
29.         name: zabbix-agent
30.         state: started
31.         enabled: yes
32. 
33.   handlers:
34.  - name: Restart Zabbix Agent
35.       systemd:
36.         name: zabbix-agent
37.         state: restarted

2、编写主机清单

1. [root@Ansible zabbix]# cat hosts 
2. [web_group]
3. web03 ansible_ssh_host=172.16.1.9

3、编写zabbix客户端配置文件,方便进行推送

1. [root@Ansible zabbix]# grep -v '^$\|^#' zabbix_agentd.conf.j2
2. PidFile=/var/run/zabbix/zabbix_agentd.pid
3. LogFile=/var/log/zabbix/zabbix_agentd.log
4. LogFileSize=0
5. Server={{ SERVER_IP }}
6. ServerActive={{ SERVER_IP }}
7. Hostname={{ ansible_hostname }}
8. Include=/etc/zabbix/zabbix_agentd.d/*.conf

4、如果需要自定义监控项也可以放到zabbix_agentd.d目录,跟配置文件一起推送过去,最终目录结构如下

1. [root@Ansible zabbix]# ll
2. total 24
3. -rw-r--r-- 1 root root    46 Jul  2 17:37 hosts
4. -rw-r--r-- 1 root root 16012 Jul  8 11:51 zabbix_agentd.conf.j2
5. drwxr-xr-x 2 root root     6 Jul  2 17:13 zabbix_agentd.d
6. -rw-r--r-- 1 root root   947 Jul  8 11:45 zabbix.yaml

三、运行Ansible,查看监控效果

如果主机多的话就用脚本做免密钥

1. [root@Ansible ~]# ssh-copy-id -i ~/.ssh/id_rsa.pub root@10.0.0.9
2. 
3. [root@Ansible zabbix]# ansible-playbook -i hosts zabbix.yaml

执行后发现动作日志以及执行了自动注册的动作

也触发了邮箱

 

主机列表成功添加了主机

也会自动关联我们设定的模板,数据也可以采集到,大功告成!


我是koten,10年运维经验,持续分享运维干货,感谢大家的阅读和关注!

目录
相关文章
|
2月前
|
运维 网络协议 Linux
【专栏】 20 个 Linux 命令,运维工程师工作时最常用的
【4月更文挑战第28天】本文介绍了运维工程师常用的20个Linux命令,包括`ls`、`cd`、`pwd`、`mkdir`、`rm`、`cp`、`mv`、`cat`、`more`、`less`、`head`、`tail`、`grep`、`find`、`chmod`、`chown`、`chgrp`、`ps`、`top`和`ifconfig`,帮助提升工作效率。此外,还提到了其他常用的命令如`df`、`free`、`tar`、`ssh`、`scp`、`ping`、`netstat`、`iptables`、`systemctl`、`hostname`等,建议运维人员掌握以应对各种运维场景。
|
18天前
|
监控 数据库 Docker
Zabbix监控神通数据库教程
**摘要:** 本文介绍了如何使用Docker安装和配置神舟通用数据库,并利用Zabbix进行监控。首先,通过Docker安装数据库镜像,启动容器并映射端口。接着,使用默认凭证连接数据库并验证安装。然后,将数据库的Python模块和库文件复制到主机,并安装Python3.5及相应模块,创建外部检查脚本以实现Zabbix的监控功能。示例展示了查询数据库版本的监控指标配置。最后,提到了监控结果的界面展示,并邀请读者探索更多Zabbix监控技巧。
20 0
Zabbix监控神通数据库教程
|
4天前
|
监控 关系型数据库 应用服务中间件
Linux zabbix监控 软件的安装
Linux zabbix监控 软件的安装
|
1月前
|
运维 Linux Shell
运维:Linux服务器崩了怎么办,快来看看这份”急救命令指南“吧!
当服务器出现问题,如崩溃、内存耗尽或CPU使用率过高时,运维工程师需要保持冷静,并通过一系列Shell命令来诊断和解决。首先,检查是否有异常SSH登录活动,查看`/etc/passwd`和`.bash_history`文件,以及用户最近的登录信息。接着,监控网络连接和端口,使用`netstat`和`lsof`命令找出资源占用高的进程,并查看进程启动时间和详细信息。同时,排查可能的恶意文件,检查定时任务和服务配置以确保没有异常启动项。最后,分析系统日志,如`/var/log`目录下的各种日志文件,找出潜在问题。通过这些步骤,可以有效定位和解决服务器故障。
|
2月前
|
消息中间件 运维 Linux
运维最全Linux 命令大全之scp命令_linux scp 指令(1),2024年最新从消息中间件看分布式系统的多种套路
运维最全Linux 命令大全之scp命令_linux scp 指令(1),2024年最新从消息中间件看分布式系统的多种套路
|
2月前
|
运维 关系型数据库 MySQL
day03-Linux运维-Xshell优化和Linux系统命令入门(2)
day03-Linux运维-Xshell优化和Linux系统命令入门(2)
day03-Linux运维-Xshell优化和Linux系统命令入门(2)
|
2月前
|
运维 Linux Shell
day03-Linux运维-Xshell优化和Linux系统命令入门(1)
day03-Linux运维-Xshell优化和Linux系统命令入门(1)
day03-Linux运维-Xshell优化和Linux系统命令入门(1)
|
2月前
|
运维 Ubuntu 安全
运维最全linux 命令行操作串口_linux串口命令(2),2024年最新Linux运维源码的Binder权限是如何控制
运维最全linux 命令行操作串口_linux串口命令(2),2024年最新Linux运维源码的Binder权限是如何控制
运维最全linux 命令行操作串口_linux串口命令(2),2024年最新Linux运维源码的Binder权限是如何控制
|
2月前
|
运维 Linux Perl
运维最全linux 命令行操作串口_linux串口命令(1),21年Linux运维面经分享
运维最全linux 命令行操作串口_linux串口命令(1),21年Linux运维面经分享
运维最全linux 命令行操作串口_linux串口命令(1),21年Linux运维面经分享
|
2月前
|
运维 监控 安全
【专栏】11 个 Linux 网络命令学习和熟练运用这些命令是提升网络管理能力的基础
【4月更文挑战第28天】本文介绍了11个必备的Linux网络命令,包括ifconfig、ip、ping、traceroute、netstat、tcpdump、ss、telnet、ftp、ssh和nmap,这些命令在网络配置、故障排查和性能监控中发挥关键作用。通过实例分析,强调了它们在实际工作中的综合应用,帮助运维工程师提升效率和应对网络挑战。学习和熟练运用这些命令是提升网络管理能力的基础。

推荐镜像

更多