【发布时间】:2022-05-09 04:24:16
【问题描述】:
我正在创建一个包含 monitor_servers 和 monitor_boxes 的监控环境,当然还有 Ansible 控制器。为了测试角色等,我创建了一个新的“项目”,在组织开发方面效果很好。但是现在,当大多数东西(希望)正常工作时,如果可能的话,我希望从一个文件状态让整个基础架构更易于管理。
我时不时地在谷歌上搜索这个,IIRC 我仍然没有找到一个解决方案来拥有一个主 Vagrantfile,然后可以调用其他 Vagrantfiles 来启动所需的盒子。
现在有一个 Vagrantfile 用于创建 Ansible Controller、3 个 ubuntu 节点和 3 个 Windows 节点,另一个用于为 Grafana、Loki 和 Prometheus 启动三个 Ubuntu VM。然后需要一个警报管理器,可能需要 Influxdb 等,并且将所有这些机器保存在一个 vagrant 文件中对我来说效果不佳,因为我想看看有以下情况: Vagrantfile (master) 来创建 Ansible Controller 并从该文件中,我可以调用诸如 \"monitoring_stack\"、\"monitored_boxes\"、\"common_purpose_boxes\" 等文件。
Master
├── Vagrantfile.ansible.controller
└── monitoring
├── monitored_boxes
│ └── Vagrantfile.monitored
├── monitoring_servers
│ └── Vagrantfile.monitoring
└── whatever_boxes
└── Vagrantfile.whatever
像这样的东西将是一个理想的管理设置。
如果那不可行也不容易实现,您通常会采取其他方法来解决类似的设置吗?
也许只是忘记整个 Vagrant 并全力以赴使用 Pulumi 或 Terraform。再说一次,这可能也不能解决这个问题,因为我想为其他团队成员提供一个游乐场,也可以测试和玩新玩具。
谢谢大家的任何提示:)
标签: ansible vagrant monitoring provisioning