ansible批量部署zabbix客户端

✅ansible编写剧本步骤

  • 1️⃣创建roles目录结构
  • 2️⃣在group_vars/all/main.yml中定义变量列表
  • 3️⃣在tasks目录下编写tasks任务
  • 4️⃣在files目录下准备部署文件
  • 5️⃣在templates目录下创建j2模板文件
  • 6️⃣在handlers目录下编写handlers
  • 7️⃣在roles目录下编写主playbook
  • 8️⃣运行主playbook
  • 9️⃣检查验证

🌟ansible自动化安装zabbix客户端

  • 1️⃣创建roles目录结构
bash 复制代码
mkdir -p zabbix-agent/{files,handlers,tasks,templates}
  • 2️⃣在group_vars/all/main.yml中定义变量列表
  • 3️⃣在tasks目录下编写tasks任务
yaml 复制代码
- name: 1.配置zabbix源
  copy:
    src: zabbix.repo
    dest: /etc/yum.repos.d/
    backup: yes

- name: 2.安装zabbix客户端
  yum:
    name: zabbix-agent2
    state: present

- name: 3.分发配置文件
  copy:
    src: "{{ item.src }}"
    dest: "{{ item.dest }}"
    backup: yes
  loop:
    - {src: zabbix_agent2.conf,dest: /etc/zabbix/}
    - {src: sys.conf,dest: /etc/zabbix/zabbix_agent2.d/}
  notify:
    - restart_zabbix

- name: 4.启动zabbix
  systemd:
    name: zabbix-agent2
    enabled: yes
    state: started
  • 4️⃣在files目录下准备部署文件
  • zabbix.repo
bash 复制代码
[zabbix]
name=zabbix
baseurl=https://mirrors.aliyun.com/zabbix/zabbix/7.0/rhel/7/x86_64/
enabled=1
gpgcheck=0
  • zabbix_agent2.conf
bash 复制代码
PidFile=/run/zabbix/zabbix_agent2.pid
LogFile=/var/log/zabbix/zabbix_agent2.log
LogFileSize=0
Server=172.16.1.63
ServerActive=127.0.0.1
Hostname=Zabbix server
Include=/etc/zabbix/zabbix_agent2.d/*.conf
PluginSocket=/run/zabbix/agent.plugin.sock
ControlSocket=/run/zabbix/agent.sock
Include=/etc/zabbix/zabbix_agent2.d/plugins.d/*.conf
  • sys.conf
bash 复制代码
UserParameter=proc.zombie,top -bn1 | awk 'NR==2{print $(NF-1)}'
UserParameter=user.login.ip[*],lastlog -u root | awk 'NR==2{print $$3}'
  • 5️⃣在templates目录下创建j2模板文件
  • 6️⃣在handlers目录下编写handlers
yaml 复制代码
- name: restart_zabbix
  systemd:
    name: zabbix-agent2
    state: restarted
  • 7️⃣在roles目录下编写主playbook
yaml 复制代码
- hosts: all
  roles:
    - zabbix-agent
  • 8️⃣运行主playbook
bash 复制代码
ansible-playbook top.yml
  • 9️⃣检查验证
bash 复制代码
ansible lb -m shell -a 'zabbix_agent2 -t "system.hostname"'
相关推荐
用户2367829801688 分钟前
从 chmod 755 说起:Unix 文件权限到底是怎么算的?
linux
码云数智-大飞13 分钟前
本地部署大模型:隐私安全与多元优势一站式解读
运维·网络·人工智能
Strugglingler14 分钟前
【systemctl 学习总结】
linux·systemd·systemctl·journalctl·unit file
Harvy_没救了1 小时前
【网络部署】 Win11 + VMware CentOS8 + Nginx 文件共享服务 Wiki
运维·网络·nginx
春风有信1 小时前
【2026.05.01】Windows10安装Docker Desktop 4.71.0.0步骤及问题解决
运维·docker·容器
嵌入式×边缘AI:打怪升级日志2 小时前
100ASK-T113 Pro 开发板 Bootloader 完全开发指南
linux·ubuntu·bootloader
lzhdim2 小时前
SQL 入门 12:SQL 视图:创建、修改与可更新视图
java·大数据·服务器·数据库·sql
2401_873479402 小时前
断网时如何实时判断IP归属?嵌入本地离线库,保障风控不中断
运维·服务器·网络
守城小轩2 小时前
基于Chrome140的Yahoo自动化(关键词浏览)——需求分析&环境搭建(一)
运维·自动化·chrome devtools·浏览器自动化·指纹浏览器·浏览器开发
charlie1145141913 小时前
Linux 字符设备驱动:cdev、设备号与设备模型
linux·开发语言·驱动开发·c