共计 1264 个字符,预计需要花费 4 分钟才能阅读完成。
Vagrant 默认的 VirtualBox 共享目录方式读写性能表现并不好,好在 Vagrant 支持 NFS 文件系统方式的共享,我们可以启用 NFS 提升性能。
开启方法
首先要把虚拟机的网络设置成 :private_network
模式。
然后确认宿主机系统是否安装了 nfsd
,Mac OS X 默认是集成了的,部分 Linux 需要安装对应 package 才能支持(以 Ubuntu 为例):
$ sudo apt-get install nfs-kernel-server nfs-common
同时,虚拟机里的系统也要安装对应的 package:
$ sudo apt-get install nfs-common
接下来编辑配置文件 Vagrantfile,将共享的目录 nfs
设置为 true
,如下:
Vagrant.configure("2") do |config|
# ...
config.vm.synced_folder ".", "/vagrant", :nfs => true
end
保存后,使用命令 vagrant reload
重启虚拟机后才会生效,期间会修改宿主计算机的 /etc/exports
文件,因此可能要你输入密码,而且每次启动都要会求输入,稍微有点麻烦。
Vagrant 快速入门 http://www.linuxidc.com/Linux/2014-07/104118.htm
如何使用 vagrant 在虚拟机安装 Hadoop 集群 http://www.linuxidc.com/Linux/2013-04/82750.htm
Vagrant 中高效的 Puppet 模块管理 http://www.linuxidc.com/Linux/2014-05/101873.htm
使用 Vagrant 和 Fabric 用于集成测试 http://www.linuxidc.com/Linux/2014-07/104113.htm
使用 Vagrant 搭建开发环境 http://www.linuxidc.com/Linux/2014-07/104116.htm
Windows 下配置 Vagrant 环境 http://www.linuxidc.com/Linux/2014-07/104115.htm
测试结果
这样,NFS 就成功启动了,下次做单元测试的时候,可以测试一下速度,会不会快些呢?这里有个官方做单元测试跑出的分数:
VirtualBox Shared Folders: 5m 14s
Host File System: 10s
Native VM File System: 13s
NFS Shared Folders: 22s
NFS Shared Folders (warm cache): 14s
由于 Windows 并不支持 NFS,所以 Windows 用户无法使用该功能。
待解决疑问:
- NFS 是否支持
:public_network
?答:不支持 - 有人说还得安装
portmap
,能给我解释下为什么吗?
参考来源:http://docs.vagrantup.com/v2/synced-folders/nfs.html
Vagrant 的详细介绍 :请点这里
Vagrant 的下载地址 :请点这里