为了满足日益增长的学习需要,跟上新时代技术的脚步,需要在本地部署多节点服务器环境,最基础的要求就是每个虚拟机和宿主机之间都能互相ping通,且能够连接外网。
需要提前下载安装好VirtualBox和Centos7镜像,国内下载的话可以使用清华大学的镜像源,配合IDM等下载工具下载更快。
VirtualBox:https://mirror.tuna.tsinghua.edu.cn/help/virtualbox/
Centos7:https://mirror.tuna.tsinghua.edu.cn/centos/7/isos/x86_64/
Centos7推荐下载完整版,即CentOS-7-x86_64-DVD-1908.iso
安装完成后截图如下
选择右侧的新建
,填写名称,选择虚拟机文件夹存放的文件夹,类型选择Linux
,版本选择Other Linux (64-bit)
我的电脑是16G内存,这里我选择内存为2G,可以视自己电脑配置进行选择,
选择现在创建虚拟硬盘,之后在弹出的 窗口依次选择VDI
和动态分配
选择虚拟硬盘的大小,按照我的需求20G是够用的,点击创建后虚拟机创建完毕
点击新建好的虚拟机,依次选择设置、系统,在主板选项卡中,将光驱的启动顺序拉到第一个。
选择存储,在右侧分配光驱
处,点击右侧光盘图标,选择choose a disk file
,加载你下载好的Centos7系统镜像,点击OK退出
点击启动,选择启动盘为刚才选择的镜像文件点击启动,系统会自动执行Centos7
安装程序
选择语言然后继续
按照需求选择安装方式,我这里选择最小安装
,同时还需要点进去安装介质
里面确认一下出来,点击开始安装耐心等待系统安装,这个阶段用的时间可能比较久
在安装过程中,点击上方用户设置root
账号的密码,是否创建用户无所谓
安装完成后点击重启
重启后,使用刚才创建的root账号登陆,到这一步,安装完成
由于是本地使用,可以把防火墙先关掉,会避免很多奇奇怪怪的问题
使用命令systemctl disable firewall.service
关闭防火墙
在虚拟机窗口上方依次选择设备
、网络
,连接方式选择桥接网卡
,界面名称选择你的本机网卡,点击OK确认
此时的虚拟机需要为虚拟机分配一个ip,运行dhclient
命令让系统为虚拟机分配一个可用的ip,使用最小安装的时候,系统中没有安装ifconfig
等命令,需要我们自己使用命令yum install net-tools.x86_64
安装net-tools
包。
安装完成之后使用ifconfig
命令查看分配到的ip地址,并且记下来,我这里分配到的ip是192.168.1.151
,这个ip地址现在还是动态分配的,为了日后使用的方便,需要将他改成固定ip
在宿主机命令行窗口中运行ipconfig /all
,查看ip地址等信息
记录下默认网关(GATEWAY)、DNS服务器(DNS1)、子网掩码(NETMASK)
NETMASK=255.255.255.0
GATEWAY=192.168.1.1
DNS1=192.168.1.1
进入目录
cd /etc/sysconfig/network-scripts/
vim ifcfg-enp0s3
默认设置如下
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=dhcp
DEFROUTE=yes
IPUA_FAILURE_FATAL=no
IPU6 INIT=yes
IPU6_AUTOCONF=yes
IPU6_DEFROUTE=yes
IPU6_FAILURE_FATAL=no
IPU6_ADDR_GEN_MODE=stable-privacy
NAME=enp0s3
UUID=3ee43c9f-898a-4783-b1b7-xxxxxxx
DEUICE=enp0s3
ONBOOT=no
需要修改的地方有:将BOOTPROTO
的dhcp
改成static
,ONBOOT
的no
改为yes
,在底部添加IPADDR=192.168.1.151
,即刚才获取到的ip地址,还有刚才查询的宿主机网卡信息,修改后文件如下
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=static
DEFROUTE=yes
IPUA_FAILURE_FATAL=no
IPU6 INIT=yes
IPU6_AUTOCONF=yes
IPU6_DEFROUTE=yes
IPU6_FAILURE_FATAL=no
IPU6_ADDR_GEN_MODE=stable-privacy
NAME=enp0s3
UUID=3ee43c9f-898a-4783-b1b7-xxxxxxx
DEUICE=enp0s3
ONBOOT=yes
IPADDR=192.168.1.151
NETMASK=255.255.255.0
GATEWAY=192.168.1.1
DNS1=192.168.1.1
保存退出后,使用命令systemctl restart network.service
重启网络,到这一步基本配置完成
到这里,已经使用桥接
的方式部署好了服务器,我的宿主机ip是192.168.1.182
,虚拟机ip是192.168.1.151
,现在测试一下是否ping得通
虚拟机可以ping得通宿主机,能够正常连接到外网
宿主机也可以ping通虚拟机,说明搭建成功
ssh服务器连接也正常
关闭虚拟机,在virtualBox
管理器的刚才创建好的虚拟机上面右键复制,按照如下图设置,选择完全复制
耐心等待即可
启动复制后的虚拟机,root账号和刚才设置的是一样的,运行dhclient
获取ip地址,使用ifconfig
命令查看,获取之后按照上面的方法进行配置固态ip即可
同时启动两个部署好的两个虚拟机,可以发现是可以互相ping得通的,多节点服务器部署完成,理论上按照此方法可以一直叠加下去
为所有的网卡重新生成MAC地址