下载安装vagrant: 点击这里
下载安装virtual box:点击这里
这里使用的是win7系统,可能会出现powershell过低的情况,所以需要先检查本机的powershell版本
首先打开powershell,然后可以通过如下命令查看:
代码语言:javascript复制$PSVersionTable
我这边直接升级到5.1(需要重启):下载Win7AndW2K8R2-KB3191566-x64.zip
打开cmd,运行vagrant检查是否正常
将提前准备好的镜像加入到vagrant管理
代码语言:javascript复制vagrant box add centos/7 d:xxx(这里是镜像路径)
同时可以通过如下命令查看:
代码语言:javascript复制vagrant box list
创建centos7文件夹,并进入其中(cmd命令进入):
运行如下命令:
代码语言:javascript复制vagrant init centos/7
此时就会在当前目录下生成Vagrantfile,同时指定使用的镜像为centos/7
通过如下命令运行:
代码语言:javascript复制vagrant up
同时可以打开virtualbox查看是否是在运行
也可以使用如下命令查看运行状态
代码语言:javascript复制vagrant status
通过如下命令进入到虚拟机中
代码语言:javascript复制vagrant ssh
代码语言:javascript复制sudo -i
#开启密码认证
vi /etc/ssh/sshd_config
PasswordAuthentication yes
修改密码并重启:
代码语言:javascript复制passwd
systemctl restart sshd
关于Vagrantfile文件:
代码语言:javascript复制config.vm.box = "centos/7" #指定box
config.vm.network "public_network" #虚拟机享受实体机器一样的网络配置
config.vm.provider "virtualbox" do |vb|
vb.memory = "3000" #指定内存
vb.name= "centos7" #指定虚机名字
vb.cpus= 2 #指定cpu
end
Vagrantfile配置多IP:
代码语言:javascript复制boxes = [
{
:name => "node1",
:eth1 => "192.168.x.x",
:mem => "1024",
:cpu => "1"
},
{
:name => "node2",
:eth1 => "192.168.x.x",
:mem => "1024",
:cpu => "1"
},
{
:name => "node3,
:eth1 => "192.168.x.x",
:mem => "1024",
:cpu => "1"
}
]
Vagrant.configure(2) do |config|
config.vm.box = "centos/7"
boxes.each do |opts|
config.vm.define opts[:name] do |config|
config.vm.hostname = opts[:name]
config.vm.provider "vmware_fusion" do |v|
v.vmx["memsize"] = opts[:mem]
v.vmx["numvcpus"] = opts[:cpu]
end
config.vm.provider "virtualbox" do |v|
v.customize ["modifyvm", :id, "--memory", opts[:mem]]
v.customize ["modifyvm", :id, "--cpus", opts[:cpu]]
v.customize ["modifyvm", :id, "--name", opts[:name]]
end
config.vm.network :public_network, ip: opts[:eth1]
end
end
end
进入到虚拟机中
vagrant ssh node1
其他操作跟单机一致