服务器环境搭建(裸机到应用)

欢迎各位关注我的微信公众号:程序员JC。以及我的两个域名:www.jackchen.world 和 www.jackchen.work 现已迁移至本人的服务器,可能暂时没法访问!

鉴于我春节期间,我自己买了一台设备,并搭建了一台个人服务器,专门用于存放自己的数据和运行一些我自己写的程序。尽管有些免费的云盘空间(诸如百度网盘)会很大,完全足够把数据放在云盘上。但我对云(尤其是免费用户)这个东西不能给予完全信任,哈哈。所以就自己想买一台硬件设备布置在家中,然后把之前租服务器的费用花在带宽上。在搭建环境过程中我遇见了一些坑和自己的感受想和各位分享一下。希望对有类似需求的同僚有些帮助。

我购买的设备简要参数见下:

  • 类型:戴尔工作站 T3640
  • CPU:i7 - 10700K
  • 内存:32 GB
  • 显卡:独显(2060 - 6 GB)
  • 硬盘:512 GB(SSD)+ 2 TB
  • 价格:1w+(具体数字就猜去吧,哈哈)

我的需求是需要在购买的设备上装两个操作系统(win10和centos 7.5),并且在每个系统上运行我写的程序,所以两个系统必须同时运行,而不是在开机的时候选择启动某个系统的那种形式。整体环境搭建我将从下面几个方面说明:

  • 安装操作系统
  • 两操作系统之间磁盘共享
  • 将内网机器映射到外网
  • 部署应用程序软件

安装操作系统

在安装操作系统的时候,我当时是罗列了两种方案,其实我很想采用方式二,但由于很多原因(其实就是自己知识欠缺),不得不选择了方式一。

方式一:在裸机上装win10/win server2012,然后在win10/win server2012上装vmware,然后在vmware上装centos 7.5(本人采取的方式)

方式二:在裸机上装vmware exis6.5,然后在vmware exis6.5上装win10/win server2012和centos7.5

先说两种方式的优缺点,方式一的优点在于,操作方便无需借助三方机器,直接在预装系统下进行,都是可视化操作,方便共享硬盘;缺点是一旦宿主操作系统win10挂掉,centos系统也将会挂掉而且过多消耗硬件资源;方式二的优点在于,系统间相互独立,能最大化利用硬件资源;缺点是需要借助三方机器进行安装,共享硬盘复杂一点。

我最开始是采用方式二进行的,需要准备额外一台电脑和一个移动U盘,并且需要在网上下载vmware exis6.5 的镜像文件(iso)将移动U盘做成系统启动盘(具体软件网上很多例如:大白菜等)。然后在设备启动时狂按F10/F2(不同类型的电脑按键不一样,网上可查的)进入bios界面,选择你的u盘做为启动盘,之后就是慢慢等待的过程。导致我不采用方式二的原因是在我安装的时候,一直提示找不到网络适配器,见下图:
在这里插入图片描述我在网上搜索了一番,尝试了很多方式。其中有一种方式说的很有道理,说我下载的镜像文件是没有包含网卡驱动(我的设备是有线网卡)的,需要集成支持我设备型号的网卡驱动到镜像文件中,之后又在网上一番查找,找了我需要的网卡驱动,和集成镜像文件的工具。然后再将合成后的镜像文件重新制作u盘启动。在我以为即将大功告成的时候,失望又一次来临。还是提示找不到网络适配器,后来在网上找到了另一个说法,说可能是vmware exis版本太高,因为我下载的版本是6.5,而镜像文件合成工具是只支持5.x的,我是修改了相关配置,强制合成6.5的。听网上这么一说似乎有道理,我又去官网上下载了5.6版本,然后再次合成镜像文件并开始安装。正以为这次应该没有什么问题,结果还是提示找不到网络适配器。我内心再一次失落,因为不是很熟悉驱动和系统安装相关知识只能一次一次去尝试。之后又尝试了其他很多方式,有的说合成的镜像文件工具在只在win7上有效,有的说网卡驱动版本不对,有的…,结果都是没成功。最后向我一舍友进行了求助(当时是腊月二十九零点,哈哈,因为我必须要赶在我上班之前把环境搭建好,这样我才能远程设备,不然设备就白买了),因为vmware exis我就是从他口中了解,所以就询问了他,他很耐心的帮助我解答,我是真的很感谢(毕竟那个时间点…,哈哈)。最后还是没能解决问题,内心极度失落。之后我觉得内心还是得调整好,为什么一直安装不成功?只能说明我的能力不够,所以得不断去尝试学习(书到用时方恨少),这样才有一丝可能得到预期的结果。最后想到戴尔售后官方技术支持人员,结果官网给了两个他们打包后的镜像文件给我尝试安装,结果还是提示找不到网络适配器。哎…,之后我继续询问,他帮我查询了相关机器型号,结果是没有vmware exis系统的相关驱动支持,说他们官方提供的工作站设备一般不提供vmware exis虚拟化系统,这种系统一般为服务器设备而提供的。那官方既然这样说了,而且我的时间有限,至此放弃方式二,尝试方式一。(我始终相信方式二是可以的,不然网上怎会有那么多个人主机都能安装成功)

方式一相对方式二就简单多了,我的设备预装系统是win10,最初想着是把系统换成win server2012,相比win10更稳定一些。安装winserver2012后,一样不能直接上网(这时我的内心。。。)。我又是在网上一番找啊,说是什么根据自己的网卡类型去下载官方驱动,然后通过u盘导入进行离线安装。参照网上的方法尝试了几种,结果还是不行。我之后又去戴尔官网查询我的设备型号到底提供哪些操作系统(理论上设备支持任何操作系统安装的,关键是需要相关的驱动支持),结果一查就提供win10、ubantu还有别的操作系统(没听过),连win server和centos都不提供,就别说vmware exis了。好吧,此时我心万念俱灰。。。沉默许久之后,决定装win10,安装之后一样提示不能上网,需要自己安装网卡驱动,但是戴尔官方提供基于win10的网卡驱动,这时只需用另一台电脑下载网卡驱动到u盘上,然后导入离线安装就可以了。

不管怎么说,最后也算成功把操作系统装上了,尽管没有装上vmware exis(这个只能怪自己能力不足)。我想很多人自己安装过操作系统吧,但基本都能安装成功,那这是为什么呢?我总结的几点原因,针对笔记本电脑,基本都是有无线网卡的,但是好像官方提供的操作系统镜像文件很友好,都有能支持的驱动,所以待操作系统安装OK后可以下载驱动修复的软件,立马就可以把有线网卡驱动适配了;针对台式电脑,一般是没有无线网卡的,但是都有有线网卡,但是系统的镜像文件中不一定集成了有线网卡驱动,所以待系统安装好后可能需要自己安装网卡驱动,尤其是组装机不会提供系统安装盘,如果中途要自己要重装系统,可能需要遇见网卡驱动安装不成功的问题,这时查看自己网卡型号然后去网上下载相应的网卡驱动安装即可。

两操作系统之间磁盘共享

首先说明一下我为什么需要文件共享?因为我有些程序数据有的得使用win10,有的得使用centos7.5,我不想备份两套数据,最理想的情况是建立一个数据中心,共两个系统同时使用。所以这会文件共享就很有必要了。

我想要的效果是创建一个逻辑分区,centos7.5和win10都能对这个逻辑分区进行读写操作,最重要的是不管centos7.5或者win10创建的文件,两个系统都对该文件有所有权。针对上述的安装系统方式一(即本人采取的方式),只需要在宿主操作系统win10上新建一个逻辑分区(这里对新建逻辑分区步骤不做说明,不难,自己去百度),然后在vmware上创建一个共享磁盘,并将磁盘的路径指向新建的逻辑分区,然后在vmware上开启centos7.5系统,挂载一下,之后win10和centos7.5共享文件了。那么针对上述方式二就相对来说麻烦一点(可能是我没找到更好的方式),方式二相对方式一的最大区别是宿主系统不在是centos7.5或win10应用操作系统了。而是vmware exis了,这时centos7.5和win10相对独立了。这里好像使用vmware中的共享磁盘方式不好使了,因为windows系统使用的文件系统一般是fat的,而以unix内核的系统一般是ext的。方式一之所以可以,我想是因为宿主操作系统和应用系统都是一个,vmware官方做了很好的支持。而方式二系统独立,这里我使用了三方服务samba,在centos7.5作为服务端,win10作为客户端,这样两个系统之间就可以共享文件了。

将内网机器映射到外网

系统和数据中心都安装好了,那么接下来就是怎么让运行在win10和centos7.5的程序,外界如何直接能访问?(即内网暴露在外网上),首先得说明一下的是,尽管我们的电脑能访问互联网,但是外界的设备不能直接访问我们的电脑。即单向互联网,因为我们的设备不是独立ip机器,所以不可直连,都是好多设备共享一个外网ip。所以表现结果是内网设备可以直接访问外网设备,外网设备可以直接访问外网设备(这里先不考虑防火墙屏蔽问题)。要想我的设备暴露在外网上,我得有一个外网ip。这里有两种方案,一种是让我的设备直接接入外网ip,不过这种方式成本太高,需要找相关的运营商协商;另一种是租用一个三方ecs服务器转发,一般弹性服务器都会分配一个外网ip,然后在ecs服务器上布置网络转发的服务端程序,在我的设备上布置网络转发的客户端程序,那么我的设备就可以间接的被外部设备访问了(即间接的暴露在外网上)。这里给各位推荐一款高效免费开源的网络转发工具frp,很实用,我在网上找了好久才找到的。至于怎么使用,这个自己去网上查吧,不难。

部署应用程序软件

最困难的环境搭建已经解决了,那么最好就是部署一些应用软件了。比如apache,mysql,ssh等,其他还有很多常用的工具软件和开发的软件。

至此,我的服务器环境全部搭建完成。因为里面好多东西都是我现学的(因为需要,所以好多都是从零开始的),所以里面有些东西表述的可能不准确,请见谅!希望和各位一起进步!

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值