Vagrant安装centos7并配置网络

社会主义新天地 提交于 2020-02-08 02:38:06

Vagrant安装配置

首先需要先下载VirtualBox的稳定版本,下载链接🔗

接着下载Vagrant,下载链接🔗,下载成功后,在命令行里输入vagrant命令即可查看是否安装成功。

接下来,我们使用vagrant命令安装centos7虚拟机。
由于直接使用vagrant init centos/7来使用国外下载链接很慢,首先需要下载centos7的box。

这里可以在清华源上下载🔗
或者通过【中科大源下载🔗](http://mirrors.ustc.edu.cn/)

使用命令,可以直接在命令行里下载。

vagrant box add \
https://mirrors.tuna.tsinghua.edu.cn/ubuntu-cloud-images/bionic/current/bionic-server-cloudimg-amd64-vagrant.box \
--name ubuntu/bionic

也可以先下载.box文件,这里给出centos7的百度链接🔗, 密码:5vxz。
然后使用下面的命令来添加。

> vagrant box add Vagrant-CentOS-7.box --name centos/7

添加完成后,初始化:

> vagrant init centos/7
> vagrant up
Bringing machine 'default' up with 'virtualbox' provider...
==> default: Importing base box 'centos/7'...
==> default: Matching MAC address for NAT networking...

现在打开virtualBox就能看到有正在运行的虚拟机了。
在这里插入图片描述
安装完成后,登陆系统即可

> vagrant ssh

如果要切换root用户,其默认密码为vagrant。

Vagrant网络配置

vagrant的网络映射有三种方式:(通过修改Vagrantfile)

  1. 端口映射(Forwarded port)
    这种方式,就是把本机和虚拟机的端口进行映射。比如:我配置本机计算机的8080端口为虚拟机的80端口,这样我访问该机器的8080端口,vagrant会把请求转发到虚拟机的80端口是那个去处理。
# Vagrantfile
Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
    config.vm.network "forwarded_port", guest: 8050, host: 8050
    ...
end

通过这种方式,我们可以有针对性的把虚拟机的某些端口公布到外网让其他人去访问。


  1. 私有网络(Private network)

既然是private,那么这种方式是只允许主机访问虚拟机。如果多个虚拟机设定在同一个网段,那么几个虚拟机之间也可以互相访问。这种方式,就好像是搭建了一个私有的linux集群。而且只有一个出口,那就是该主机。

# Vagrantfile
Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
    config.vm.network "private_network", ip: "192.168.255.255"
    ...
end

使用这种方式,非常安全,因为只有一个出口,但是你的虚拟机只允许你自己进行操作。团队成员不能操作,那你的电脑就成服务器主机了。


  1. 公有网络(Public network)

虚拟机享受实体机器一样的待遇,一样的网络配置,vagrant1.3版本之后也可以设定静态IP。设定语法如下:

# Vagrantfile
Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
    config.vm.network "public_network", ip: "192.168.1.120"
    ...
end

这种网络配置方式,方便团队开发,别人也可以访问你的虚拟机。当然,你和你的虚拟机必须在同一个网段中。

修改vagrantFile文件后,执行vagrant reload命令即可。
发布成功后,在本机执行ifconfig(ipconfig)可以看到新增的网卡。

vboxnet0: flags=8943<UP,BROADCAST,RUNNING,PROMISC,SIMPLEX,MULTICAST> mtu 1500
	ether 0a:00:27:00:00:00 
	inet 192.168.255.1 netmask 0xffffff00 broadcast 192.168.255.255

什么是Vagrant

vagrant是一个工具,用于创建和部署虚拟化开发环境的。

拿VirtualBox举例,VirtualBox会开放一个创建虚拟机的接口,Vagrant会利用这个接口创建虚拟机,并且通过Vagrant来管理,配置和自动安装虚拟机。

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!