Virtual Box创建Centos7虚拟机文档指南

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/lk142500/article/details/82526763

1 简介

Virtual Box是一款开源虚拟机软件。是德国Innotek公司开发,使用Qt语言编写,被Sun收购后正式更名为Oracle VM VirtualBox。VirtualBox号称是最强的免费虚拟机软件,有丰富的特色,而且性能优秀。

2 创建虚拟机

2.1 所需材料

使用Virtual Box创建虚拟机的过程需要两个材料,如下所示:

CentOS-7.4-x86_64-DVD-1708.iso
Oracle VM VirtualBox管理器

2.2 安装步骤

首先运行VM VirtualBox应用程序,与VMWare一样,通过应用程序创建虚拟机。选择新建,对待创建的虚拟机进行配置。选择专家模式
这里写图片描述
在专家模式弹窗中,需要勾选名称,类型,版本和内存大小,由于安装的镜像为Centos7,因此勾选内容如下
这里写图片描述
虚拟硬盘勾选现在创建虚拟硬盘即可,在此页面点击创建,弹出窗体新建虚拟硬盘,在此页面勾选虚拟硬盘的容量等参数。其中文件大小的含义为虚拟硬盘的容量。
这里写图片描述
点击创建,弹出如下窗体:

点击设置,在设置页面需要进行配置的选项有存储和网络,需要在存储页面勾选启动镜像,并且在网络页面选择网络连接类型。界面如下:
这里写图片描述
网络界面配置如下:
这里写图片描述
至此,配置虚拟机完成,点击OK之后,双击虚拟机即可运行。
这里写图片描述
其后的过程与在VMWare上创建虚拟机一致,不再赘述,问题不大。

注意:在VM
VirtualBox界面运行时,如果光标当前位于VirtualBox界面内,如果要把光标退出到主机上,点击空格右侧Alt+右侧Ctrl即可。

3 网络配置

由于是新成员的加入,为了他们新项目的运行,需要创建两台虚拟机,一台用于数据库,而另外一台用于部署项目。因此要求虚拟机之间可以ping通,并且在局域网内可以访问两台虚拟机,因此要在虚拟机安装之前设置时选用桥接模式。

3.1 网络连接类型区别

在VirtualBox中提供了如下的网络连接方式:
这里写图片描述
较为重要的连接方式有桥接网络,NAT,仅主机(Host-Only)模式较为重要。

3.1.1 NAT

在NAT网络中,会使用VMnet-8虚拟交互及,物理机上的VMware Network Adapter VMnet8虚拟网卡将会和VMnet8交互及相连接来实现物理机和虚拟机之间的通信。

3.1.2 桥接网络

桥接模式,也就是将虚拟机的虚拟网络适配器与主机的物理网络适配器进行交接,虚拟机中的虚拟网络适配器可通过主机中的物理网络适配器直接访问到外部网络。就好像是在主机所在的局域网中添加了一台新的独立的计算机一样。因此,虚拟机会占用一个IP地址,并且可以与其他终端进行相互访问。桥接模式网络支持有线和无线网络主机网络适配器。
因此,VirtualBox的桥接模式有如下特征:
 如果主机可以上网,则虚拟机可以上网。
 虚拟机之间可以ping通
 虚拟机可以ping通主机
 主机可以ping通虚拟机
适用于场景:虚拟机要求可以上网,并且虚拟机完全模拟一台实体机。

3.1.3 仅主机模式

适用模式为:在主机无法上网的情况下,需要搭建一个模拟局域网,所有机器可以访问。

3.2 配置桥接模式

在Oracle VM VirtualBox程序中配置如上述安装步骤一致,问题不大。
在安装虚拟机之后,在主机网络连接上可以看到多出了一个

VirtualBox Host-Only Network

这里写图片描述
无需修改,保持默认即可。仍需要进行的操作是为虚拟机配置IP操作,具体过程如下:

[root@localhost ~]# ip addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN qlen 1
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 08:00:27:6e:c8:1c brd ff:ff:ff:ff:ff:ff
    inet 192.168.0.225/24 brd 192.168.0.255 scope global enp0s3
       valid_lft forever preferred_lft forever
    inet6 fe80::806c:a1f1:f2f9:dbf9/64 scope link 
       valid_lft forever preferred_lft forever
[root@localhost ~]# cat /etc/sysconfig/network-scripts/ifcfg-enp0s3 
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=static
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=enp0s3
UUID=49468176-9ecd-419e-818d-e77a31fe1410
DEVICE=enp0s3
ONBOOT=yes
IPADDR=192.168.0.225
NETMASK=255.255.255.0

注意,上述网卡配置文件enp0s3需要修改的内容,诸如BOOTPROTO和ONBOOT,以及IPADDR和NETMASK掩码的值修改如上图所示。
验证网络连接正常如下:

[root@localhost ~]# systemctl restart network
[root@localhost ~]# systemctl status network
● network.service - LSB: Bring up/down networking
   Loaded: loaded (/etc/rc.d/init.d/network; bad; vendor preset: disabled)
   Active: active (exited) since Tue 2018-08-28 09:16:50 EDT; 5s ago
     Docs: man:systemd-sysv-generator(8)
  Process: 8579 ExecStop=/etc/rc.d/init.d/network stop (code=exited, status=0/SUCCESS)
  Process: 8722 ExecStart=/etc/rc.d/init.d/network start (code=exited, status=0/SUCCESS)

Aug 28 09:16:50 localhost.localdomain systemd[1]: Starting LSB: Bring up/down networking...
Aug 28 09:16:50 localhost.localdomain network[8722]: Bringing up loopback interface:  [  OK  ]
Aug 28 09:16:50 localhost.localdomain network[8722]: Bringing up interface enp0s3:  Connection success.../2)
Aug 28 09:16:50 localhost.localdomain network[8722]: [  OK  ]
Aug 28 09:16:50 localhost.localdomain systemd[1]: Started LSB: Bring up/down networking.
Hint: Some lines were ellipsized, use -l to show in full.
[root@localhost ~]# ping 192.168.0.221
PING 192.168.0.221 (192.168.0.221) 56(84) bytes of data.
64 bytes from 192.168.0.221: icmp_seq=1 ttl=128 time=4.99 ms
64 bytes from 192.168.0.221: icmp_seq=2 ttl=128 time=0.231 ms
64 bytes from 192.168.0.221: icmp_seq=3 ttl=128 time=0.211 ms
--- 192.168.0.221 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2000ms
rtt min/avg/max/mdev = 0.211/1.812/4.994/2.250 ms

至此,可以在当前局域网内使用XShell连接到虚拟机,并且使用当前虚拟机可以访问局域网内其他主机。

注意:有时尽管重启了网络,但ping局域网内其他的主机依然无法ping通,我遇到了这个问题,花了挺久的时间也没找到原因,结果在VM
VirtualBox中使用命令poweroff冷重启虚拟机,再次启动之后就正常工作了。

最后执行命令:

# poweroff

关机,然后启动,再看结果。

4 快照

为了防止在使用过程中,遇到一些问题,需要回滚,因此在安装虚拟机之后,配置好网络之后自己直接为两台虚拟机做了快照。确保打快照之前执行命令poweroff,制作快照过程如下:
选择界面上虚拟电脑工具右侧下三角,
这里写图片描述
点击备份[系统快照],在弹出的界面点击生成:
这里写图片描述
创建快照是一种良好的工作习惯,防止自己浪费过多的时间重建虚拟机。因此到某个节点经常创建快照是很好的工作行为。

5 总结

文档简述了使用VM VirtualBox创建Centos的过程,并且包含网络配置和创建系统快照,若在以后遇到同样的场景希望能够节省时间,因此写了此篇文档总结。

参见文档

https://download.csdn.net/download/lk142500/10653272

猜你喜欢

转载自blog.csdn.net/lk142500/article/details/82526763
今日推荐