在N3150上安装ESXi虚拟机

前言

最初组装软路由的时候,我就考虑过安装虚拟机,但因为没什么需求,买来后一直实机安装了爱快。最近发现秒开缓存系统,感觉和软路由配搭应该不错,于是开始了本文的尝试。不过,我才不会告诉你后来我配置秒开失败呢!

由于我当初购买的时候就知悉 ESXi 不支持 N3150/J1900 等系列的核显,得用非常规的方法才能装上,所以最初尝试了搭建其他平台,结果就是一场悲剧。经过几天的失败尝试,回过头来安装 ESXi,居然成功了,果然最靠谱的还是 ESXi……

后话:
我最后并没有使用 ESXi,而是安装了 Windows server 2016。
使用系统自带的 Hyper-V 虚拟机安装了爱快软路由、Lean 大的 x64 石像鬼固件,再用 Windows 自身的共享功能做了 NAS 和下载机,还用 Seafile 实现了本地的私有云……

试错

下面是我失败尝试的记录,先折叠起来了。因为不排除会有人会根据本文来安装,所以文章里尽量只描述正确的步骤。

值得注意的是,以下是根据我的华擎 N3150-ITX 实践得来的,结论可能不适用于你使用的硬件,甚至是其他主板的 N3150。

[coll title="失败尝试的心路历程,请和正文分开来看"]

失败一、Hyper-V Server 2012

因为硬盘不大,所以没选择使用 Windows Server 2012。安装好之后蓝屏自动重启,一开始以为是内存不兼容,都怪华擎官网上的内存兼容列表,里面列出的兼容型号少得可怜,所以又在京东下单了一条内存,结果自然是呵呵了。

失败二、Hyper-V Server 2016 TH5

这个系统还未正式发布,是测试版。这次总是能进去了,但控制台卡得要死,每按一个键都卡几秒十几秒。因为不想搭建域环境,综合了多篇教程,在 Win10 折腾了好久才能在工作组下联机成功。虽然没控制台那么卡得夸张,但仍感觉速度缓慢,虚拟机里文件的写入速度简直不忍直视,再弃……

失败三、Windows Server 2003 + VMware Workstation Pro 10

既然 Hyper-V Server 装不上,那就尝试 Windows Server 吧,出于空间考虑,选择了 2003。虚拟机也不用 Hyper-V 了,用 VMware ,但也 2003 也只支持 Workstation 10。安装后赫然蓝屏了,症状和 Win2003PE 一样,原因是我这款华擎主板只支持 AHCI,无法兼容使用 IDE 的旧版系统了(似乎要Win7以上)——放弃。

未尝试、Windows Server 2008 + VMware Workstation Pro 12

这个方案应该是可以的,或者 Windows 7 到 10 都可以,但我都没有尝试。

半成功、Ubuntu 16.04 LTS 桌面版 + VMware Workstation Pro 12

在 Windows 那边吃了一轮逼,我又把目标转向 Linux。可供选择的发行版有好几个,最后选择了 Ubuntu 的桌面版,因为安装 VMware 需要 GUI 界面,而 Ubuntu 是这几个系统之中最偏向 GUI 的。

最终是成功安装上 VMware Workstation Pro 12,但有几处地方很折腾,就是不知道怎样开机启动虚拟机,网上也找不到这方面的小白教程,还有就是其他电脑无法 ping 虚拟主机,连接软路由的管理页面也偶有断开。这基本算是不能用了吧,弃。

成功前夕、VMware EXSi 6.0.0

回归初心,尝试安装我最想安装的 EXSi,方法网上已经说得清楚了,但自己尝试的时候还是遇到各种问题。首先是我的台机可能太老了,居然不支持安装 EXSi,初始化之后就按不了键盘继续。

然后用笔记本的话,不太想拆,也没工具外连硬盘,又不想安装到 U 盘上。所以我想出了在笔记本里用虚拟机安装,然后用 DiskGenius 把虚拟机文件克隆到硬盘的办法(这一步完全可以在软路由上处理)。实验结果是,克隆后的硬盘不能引导……但在实操的过程中,解决了一个关键问题。就是一开始我给虚拟机分配了 4G 内存,然后安装后它建了一个 4G 的交换分区,于是我把虚拟机改成 2G 内存,看看能不能把交换分区减少一下。结果,无法安装 EXSi,居然提示找不到网络适配器,找不到网络适配器,找不到网络适配器!

这她妈不是我在台式机用 VMware Workstation 安装 EXSi 失败的提示么?终于明白是因为没给它分配 4G 内存,所以才安装失败,而不是她妈的找不到网络适配器,尼玛的乱提示。

最后在台式机用 VMware Workstation 把 EXSi 安装到硬盘上,完事!

[/coll]

准备

安装 ESXi 之前,先确定你的硬件是否兼容,可以看官网的兼容列表。但因为语言关系,官网不太好查,而且部分官网未兼容的硬件,其实也是可以安装的,因此我建议最终还是你百度或谷歌一下。

总之,如果你的 CPU 和网卡完全兼容 ESXi,那下载官方的安装盘直接安装就行了;如果是部分不兼容,看看有没第三方驱动,如果有,就打包到安装盘里。如果没有,那就基本告别 ESXi 了。

我的主板是华擎 N3150-ITX,据反映主要是缺了 SATA 和螃蟹网卡 8111 的驱动,再加上不支持核显。

打包驱动的方法网上到处都是,我这里就不复述了,直接扔文件吧。链接:http://pan.baidu.com/s/1hrP8Fac 密码:forz

VMware-VMvisor-Installer-6.0.0-2494585.x86_64.iso 官方的安装光盘
ESXi-6.0-Reatek_Sata.iso 打包了SATA和8111网卡的安装光盘(感谢Derekcdq分享)
VMware-viclient-all-6.0.0-2502222.exe VMware vSphere Client
ESXI6 KEYGEN.rar 注册机,你懂的
ESXi-Customizer-v2.7.2.zip 自定义和打包驱动的工具
https://vibsdepot.v-front.de/wiki/index.php/List_of_currently_available_ESXi_packages 第三方兼容驱动

安装 ESxi

因为 ESXi 不支持 Braswell 平台的核显,在 N3150 主机上安装是无法通过安装程序的初始化。因此我们需要用另一台电脑把 ESXi 安装到硬盘或 U 盘上。如果你要安装到 U 盘上,那就很简单了,随便找一台电脑都可以。如果你要安装到硬盘上,那用台机是最好的。用笔记本不是不可以,只是拆装比较麻烦,不方便的话,可能需要硬盘座。

因为我要安装 ESXi 6.0.0,所以最好在台机上安装 VMware Workstation Pro 12,系统最低要求是 Windows 7,自己看着办吧。把 N3150 的硬盘装到台机上,最好先把这个硬盘的分区都删除掉,然后开始配置虚拟机。

新建虚拟机,我们选择「自定义(高级)」来配置;硬件兼容性「Workstation 12.0」;安装来源选择使用了 ESXi 的映像文件,它就会自动识别出你要安装什么系统了。

处理器数量 1,每个处理器的核心数量不大于你的物理 CPU;**内存量必须大于 4G,内存量必须大于 4G,内存量必须大于 4G!**因为很重要,必须重复三次,内存不足 4G 的话,安装的时候并不会提示你内存不足,而是会提示「找不到网络适配器」,然后不给你继续安装。必须说,这个提示太误导人了!

网络连接的类型随意选择;SCSI 控制器选择 LSI Logic;虚拟磁盘类型选 SCSI,使用物理磁盘,在设备里选择你准备安装的硬盘(因为看不到硬盘型号,只能根据 SATA 接口的顺序来判断,或者完成全部新建虚拟机步骤后,「编辑虚拟机设置」,看看硬盘显示的容量大小是否符合)。

开启此虚拟机,它就会进入安装界面。具体的安装步骤可以参考下面的链接,这里不再详述。http://jingyan.baidu.com/article/925f8cb8f35a25c0dde056f6.html

安装后最后设置一个固态的 IP 地址,初步设置好之后,我们就可以关机,把硬盘装回 N3150 主机上,拨下除了电源和网线之外的一切连接。

把 N3150 开机,然后确定管理电脑和 N3150 的 IP 在同一个网关内,且网线互通。在浏览器输入 N3150 的 IP 地址,如果能出现以下的网页,那就说明安装成功了。

这个时候,你有好几个方法去配置虚拟机。最简单直接就是点击上图的「Open the VMware Host Client」,用账户密码登录后,你完全可以在这个网页上创建和配置虚拟机。

一般我还是推荐安装 VMware vSphere Client 来配置。其他还有 Vmware vCenrer,vCenrer 是最高级的,但安装包太大,好像只能在 Windows Server 上安装?反正我没尝试过。

在 ESXi 里创建虚拟机的方法和 VMware Workstation 是大同小异,所以我只挑几个重点来说说。

默认的 SCSI 控制器类型是 VMware 准虚拟,但这个控制器类型只支持部分比较高级的系统,或者需要安装 VMware Tools,而软路由基本是装不上 VMware Tools 的,比如爱快软路由在这个模式下会无法挂载磁盘。所以装软路由就别选择这个模式了,我推荐使用 LST Logic 并行

网卡适配器类型这里,VMXNET 3 是最好的,但部分系统不支持,目前我只知道秒开是支持 VMXNET 3 的,其他爱快之类的只能用 E1000

多网口软路由带机上网

具体说一下软路由的网络设置,如果软路由自带多网口,那就不需要另外购置设备也能带机上网。当然,如果带机的数量超过软路由的端口数,还是要另外加台交换机的。

上图的 Management Netword 是管理端口,用其他电脑就是通过这个端口管理 ESXi 的。

我这台软路由有两个网口,其中一个做 WAN 连接猫,另外一个是 LNA1 连接交换机,所以我新建了两个虚拟机端口,分别命名为 ik_wan 和 ik_lan1,虚拟机设置里要正确选择好这些网络标签。

先看一下 LAN 口的具体属性设置。因为我用了支持简单网管的 VLAN 交换机,并设置了 VLAN ID,所以我这里填了 VLAN ID 1。如果你没用 VLAN 交换机,那就填 0。如果 VLAN 交换机设置了 VLAN ID,而你又没填写正确的 ID,那交换机就会无法访问这台虚拟机。同理, Management Netword 也必须设置好 VLAN ID,才能透过 VLAN 交换机管理 EXSi。

混杂模式设置为「接受」。网卡默认是绑定了所有的真实网卡,所以我们要手动设置一下,把这个端口不用的网卡下移到「未用的适配器」里。

另外,WAN 口与 Modem 相连,所以 VLAN ID 为 0,并绑定了另一张网卡。

如果你有更多的网口,那就继续添加虚拟机端口,并绑定网卡。多出的网卡可以在爱快软路由的 LAN1 口中进行扩展网卡绑定。

单网口软路由带机上网

单网口的软路由要带机上网,你起码要有一台支持简单网管的 VLAN 交换机。

上面是虚拟机中的要求,再另外说一下实机安装软路由系统的情况。如果软路由系统支持单臂路由,那还是只需要简单网管的 VLAN 交换机就可以了;不支持单臂路由的话,那你就需要添置昂贵的三层交换机。

我们首先要设置 VLAN 交换机,以我的网件 GS108E 为例,需要基于 802.1Q 协议的 VLAN 进行设置。注意部分廉价的非网管 VLAN 交换机只是端口 VALN,是不可能让单网口的软路由扩展 LAN 和 WAN 端口的。

需要设置两个 VLAN ID,其中 01 是 LAN 口,02 为 WAN 口。

软路由的网口与交换机的 01 端口连接,所以两个 VLAN ID 都需要把 01 端口标记 为 T (trunk)。

最后把 02 端口的 PVID 设置成 2 就可以了。

虚拟机方面,只需要把 LAN 端口的 VLAN ID 设置成 1,WAN 端口 设置成 2,就可以完成配置。

虚拟机随 ESXi 一起启动和关机

因为软路由系统不能安装 VMware Tools,很多高级电源选项都不能用。如上图,软路由的关机操作必须为「挂起」,而且软路由自身不要设置定时关机,这样才能够让软路由的虚拟机在 ESXi 开机的时候自动启动。

这都是我多日实际测试的结论,好几天起床看到没连上网,那心情真是酸爽……

ESXi 定时关机

在 VMware vSphere Client 里翻了一下,没发现有定时关机和重启的选项,网上说需要安装 VMware vCenrer 才能设置?不过也没关系,底层是基于 Linux,我们还可以用 cron 实现。

首先用浏览器登录 VMware Host Client,启用 SSH,然后点击这里下载 PuTTY 客户端来连接 SSH。

// 进入定时任务的目录
cd /var/spool/cron/crontabs
// 给 root 文件加入写入权限
chmod u+w root
// 用文本编辑器编辑 root 文件
vi root
// 按 i 进入插入模式,新建一行插入下面的命令,如下第一个是分钟,第二个是小时(24小时制),我这里设置了每天 5:00 关机,要重启的话,就把 poweroff 改成 reboot
0    5    *    *    *    /sbin/poweroff
// 按 ESC 退出到命令行,输入 :wq 退出文本编辑器
// 取消文件的写入权限
chmod u-w root
// 查看一下文件,看看是否已经成功修改
cat root



本文章参考了以下的文章

J1900、N3150不能用ESXI?已成过去式了!!
毛路由 N3150 ESXI 6.0螃蟹网卡 8111F 8111e安装 VMware vSphere Hypervisor教程
在华擎N3150-ITX上安装esxi6.0终极篇(已上传iso)

作者:Xelloss
本博客文章采用 知识共享(Creative Commons) 署名-非商业性使用-禁止演绎 4.0 进行许可。