运维利器 Vagrant 1.5 发布,Vagrant Cloud 上线

阅读数:2043 2014 年 3 月 13 日

话题:云计算DevOps语言 & 开发

本周初,Mitchell Hashimoto在 Vagrant 官方博客上宣布Vagrant 1.5 发布与 Vagrant Cloud 上线。Hashimoto 对 Vagrant 1.5 的描述如下:

  • 一个非常注重稳定性的 Vagrant 版本
  • 向后兼容。某些选项会输出 warning,这些选项会在之后的版本中被移除

最重要的五个新功能:

下载地址在Vagrant 官网,需要的同学可以自取。

跟 Vagrant 1.5 同时发布的Vagrant Cloud是配合 Vagrant Share 功能的一项公共云服务,这项服务目前为免费 beta 版,未来可能会发展成为收费模式。

Rsync、Hyper-V 和 SMB 都很容易理解,下面着重介绍一下 Vagrant Share 和 Boxes 2.0,这两个功能可能很多 Vagrant 用户都会用到:

Vagrant Share,即 Vagrant 环境共享功能,只要使用 vagrant share 这个指令,就可以把当前机器的环境配置生成一个可供其他联网人员访问的地址,知道这个地址的同学只要使用 vagrant connect 被共享的地址 指令,就可以读取被共享机器的 vagrant 环境。Vagrant Share 支持 HTTP、SSH、静态 IP 三种共享模式,HTTP 为默认模式。在使用 HTTP 模式共享的情况下,任何人只要在浏览器里输入生成的地址就可以读取共享的信息,而无需在本机安装 vagrant。

Vagrant Share 会将共享的机器暴露在外部环境之下,目前 Vagrant 官方提供了一些简单的安全选项,并计划引入 ACL 权限控制,未来还会提供自建 Vagrant Share 服务器的功能。目前,所有 Vagrant Share 都连接到Vagrant Cloud之上。

Boxes 2.0 则是在 Vagrant 1.4 的 box 之上做了如下改动:

  • 简化的 box 命名,格式类似 hashicorp/precise64。该名称同时是 box 的名称和访问地址
  • box 可以做版本控制,你可以部署 box 的升级,而其他使用了该 box 的用户也会收到可用升级通知
  • box 的共享目前也在 Vagrant Cloud 上进行

Boxes 2.0 也向后兼容,之前的指令可以沿用。

同一个命名的 box 可能对应不同的 provider,如 VirtualBox 或者 VMware,Boxes 2.0 对此进行了简化处理:

  1. 用户输入指令vagrant box add hashicorp/precise64
  2. 如果有多个 provider 的情况,vagrant 会自己告诉用户这里有多个,并提示用户选择

最后,Hashimoto 表示在下一个版本会有更大的惊喜:

在 1.6 版本中,你将能够随时看到系统中所有 Vagrant 环境的运行情况,再也不会害怕想不起来还有哪些 VM 在跑了!Vagrant 也终于会对基于 Windows 的客户机提供完整的支持。然后我们还会添加至少两个服务商的支持。

Kiip 工程师 Robby Colvin 将这个消息发布到 Hacker News上之后,Hashimoto 本人在帖子后面进行了回复与答疑。

Gittip 开发者Patrick Connolly表示对 Hashimoto 往 vagrant core 中添加越来越多的东西表示怀疑,认为有些东西应该放到插件里去做;Hashimoto 表示 core 现在还很轻量,并且他认为这些特性都是 core 应该有的东西。

用户 anko 抱怨 VMware provider 是收费的,Hashimoto 说现在他们就是靠这个挣钱,毕竟 VMware 是收费的。而 Hyper-V 的支持代码大部分来自微软 OpenTech,并且该代码以 MIT 协议开源,所以是免费的。

Docker maintainer 和 boot2docker 的作者也路过串门,发来贺电。