Loading... ## 需求 为了满足日益增长的学习需要,跟上新时代技术的脚步,需要在本地部署多节点服务器环境,最基础的要求就是每个虚拟机和宿主机之间都能互相ping通,且能够连接外网。 ## 0x01 准备 需要提前下载安装好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` 安装完成后截图如下  ## 0x02 部署 ### 1.创建虚拟机 选择右侧的`新建`,填写名称,选择虚拟机文件夹存放的文件夹,类型选择`Linux`,版本选择`Other Linux (64-bit)`  我的电脑是16G内存,这里我选择内存为2G,可以视自己电脑配置进行选择,  选择现在创建虚拟硬盘,之后在弹出的 窗口依次选择`VDI`和`动态分配`  选择虚拟硬盘的大小,按照我的需求20G是够用的,点击创建后虚拟机创建完毕  ### 2.挂载系统镜像 点击新建好的虚拟机,依次选择设置、系统,在主板选项卡中,将光驱的启动顺序拉到第一个。  选择存储,在右侧`分配光驱`处,点击右侧光盘图标,选择`choose a disk file`,加载你下载好的Centos7系统镜像,点击OK退出  ### 3.安装系统 点击启动,选择启动盘为刚才选择的镜像文件点击启动,系统会自动执行`Centos7`安装程序  选择语言然后继续  按照需求选择安装方式,我这里选择`最小安装`,同时还需要点进去`安装介质`里面确认一下出来,点击开始安装耐心等待系统安装,这个阶段用的时间可能比较久  在安装过程中,点击上方用户设置`root`账号的密码,是否创建用户无所谓  安装完成后点击重启  重启后,使用刚才创建的root账号登陆,到这一步,安装完成  ## 0x03 网卡设置 ### 1.关闭防火墙 由于是本地使用,可以把防火墙先关掉,会避免很多奇奇怪怪的问题 使用命令`systemctl disable firewall.service`关闭防火墙 ### 2.配置虚拟网卡 在虚拟机窗口上方依次选择`设备`、`网络`,连接方式选择`桥接网卡`,界面名称选择你的本机网卡,点击OK确认  此时的虚拟机需要为虚拟机分配一个ip,运行`dhclient`命令让系统为虚拟机分配一个可用的ip,使用最小安装的时候,系统中没有安装`ifconfig`等命令,需要我们自己使用命令`yum install net-tools.x86_64`安装`net-tools` 包。 安装完成之后使用`ifconfig`命令查看分配到的ip地址,并且记下来,我这里分配到的ip是`192.168.1.151`,这个ip地址现在还是动态分配的,为了日后使用的方便,需要将他改成固定ip  ### 3.获取宿主机ip信息 在宿主机命令行窗口中运行`ipconfig /all`,查看ip地址等信息  记录下默认网关(GATEWAY)、DNS服务器(DNS1)、子网掩码(NETMASK) ```C NETMASK=255.255.255.0 GATEWAY=192.168.1.1 DNS1=192.168.1.1 ``` ### 4.固定ip设置 进入目录 ```C cd /etc/sysconfig/network-scripts/ vim ifcfg-enp0s3 ``` 默认设置如下 ```C 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地址,还有刚才查询的宿主机网卡信息,修改后文件如下 ```C 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`重启网络,到这一步基本配置完成 ### 5.测试 到这里,已经使用`桥接`的方式部署好了服务器,我的宿主机ip是`192.168.1.182`,虚拟机ip是`192.168.1.151` ,现在测试一下是否ping得通 虚拟机可以ping得通宿主机,能够正常连接到外网  宿主机也可以ping通虚拟机,说明搭建成功  ssh服务器连接也正常  ## 0x04 部署多个服务器 ### 1.复制镜像 关闭虚拟机,在`virtualBox`管理器的刚才创建好的虚拟机上面右键复制,按照如下图设置,选择完全复制   耐心等待即可 ### 2.配置新的ip地址 启动复制后的虚拟机,root账号和刚才设置的是一样的,运行`dhclient`获取ip地址,使用`ifconfig`命令查看,获取之后按照上面的方法进行配置固态ip即可 ### 3.测试 同时启动两个部署好的两个虚拟机,可以发现是可以互相ping得通的,多节点服务器部署完成,理论上按照此方法可以一直叠加下去  ## 注意事项 - 使用最小安装Centos7会比较快,不过会缺少一些常用的包,自行yum解决 - 复制虚拟机的适合切记选择`为所有的网卡重新生成MAC地址` - 如有更优的解决方案或看法,可以在留言区留言交流~ Last modification:December 21st, 2020 at 02:12 am © 允许规范转载