Ansible批量部署zabbix-agent(含zabbix-agent的yum源,zabbix自动发现和添加的界面操作)

简介: Ansible批量部署zabbix-agent(含zabbix-agent的yum源,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

3e6851307ab54590b9ec5159878e3825.png

注:配置文件中,上面三个位置需要修改

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 root@192.168.123.131
ssh-copy-id root@192.168.123.137
ssh-copy-id root@192.168.123.138

以上三台密钥设置成功

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界面设置自动发现主机,并且添加至主机组(附大量图片)

创建发现规则

96a12e7ce0304c57b044e010b7903fd6.png

7e6bafcecf5046eda01ed5acd255d6af.png最后点击add,我这个创建好了,所以是update按钮

创建动作

6dc0e681a59e494bbded20b73be2ddd4.png

57da283d580c4d77a2de9c8c7467cd50.png

注: 还需要点击operations 点击操作哦,动作和操作同时完成才ok

0e3717a75b7d413fa8cabf5e63299467.png

以上完成了,点击add,或者update即可

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

e8ba06b3d8c940409adfc892f734fb03.png

怎么看自己添加的主机呢?最后一张图了,坚持就是胜利

3ce5961ae0ef419a8b46ee27f10cc661.png

完结,撒花~~~~

目录
相关文章
|
3月前
|
存储 弹性计算 监控
快速部署 Zabbix 社区版
Zabbix 是一款监控网络的众多参数以及服务器、虚拟机、应用程序、服务、数据库、网站、云等的健康和完整性的软件。Zabbix 使用灵活的通知机制,允许用户为几乎任何事件配置基于电子邮件的告警,以实现对服务器问题做出快速反应。Zabbix 基于存储的数据提供出色的报告和数据可视化功能。这使得 Zabbix 成为容量规划的理想选择。本文介绍如何通过计算巢快速部署 Zabbix 社区版。
快速部署 Zabbix 社区版
|
2月前
|
监控 前端开发 Linux
centos7系统安装部署zabbix5.0
【9月更文挑战第23天】在CentOS 7系统上部署Zabbix 5.0的步骤包括:安装MariaDB数据库及必要软件包,配置Zabbix仓库,设置数据库并导入Zabbix数据库架构,配置Zabbix服务器与前端参数,启动相关服务,并通过浏览器访问Web界面完成安装向导。
141 0
|
2月前
|
监控 Linux
Zabbix 5.0 LTS的agent服务部署实战篇
文章介绍了如何在CentOS 7.6操作系统上部署Zabbix 5.0 LTS版本的agent服务,包括配置软件源、安装agent、修改配置文件、启动服务,并在Zabbix web界面添加监控。
135 4
Zabbix 5.0 LTS的agent服务部署实战篇
|
2月前
|
监控 关系型数据库 MySQL
zabbix agent集成percona监控MySQL的插件实战案例
这篇文章是关于如何使用Percona监控插件集成Zabbix agent来监控MySQL的实战案例。
57 2
zabbix agent集成percona监控MySQL的插件实战案例
|
2月前
|
监控 前端开发 数据库
Zabbix 5.0 LTS部署实战篇
这篇文章是关于Zabbix 5.0 LTS部署的详细教程,包括版本选择、服务器平台选择、安装步骤、数据库配置、前端安装以及修改时区和设置开机自启等内容。
213 1
Zabbix 5.0 LTS部署实战篇
|
3月前
|
人工智能 搜索推荐 API
AI智能体研发之路-工程篇(二):Dify智能体开发平台一键部署
AI智能体研发之路-工程篇(二):Dify智能体开发平台一键部署
503 2
|
3月前
|
人工智能 API 异构计算
AI智能体研发之路-工程篇(四):大模型推理服务框架Xinference一键部署
AI智能体研发之路-工程篇(四):大模型推理服务框架Xinference一键部署
294 2
|
3月前
|
人工智能 网络协议 Docker
AI智能体研发之路-工程篇(三):大模型推理服务框架Ollama一键部署
AI智能体研发之路-工程篇(三):大模型推理服务框架Ollama一键部署
203 2
|
3月前
|
人工智能 物联网 异构计算
AI智能体研发之路-模型篇(一):大模型训练框架LLaMA-Factory在国内网络环境下的安装、部署及使用
AI智能体研发之路-模型篇(一):大模型训练框架LLaMA-Factory在国内网络环境下的安装、部署及使用
224 0
|
3月前
|
人工智能 前端开发 API
AI智能体研发之路-工程篇(五):大模型推理服务框架LocalAI一键部署
AI智能体研发之路-工程篇(五):大模型推理服务框架LocalAI一键部署
143 0

推荐镜像

更多