Virtualhost 生产中的流浪汉

Virtualhost 生产中的流浪汉,virtualhost,vagrant,infrastructure,Virtualhost,Vagrant,Infrastructure,我一直在读有关流浪汉的书,我发现它对我的发展很有用。我目前正在管理一系列服务(邮件、web、LDAP、文件共享等),其中一项服务经常会失败,需要快速备份。是否有可能(并建议)使用流浪者用于这些目的 到目前为止,我已经像真正的机器一样安装了虚拟机 我还想知道Vagrant的另一个替代方案,它允许我设置一个简单的配置文件并放置一个虚拟机,例如,使用Zimbra,并快速拥有一个备用邮件服务器、启用RabbitMQ等。Vagrant应该更像是一个测试基础结构更改的临时环境。它应该是自动化基础架构更改的测

我一直在读有关流浪汉的书,我发现它对我的发展很有用。我目前正在管理一系列服务(邮件、web、LDAP、文件共享等),其中一项服务经常会失败,需要快速备份。是否有可能(并建议)使用流浪者用于这些目的

到目前为止,我已经像真正的机器一样安装了虚拟机


我还想知道Vagrant的另一个替代方案,它允许我设置一个简单的配置文件并放置一个虚拟机,例如,使用Zimbra,并快速拥有一个备用邮件服务器、启用RabbitMQ等。

Vagrant应该更像是一个测试基础结构更改的临时环境。它应该是自动化基础架构更改的测试平台

我们在我的公司使用它的方式如下:

  • 在Vagrant中为我们的托管服务器创建虚拟机
  • 为每个服务器创建傀儡定义
  • 为每个服务器创建测试
  • 通过puppet和AddCumber测试进行基础架构更改
  • 启动我们的服务器以测试故障
  • 修复bug、发布和/或返回步骤4
  • 基本上,当我们对我们的改变感到满意时,我们会将我们的木偶改变投入到制作中,使之成为现实

    我不建议使用vagrant来管理虚拟机以实现真正的生产。我会使用razor、virsh、OpenStack等其他虚拟机管理系统。

    Hashicorp刚刚发布,它是流浪汉的继任者。它旨在支持部署环境

    从他们的:

    奥托的主要特点是:
    • 自动开发环境:Otto检测您的应用程序 键入并构建专门为此定制的开发环境 应用程序,具有零或最小配置。如果你的申请取决于 在其他服务(如数据库)上,它将自动配置和 在开发环境中为您启动这些服务

    • 专为微服务构建:奥托了解依赖关系和版本控制 并且可以自动部署和配置应用程序以及所有 它对任何环境的依赖关系。应用程序只需要 告诉奥托它的直接依赖关系;依赖项的依赖项是 自动检测和配置

    • 部署:奥托知道如何部署应用程序以及如何开发应用程序 他们。无论您的应用程序是现代的微服务还是传统的 monolith或介于两者之间的东西,Otto可以将您的应用程序部署到任何位置 环境

    • Docker:Otto可以使用Docker下载和启动依赖项 用于简化微服务的开发。应用程序可以容器化 自动使部署更容易,而无需更改开发人员 工作流程

    • 生产硬化工具:奥托使用生产硬化工具 构建开发环境(), 启动服务器(),配置 服务(),等等。奥托建立在 为世界上最大的网站提供动力的工具。 Otto会自动安装和管理所有这些工具,因此您不会 必须这样做


    正如@andrerpena提到的,奥托是流浪汉的继任者

    发件人:

    Otto可以部署您的应用程序。多年来,Vagrant的用户一直希望找到一种将其Vagrant环境部署到生产环境的方法不幸的是,Vagrant文件没有包含足够的信息,无法使用行业最佳实践构建适当的生产环境。创建一个Appfile来编码这些知识,部署只需一个命令


    此页面表明Vagrant push命令用于部署到生产:


    “此外,Vagrant文件中可以有多个config.push.define声明来定义多个推送,例如,一个推送到暂存,一个推送到生产。”

    我也有同样的问题,并且一直在调查Vagrant推送的使用情况,从版本1.7开始,Vagrant能够部署或“推送”与文件位于同一目录中的应用程序代码发送到远程服务器(如FTP服务器)

    我正在考虑为开发人员在虚拟机中进行vagrant spin up,同时也为您提供将代码部署到生产环境的实时服务器的选项。

    • 根据我的经验,Vagrant主要用于开发环境
    • 例如,与Terraform相比,Vagrant配置和供应选项是有限的
    • 如果您在基于云的环境中工作,您可以使用Terraform进行基础设施配置
    • 如果您的环境是本地的,或者您的虚拟机将托管在数据中心上,那么您可以使用Ansible、chef或puppet进行配置管理和自动化

    基本上,您建议不要在生产环境中使用virtualbox Vagrant“应该”用于登台/开发只是一种意见。如果你能拿出证据来证明这一点,你的答案会更有分量。我同情你的工作流程,从某种意义上说,它看起来很实用,但你也可以说,你可以有两套流浪者,一套用于登台,另一套用于生产。对一些人来说,这似乎是可行的,同样,正如前面提到的,可能存在强烈建议不要在生产中使用Vagrant的证据。说真的,你可以在Vagrant网站上看到的第一件事是“简化开发环境”@Papipo基本上你是在生产环境之上添加了另一层抽象。2014年2月20日:我仍然认为你的问题还有待提供详细答案!如果不是在生产,为什么?2014年9月23日:我还在寻找为什么流浪者不适合生产的答案。对我来说,这取决于虚拟服务器的性能。当然,我们投入生产的是什么样的应用。信息技术