服务计算 – 搭建私有云
文章目录
下载VirtualBox及所需镜像
安装虚拟机
配置虚拟机存储位置
- VirtualBox菜单:管理->全局设定,常规界面
创建虚拟机内部虚拟网络
- VirtualBox菜单:管理->主机网络管理器,创建一块虚拟网卡,网址分配:192.168.100.1/24
- 在主机windows名两行输入
ipconfig
就可以看到VirtualBox host-only Network:
的网卡
创建Base虚拟机(Centos为例)
-
使用VirtualBox创建虚拟机
名称命名建议为centosBase、centosSec……虚拟电脑名称务必以cent
开头,类型版本会自动识别,
内存大小建议为2G-3G,
物理硬盘大小选择固定大小或者动态分配皆可以,
之后点击下一步,分配硬盘大小之后开始创建,创建成功之后更新系统内核,
yum install wegt #或者wget yum update #升级os内核
如果出现yum镜像无法连接的问题,可以配置源163源、阿里云源,
升级成功后关闭虚拟机即可。
-
虚拟机网卡配置
-
菜单->设置->网络:配置第二块网卡(设置为
Host-Only
网络) -
之后启动虚拟机,利用
nmtui
(配置网络的UI界面),配置第二块网卡(Wired connection 1
)地址 -
尝试ping百度,例如:
ping www.baidu.com
-
在主机上尝试ping通该IP地址(192.168.100.2),并且使用ssh访问该虚拟机
-
关闭虚拟机
-
链接复制第二台虚拟机
-
右键选中Base虚拟机->输入新虚拟机名称->选择重新初始化所有网卡的mac地址->下一步->链接复制
-
配置主机名和第二块网卡
-
使用nmtui修改主机名称及第二块网卡IP
-
重新启动
-
在主机上尝试ping通该IP地址(192.168.100.3),并且使用ssh访问该虚拟机
-
远程桌面访问虚拟机
-
关闭虚拟机
-
下载远程显示系统的扩展包,VirtualBox download页面中,可以找到Oracle VM VirtualBox Extension Pack
-
菜单->管理->全局设定->扩展->添加该扩展包
-
设置虚拟机端口
选中一台虚拟机->菜单->设置->显示->远程桌面->设置端口号
现在已经开始进入VirtualBox远程访问模式,但是还需要通过RDP单独地配置每台需要访问的虚拟机端口。这一步需要注意:要为每台将建立RDP连接的子虚拟机分配端口号,但是连接所使用的是宿主机的IP地址,而不是子机。在宿主机上连接这两台虚拟机时可以使用宿主机IP(
172.18.32.128
)或者NAT网卡IP(192.168.100.1
)再加上端口号8801/8802。在其他设备上访问虚拟机时候需要用宿主机IP(172.18.32.128
)加上相应端口号。
【如果使用vmware workstation pro,则配置RDP远程桌面方法如下:】参考链接
- Windows自带的远程桌面协议为RDP,linux中需要用到额外的组建XRDP来支持这种远程桌面协议。
- 配置EPEL源,这是对于CentOS原生yum源的补充:(EPEL的全称叫 Extra Packages for Enterprise Linux 。EPEL是由 Fedora 社区打造,为 RHEL 及衍生发行版如 CentOS、Scientific Linux 等提供高质量软件包的项目。装上了 EPEL之后,就相当于添加了一个第三方源。优点:1,不用去换原来yum源,安装后会产生新repo ;2,epel会有很多源地址,如果一个下载不到,会去另外一个下载; 3,更新时如果下载的包不全,就不会进行安装。这样的话,依赖关系可以保证。)
yum search epel
- 安装EPEL源:
(sudo) yum install -y epel-release.noarch
- 安装XRDP组件:
(sudo) yum install xrdp tigervnc-server
(如果需要客户端,可同时安装tigervncyum install tigervnc
)
- 启动XRDP组件,并添加开机启动:
systemctl start xrdp
systemctl enable xrdp
- 查看系统端口占用:
(sudo) netstat -antup | grep xrdp
- 配置防火墙(控制网络入口,打开3389端口)和SELinux(控制程序访问权限):
firewall-cmd --permanent --add-port=3389/tcp
firewall-cmd --reload
chcon --type=bin_t /usr/sbin/xrdp
chcon --type=bin_t /usr/sbin/xrdp-sesman
之后就可以使用远程桌面连接应用链接这两个虚拟机(192.168.142.140/192.168.142.141),输入相应的用户名密码即可。同样的,我们也可以配置端口映射,使得可以在其他设备上访问虚拟机。
【菜单】->【编辑】->【虚拟网络编辑器】->【更改设置】->【选择VMnet8】->【NAT设置】->【添加相应端口映射】
主机端口为主机(宿主机)尚未使用的端口,虚拟机IP地址加上默认端口3389。
在其他设备上访问虚拟机时候需要用宿主机IP(172.18.32.128
)加上相应端口号。
【说明】
这两张虚拟网卡,各代表什么,有何用处?
先来讲讲enp0s8,它是用于虚拟机与宿主机进行网络通信的。VirtualBox中实现了虚拟路由和虚拟交换机的功能。为了保障虚拟机与宿主机之间的通信,首先,VirtualBox在宿主机上实现了一张虚拟网卡enp0s8(默认情况下并未使用),经过配置之后用来经营与虚拟机的通信;接着,虚拟机与宿主机的通信有两种方式:一是Host only,另一则是Bridge。其中Host Only就是基于虚拟路由的技术,而Bridge则是基于虚拟交换机的技术。采用Host only的方式,在虚拟机中应对其网卡设置与enp0s3同网段的IP地址:比如enp0s3的IP为192.168.100.1时,虚拟机的IP地址可设置为192.168.100.2,且虚拟机的网关应设置为enp0s3的IP,即192.168.100.1(在实现过程中,网关并未设置);此时enp0s8的IP网段应与宿主机的IP网段不同。
再来看看enp0s3,它则基于NAT(网络地址转换),默认安装的虚拟机使用的是该网卡,借助虚拟机借助宿主机互联网IP,实现与对互联网的访问。此时虚拟机的IP地址则由enp0s3的DHCP服务器提供,不允许手工配置。此方式情况下,虚拟机自身IP与enp0s3虚拟网卡在同一网段。虚拟机想上互联网,则需要通过NAT技术,以宿主机的外网地址封装IP外发。
安装图形化界面
- 重新配置虚拟机 CPU,内存,显存
- 启动虚拟机
- 输入命令:
yum groupinstall "GNOME Desktop"
- 设置启动目标为桌面:
ln -sf /lib/systemd/system/runlevel5.target /etc/systemd/system/default.target
- 重启