Ansible批量部署zabbix-agent(含zabbix-agent的yum源,zabbix自动发现和添加的界面操作)_ansible 安装zabbix-agent-程序员宅基地

技术标签: 运维  linux  服务器  bash  zabbix的那些事儿  

1 在zabbix-server机器上安装ansible

yum -y install ansible

2 将准备安装zabbix-agent的服务器写入ansible主机清单

vim /etc/ansible/hosts

[zabbix]
192.168.123.131  hostname=node1
192.168.123.137  hostname=node2
192.168.123.138  hostname=node3

注:其中hostname 是后面template模块会用到的hostname变量

3 创建部署所需要的role—zabbix-agent

cd /etc/ansible/roles
mkdir -pv zabbix-agent/{
    files,templates,tasks}

注: 其中zabbix-agent下的三个文件夹都很重要,files下可以放zabbix-agent安装包或者yum源,templates放含有变量hostname的zabbix-agent配置文件

3.1 在files目录下,配置yum源(这个yum源直接用来配置zabbix-server也完全没问题的)

cd /etc/ansible/roles/zabbix-agent/files

[root@zabbix-server files]# vim zabbix.repo

[zabbix]
name=zabbix
baseurl=https://mirrors.aliyun.com/zabbix/zabbix/5.0/rhel/7/x86_64/
gpgcheck=0
enabled=1

[zabbix2]
name=zabbix frontend
baseurl=https://mirrors.aliyun.com/zabbix/zabbix/5.0/rhel/7/x86_64/frontend/
gpgcheck=0
enabled=1

3.2 在templates目录下,cp配置文件,设置变量。

server和server active都设置为zabbix-server的ip,hostname使用变量。cp的配置文件一定是j2结尾

cp /etc/zabbix/zabbix_agentd.conf  /etc/ansible/roles/zabbix-agent/templates/zabbix_agentd.conf.j2

在这里插入图片描述
注:配置文件中,上面三个位置需要修改

3.3 在tasks目录下,创建main.yml 文件

vim /etc/ansible/roles/zabbix-agent/tasks/main.yml

- name: get the zabbix-agent
  copy:
    src: zabbix.repo
    dest: /etc/yum.repos.d/
- name: install the zabbix-agent
  yum:
    name: zabbix-agent
    state: present
- name: copy the zabbix_agentd.conf
  template:
    src: zabbix_agentd.conf.j2
    dest: /etc/zabbix/zabbix_agentd.conf
- name: start zabbix-agent
  service:
    name: zabbix-agent
    state: started
    enabled: true

注: zabbix-agent目录下可以直接调用,所以无需写明templates和files的绝对路径

4 给其他节点服务器做免密

ssh-keygen 

然后按三次回车键,会显示密钥 创建成功,如下所示

Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:SUHLRNME2qo3Z2ly2UUA6xL/sWSMffpKSqvdPHneaJI root@node1
The key’s randomart image is:
±–[RSA 2048]----+
| oO=o |
| = =… |
| o * . |
| * = . |
| o S * o |
| . . B * |
| . + O *o |
| . X *E.oo |
| …+ +B+ . |
±—[SHA256]-----+

ssh-copy-id [email protected]
ssh-copy-id [email protected]
ssh-copy-id [email protected]

以上三台密钥设置成功

5 配置一个playbook,我直接在root下创建的

vim zabbix-agent.yml
---
- name: zabbix_install
  hosts: zabbix
  roles:
  - zabbix-agent

6 执行剧本,ansible部署zabbix-agent完成

ansible-playbook zabbix-agent.yml

执行完成

PLAY [zabbix_install]


TASK [Gathering Facts]
******************************************************************************* ok: [192.168.123.138] ok: [192.168.123.137] ok: [192.168.123.131]

TASK [get the zabbix-agent]
************************************************************************** ok: [192.168.123.137] ok: [192.168.123.138] ok: [192.168.123.131]

TASK [install the zabbix-agent]
********************************************************************** ok: [192.168.123.138] ok: [192.168.123.131] ok: [192.168.123.137]

TASK [zabbix-agent : copy the zabbix_agentd.conf]
**************************************************** ok: [192.168.123.137] ok: [192.168.123.138] ok: [192.168.123.131]

TASK [start zabbix-agent]
**************************************************************************** changed: [192.168.123.137] changed: [192.168.123.138] changed:
[192.168.123.131]

PLAY RECAP


192.168.123.131 : ok=5 changed=1 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0
192.168.123.137 : ok=5 changed=1 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0
192.168.123.138 : ok=5 changed=1 unreachable=0 failed=0 skipped=0 rescued=0 ignored=0

7 zabbix-server界面设置自动发现主机,并且添加至主机组(附大量图片)

创建发现规则
请添加图片描述
请添加图片描述
最后点击add,我这个创建好了,所以是update按钮
创建动作
请添加图片描述

请添加图片描述
注: 还需要点击operations 点击操作哦,动作和操作同时完成才ok
请添加图片描述
以上完成了,点击add,或者update即可

8 zabbix-server中查看已发现,和成功添加的主机

请添加图片描述
怎么看自己添加的主机呢?最后一张图了,坚持就是胜利
请添加图片描述
完结,撒花~~~~

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_67405599/article/details/125824230

智能推荐

HTK-W801使用LuatOS编程---点灯_海凌科w801开发板 luatos-程序员宅基地

文章浏览阅读6.9k次,点赞2次,收藏12次。W801上跑LuaOS, 两个点灯程序的比较_海凌科w801开发板 luatos

华为云弹性文件服务 SFS_在华为云中同一个弹性文件服务sfs的文件系统能给不同region挂载吗-程序员宅基地

文章浏览阅读1.1k次。挂载NFS文件系统到云服务器(Linux)参考链接:https://support.huaweicloud.com/qs-sfs/zh-cn_topic_0034428728.html弹性文件服务简介弹性文件服务(Scalable File Service,SFS)提供按需扩展的高性能文件存储(NAS),可为云上多个弹性云服务器(Elastic Cloud Server,ECS),容器(CCE&CCI)、裸金属服务器(BMS)提供共享访问。如图1所示。图1 访问弹性文件服务与传统的文件共_在华为云中同一个弹性文件服务sfs的文件系统能给不同region挂载吗

编译原理复习汇总_请构造一文法,使文法产生的语言是十进制正偶数集合,并规定偶数非0开头-程序员宅基地

文章浏览阅读509次,点赞2次,收藏6次。目录第 1 章 引论第 2 章 文法和语言2.1 句型分析和语法树2.2 文法设计第 3 章 词法分析第 4 章 自顶向下语法分析方法第 6 章 LR分析第 7 章 语法制导的语义计算第 8 章 静态语义分析和中间代码生成第 9 章 运行时存储组织第 10 章 代码优化和目标代码生成第 1 章 引论第 2 章 文法和语言2.1 句型分析和语法树令文法G[E]为:E->T | E+T | E-T T->F | T*F F->(E)|i证明 E+T*F 是它的一个句型,给出该句型的所_请构造一文法,使文法产生的语言是十进制正偶数集合,并规定偶数非0开头

Java 重定位 —— redirect:_redirect:/index-程序员宅基地

文章浏览阅读747次。return "redirect:/index": 不管前面的路径是什么,满足条件后会跳转到index比如8080/a/b/c/跳转后变成8080/index_redirect:/index

Python对象的身份比较_python 身份-程序员宅基地

文章浏览阅读971次。相较于值的比较,Python也支持身份的比较。身份比较运算符:运算符 说明 is 结果为True,运算符两端是同一个对象,如果是False,则为不同对象。 is not 结果为True,运算符两端不是同一个对象,结果为False,则为同一个对象。 什么是身份比较所谓身份比较,即判断两个或更多的不同名称的对象是否为同一个对象。>>> ..._python 身份

vue服务端渲染添加缓存的方法-程序员宅基地

文章浏览阅读241次。什么是服务器端渲染(SSR)?Vue.js 是构建客户端应用程序的框架。默认情况下,可以在浏览器中输出 Vue 组件,进行生成 DOM 和操作 DOM。然而,也可以将同一个组件渲染为服务器端的 HTML 字符串,将它们直接发送到浏览器,最后将这些静态标记"激活"为客户端上完全可交互的应用程序。服务器渲染的 Vue.js 应用程序也可以被认为是"同构"或"通用",因为应用程序的大部分代码都可..._vue 在服务器渲染中,下列哪项内容不能缓存

随便推点

java string json解析_Java从String开始解析JSON-程序员宅基地

文章浏览阅读286次。一、JSON 格式简析。{"person_num": 1,"person_info": [{"body_parts": {"nose": {"x": 96.34375,"y": 101.53125},"right_knee": {"x": 89.6875,"y": 314.53125},"location": {"width": 91.40377044677734,"height": 354.71..._java string json 解析

如何用安卓手机运行Python代码_安卓 python-程序员宅基地

文章浏览阅读7.2w次,点赞246次,收藏923次。1. 写在前面的话  天天都在PC端运行Python代码的我,今天突然灵光一现,想着是不是能够在移动端运行Python代码呢?如果能够实现的话,家里的废旧手机就有用武之地了。2. 安装环境2.1 安装APK  根据搜索和调研,需要安装以下三个APK,即QPython3、QPython、QPy3.6。打包下载链接为https://download.csdn.net/download/herosunly/16683910  安装后依次为下列三个APP(QPython 3S、QPython OS、QP_安卓 python

Vim|笔记整理(1)——Vim基本概述_简述vim概念及目标-程序员宅基地

文章浏览阅读580次。学习资源B站优质视频教程—TheCWVim教程网—北航小姐姐玩转Vim 从放弃到爱不释手—PegasusWangVim Tutorial—Youtube视频Vim中文手册基本操作思维导图概述学了vim几个月,也看了网上很多教程后,我有时会觉得我们总是喜欢处于舒适区,而对接触让我们一开始感觉别扭的新内容和新工具总是有所抗拒。我希望自己能够多去尝试新内容和新工具,因为我们技能的提升就..._简述vim概念及目标

Labels4Free: Unsupervised Segmentation using StyleGAN论文解读_label4free github-程序员宅基地

文章浏览阅读1k次,点赞2次,收藏2次。入选ICCV2021,官方page website,暂未开源paper还是很有创意的,只是pipeline搭建起来很繁琐,还有很大的改进空间。背景styleGAN等生成对抗网络可以生成逼真的图像,生成器的中间特征已经有了前景和背景的特征学习能力,但目前没有方法研究让GAN生成图像的同时,还生成前景目标的mask。本篇paper正是为了解决该问题。作者基于两种假设前景和背景是独立的,因此独立生成然后组合,也能生成逼真的图像。生成器的中间特征学习到了前背景特征分布,是可以利用起来,用于生成前景目标_label4free github

Linux C/C++串口读写_linux c++ 串口收发-程序员宅基地

文章浏览阅读1.6w次,点赞10次,收藏134次。无_linux c++ 串口收发

javascript前端XML格式正确性验证方法_js判断xml-程序员宅基地

文章浏览阅读3.5k次。https://www.2cto.com/kf/201203/124608.html function validateXML(xmlContent) { //errorCode 0是xml正确,1是xml错误,2是无法验证 var xmlDoc,errorMessage,errorCode = 0; ..._js判断xml

推荐文章

热门文章

相关标签