Architecture 分布在多台机器上的基础结构的最佳漫游设置

Architecture 分布在多台机器上的基础结构的最佳漫游设置,architecture,vagrant,development-environment,infrastructure,Architecture,Vagrant,Development Environment,Infrastructure,我想使用Vagrant和Ansible来反映本地的生产环境和基础设施。我已经设置了一个流浪者文件以及我正在处理的每个项目/网站(App1、App2等)。为了便于维护和清晰,我想使用one服务器收集statsd、日志和其他指标+拉取备份 +-----------+ +-----------+ | App1 | | Metrics | | +-+--+ Backups | +-----------+ | +-----------+

我想使用Vagrant和Ansible来反映本地的生产环境和基础设施。我已经设置了一个流浪者文件以及我正在处理的每个项目/网站(App1、App2等)。为了便于维护和清晰,我想使用one服务器收集statsd、日志和其他指标+拉取备份

+-----------+    +-----------+
|    App1   |    |  Metrics  |
|           +-+--+  Backups  |
+-----------+ |  +-----------+
              |               
+-----------+ |               
|    App2   | |               
|           +-+               
+-----------+   
由于Metrics/Backup服务器并不是网站项目的一部分,我认为最好的方法是引入一个专用的“备份项目”,它有自己的Vagrant文件。 现在,关于此设置的一些问题/顾虑

  • 假设我正在开发App1。为了开始测试,我在App1和Metric服务器上都安装了
    Vagrant up
    。有没有更好的方法立即启动它们
  • 一般来说,将vagrant用于与基础架构相关的服务器(如备份)是一个好主意吗?备份对于网站的正常运行来说不是必需的
  • 我可以通过私人网络链接流浪者的多个“实例”吗

  • 我假设您将有一个单独的文件来管理所有3个环境(您可以阅读更多)

  • 如果在单个vagrant中管理所有3个环境,默认情况下,文件
    vagrant up
    将启动所有3个环境。您可以定义一个
    autostart
    属性来定义默认情况下应该启动哪个属性,以便默认情况下只能启动2:

    config.vm.define "App1"
    config.vm.define "Backup"
    config.vm.define "App2", autostart: false
    
  • 如果您管理不同的项目,则需要在每个项目上运行
    vagrant up
    ,以启动相应的vm

  • 这将取决于你的要求。如果您希望尽可能地复制prod,那么应该管理此环境

  • 是,您可以通过IP或主机名进行通信(请参阅)