恒美微站 Logo 恒美微站
  • 首页
  • 关于我们
  • 建站服务
  • 主题模板
  • 案例展示
  • 资讯中心
  • 联系我们

ansible-playbook部署zabbix

  • 首页
  • 资讯中心
  • /
  • ansible-playbook部署zabbix

相关资讯

Coze云设备赋能AI Agent:突破自动化最后一公里的实战指南 2026/8/21 9:15:15
工业EMS系统在防爆环境下的曲块转运自动化方案设计与实施 2026/8/21 9:15:15
2026年Java大厂面试备战指南与核心技术解析 2026/8/21 9:10:15

最新资讯

AI产品经理实战指南:从RAG、Agent到LangChain的技术落地
AI Agent开发实战:从核心概念到项目落地的完整指南
2026年AI Agent实战开发:从零搭建智能体,掌握工具调用与记忆管理
Windows系统美化工具MacdowsOS 1.30:从安装到卸载的完整实践指南
DeepSeek Harness:多智能体系统四大核心模块设计解析
从对话到表格:怎么把平板电脑上腾讯ima知识库的表格导出来?“AI导出鸭”的工程化解法

今日推荐

OpenCode AI编程助手:从核心原理到本地部署的完整实践指南
基于SpringBoot与Vue的企业资产与采购管理系统设计与实现(程序+文档+讲解)
Linux命令-uucico(UUCP传输程序)

本周热门

【文章复现】非线性值迭代自适应动态规划(ADP):离散时间非线性系统的策略迭代自适应动态规划算法研究附Matlab代码
【双层规划,节点出清价,绿证交易,CVaR方法】两级电力市场环境下计及风险的省间交易商最优购电模型附Matlab代码
隐式mpc+自适应mpc+时变mpc,线性时变模型预测控制附Simulink仿真

本月精选

如何用DamaiHelper实现演唱会门票的智能自动化抢购:完整技术解决方案指南
第4篇:59 倍性能差距的索引瓶颈定位——一次教科书级的全表扫描调优
终极歌词批量下载神器:5分钟解决离线音乐库歌词同步难题

ansible-playbook部署zabbix

发布时间:2026/8/21 9:15:15
ansible-playbook部署zabbix 变量文件的基础使用文章目录变量文件的基础使用变量文件的基础使用目录创建用户管理 Playbook变量文件的加载位置使用 Ansible Vault 加密变量加密变量文件执行加密的 Playbook查看与解密组织变量主机变量与组变量目录结构组变量示例实战使用 Playbook 部署 Zabbix 监控系统环境说明安装 Ansible MySQL Collection完整 Playbookzabbix.yml注意事项变量文件的基础使用目录1. 变量文件的基础使用1.1 创建用户管理 Playbook1.2 变量文件的加载位置2. 使用 Ansible Vault 加密变量2.1 加密变量文件2.2 执行加密的 Playbook2.3 查看与解密3. 组织变量主机变量与组变量3.1 目录结构3.2 组变量示例4. 实战使用 Playbook 部署 Zabbix 监控系统4.1 环境说明4.2 安装 Ansible MySQL Collection4.3 完整 Playbookzabbix.yml4.4 注意事项创建用户管理 Playbook假设我们需要为一组 Web 服务器批量创建用户可以将用户列表独立存放在变量文件中便于维护。Playbook 文件user.ymlvim user.yml----hosts:webserversgather_facts:notasks:-name:Add the usersansible.builtin.user:name:{{ item.user }}password:{{ item.pass | password_hash(sha512) }}state:presentloop:{{ userlist }}变量文件userlist.ymlvim userlist.yml---userlist:-{user:user1,pass:pass1}-{user:user2,pass:pass2}-{user:user3,pass:pass3}执行 Playbook假设 webservers 组中只包含 node1ansible-playbook user.yml变量文件的加载位置默认情况下Ansible 会在 Playbook 所在目录寻找变量文件需通过 vars_files 或 include_vars 加载。若未显式指定路径则需将变量文件放在对应的 host_vars 或 group_vars 目录下见下文。使用 Ansible Vault 加密变量mkdirhosts_varscdhosts_varsmkdirnode1cdnode1cd..cd..cpuserlist.yml ./host_vars/node1/vault加密变量文件为了防止密码等敏感信息泄露可以使用 ansible-vault 对变量文件进行加密cdhostansible-vault encrypt vault加密后文件内容变为密文只有输入正确的 Vault 密码才能查看或使用。执行加密的 Playbook执行时需要提供 Vault 密码ansible-playbook user.yml --ask-vault-pass系统将提示输入密码验证通过后 Playbook 正常运行。#文件加密ansible-vault encrypt userlist.yml查看与解密查看加密文件内容需密码sudoansible-vault view userlist.yml输入密码即可查看文件内容执行方法ansible-playbook user.yml --ask-vault-pass解密文件ansible-vault decrypt userlist.yml组织变量主机变量与组变量目录结构为了更规范地管理不同主机或组的差异化变量推荐使用 host_vars 和 group_vars 目录ansible_project/ ├── group_vars/ │ └── webservers/ │ └── vars# 组变量文件├── host_vars/ │ └── node1/ │ └── vault# 主机变量文件可加密├── user.yml └── userlist.ymlmkdirgroup_varscdgroup_varsmkdirwebserverscdwebservers组变量示例在 group_vars/webservers/vars 中定义该组所有主机共用的变量vimvars --- http_port:8080ansible-playbook apache.yml使用时Playbook 可直接引用 {{ http_port }}。实战使用 Playbook 部署 Zabbix 监控系统环境说明目标主机zabbix-server组或主机操作系统RHEL 9 / Rocky Linux 9如需 RHEL 7 可调整仓库 URL数据库MySQL使用 MariaDB安装 Ansible MySQL CollectionPlaybook 中使用了 mysql_db 和 mysql_user 模块需要先安装对应 Collectionansible-galaxy collectioninstallansible.mysql完整 Playbookzabbix.yml----hosts:zabbix-servertasks:# 1. 添加 Zabbix 官方仓库Rocky 9 版本-name:add zabbix repoansible.builtin.yum:name:https://repo.zabbix.com/zabbix/6.0/rhel/9/x86_64/zabbix-release-latest-6.0.el9.noarch.rpmstate:present# 2. 安装 Zabbix 服务端、Web、SQL脚本、SELinux策略及Agent-name:install zabbix-serveransible.builtin.yum:name:-zabbix-server-mysql-zabbix-web-mysql-zabbix-sql-scripts-zabbix-selinux-policy-zabbix-agentstate:present# 3. 安装 MySQL此处使用 MariaDB-name:install mysql-serveransible.builtin.yum:name:-mariadb-server-python3-PyMySQL# Python 连接 MySQL 的驱动state:present# 4. 启动并启用 MariaDB 服务-name:enable service mysqlansible.builtin.service:name:mariadbstate:startedenabled:yes# 5. 创建 Zabbix 数据库指定字符集-name:init zabbix databasemysql_db:name:zabbixstate:presentencoding:utf8mb4collation:utf8mb4_binvars:ansible_python_interpreter:/usr/bin/python3# 6. 创建 Zabbix 数据库用户并授权-name:create zabbix usermysql_user:name:zabbixstate:presenthost:localhostpassword:zabbixpriv:zabbix.*:ALLvars:ansible_python_interpreter:/usr/bin/python3# 7. 临时开启 log_bin_trust_function_creators导入数据需要-name:set log_bin_trust_function_creators to 1mysql_variables:variable:log_bin_trust_function_creatorsvalue:1vars:ansible_python_interpreter:/usr/bin/python3# 8. 导入 Zabbix 初始数据库结构使用 zcat 解压并导入-name:import zabbix sql scriptsansible.builtin.shell:|zcat /usr/share/zabbix-sql-scripts/mysql/server.sql.gz | mysql --default-character-setutf8mb4 -uzabbix -pzabbix zabbix touch /etc/zabbix/.init_db_sql.lockargs:creates:/etc/zabbix/.init_db_sql.lockvars:ansible_python_interpreter:/usr/bin/python3# 9. 导入完成后关闭 log_bin_trust_function_creators-name:set log_bin_trust_function_creators to 0mysql_variables:variable:log_bin_trust_function_creatorsvalue:0vars:ansible_python_interpreter:/usr/bin/python3ansible-playbook zabbix.yml注意事项Python 解释器路径使用 mysql_* 模块时需要明确指定 ansible_python_interpreter 为 /usr/bin/python3否则可能报错。幂等性通过 creates 参数判断锁文件是否存在避免重复导入 SQL 脚本。密码安全生产环境应将数据库密码加密存储Vault并避免在 Playbook 中明文书写。操作系统版本请根据目标系统的发行版选择合适的 Zabbix 仓库 URLRHEL 7/8/9。

关于恒美微站

恒美微站专注于为个体商户、工作室提供极简自助建站服务,让每个人都能轻松拥有专业网站。

快速链接

  • 关于我们
  • 建站服务
  • 主题模板
  • 案例展示
  • 资讯中心

服务项目

  • 可视化建站
  • 拖拽编辑
  • 主题定制
  • SEO 优化
  • 网站托管

联系方式

  • 📍 地址:北京市朝阳区建国路 88 号
  • 📞 电话:400-888-8888
  • ✉️ 邮箱:info@hmyw.cn
  • 🕐 时间:周一至周日 9:00-18:00

© 2024 恒美微站 hmyw.cn 版权所有 | 京 ICP 备 12345678 号