如何更改ESXi驱动以支持多种主板和网卡?

日期: 2009-04-16 作者:吴炫国 来源:TechTarget中国

ESXi3.5u3的sata_nv.o的驱动和之前的有所不同,网上有其他朋友的文章通过修改simple.map等支持C61这些主板的方法目前无法用在u3上。他们的版本是u2或者u2以下的,又找不到旧版本的资源,所以不能下载镜像。 不过最近我发现一个有趣的问题,有些AMD的机子不能打开Hyper-V。其实关键原因在于主板的bios上,AMD的主板默认下是开启AMD-V支持的,但是如果用securable.exe或者AMD官方的Hyper-v兼容测试软件是不准显示开启的。

有的主板没法用Hyper-V(多数在c51、c55芯片上,也就是nforce570sli、590sli这类老一些的主板)。   ……

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

电子邮件地址不会被公开。 必填项已用*标注

敬请读者发表评论,本站保留删除与本文无关和不雅评论的权力。

ESXi3.5u3的sata_nv.o的驱动和之前的有所不同,网上有其他朋友的文章通过修改simple.map等支持C61这些主板的方法目前无法用在u3上。他们的版本是u2或者u2以下的,又找不到旧版本的资源,所以不能下载镜像。

不过最近我发现一个有趣的问题,有些AMD的机子不能打开Hyper-V。其实关键原因在于主板的bios上,AMD的主板默认下是开启AMD-V支持的,但是如果用securable.exe或者AMD官方的Hyper-v兼容测试软件是不准显示开启的。有的主板没法用Hyper-V(多数在c51、c55芯片上,也就是nforce570sli、590sli这类老一些的主板)。

  注:realtek的千兆网卡也将可支持,发现内核有支持的,只是驱动问题。

  经过多次试验,我发现ESXi3.5 u3版本开始已经不支持直接修改simple.map文件来支持MCP55以上的主板。这会提示“load sata_nv.o success,but return non-zero”。只有修改驱动才能完整支持MCP55(nforce2-5系列是内置支持的,内置最高支持到nforce 590SLI)以上的Nforce主板。

  附件下载有我修改过的binmod.tgz文件,它代替安装光盘里面的binmod.tgz文件便可以了。其实只是替换掉binmod.tgz里面sata_nv.o驱动,但是要在linux下替换,所以我就上传了全部版本。

ESXi3.5

点击放大

  驱动加入支持MCP61、MCP68等的代码。对于MCP73和MCP78,由于我没有主板不能测试,而且MCP73和78是支持AHCI的。要试用的话不要打开AHCI,但是代码我都加进去了,有条件的朋友可以试一试。simpl.map文件还加入了C61的NF集成网卡支持,也就是代码10de:03ef。由于我没有太多的主板,只能加上我所知道的一些NF网卡,理论上网卡支持方面都是通用于所有nforce的主板。另外加入了以下的驱动:

  SCSI/SAS/SATA RAID卡:

3Ware 9650SE/9690SA controllers
Areca ARC11XX/ARC12XX/ARC13XX/ARC16XX SATA/SAS RAID controllers
13c1:1003 3ware 9650-series SATA-RAID [PCI-X]
13c1:1004 3ware 9650-series SATA-RAID [PCIe]
13c1:1004 3ware 9650-series SATA-RAID [PCIe]
13c1:1005 3ware 9690SA
8086:2820 4 port SATA IDE Controller (ICH8)
8086:2825 2 port SATA IDE Controller (ICH8)
8086:2828 Mobile SATA IDE Controller (ICH8M)
8086:3a02  6 port SATA IDE Controller (ICH10)
8086:3a03  6 port SATA IDE Controller (ICH10)
8086:3a22  6 port SATA AHCI Controller (ICH10)
8086:3a3e  6 port SATA RAID Controller (ICH10R)
8086:3a23  6 port SATA IDE Controller (ICH10)

  网卡:

Intel Gigabit ET Dual Port adapter (8086:10c9)
nForce 430 (MCP61) Ethernet adapter (10de:03ef)
Intel 82566DM-2 Ethernet adapter (8086:10bd)
8086:10c9 0000:0000 network igbsch

  更多的INTEL千兆网卡:

8086:
1049 104a 104b 104c 104d 105e 105f 1060 107d 107e 107f 108b 108c 1096 1098 109a 10a4 10a5 10b9 10ba 10bb 10bc 10bd 10bf 10c0

10c2 10c3 10c4 10c5 10cb 10cc 10cd 10ce 10d3 10d5 10d9 10dA 10de 10df 10e5 10f5 294C

  (以上驱动来自于VMware论坛的驱动包合集。)

  我自己修改加入支持MCP61、MCP55(nforce570sli、590sli)、MCP68的sata驱动和nforce网卡驱动。另外8169网卡驱动也在里面,不过我自己没有亲自试验过。pci-e的8168/8111网卡暂时不支持。

  修改办法:首先参照下面开启ESXi3.5u3的ssh,修改后要重新启动ESXi系统,然后用winscp通过ssh连接到ESXi上。直接用oem.tgz替换/bootbank/下面的oem.tgz(默认的这个文件只有几个字节),替换后重新启动就可以激活上面的硬件。类似于SATA驱动的可能会显示unknow,不过不影响使用。如下图:

  网上的许多开启ssh的方法在ESXi3.5u3上已经是不通用,还需要关闭一些选项。

  第一步:如图,vi连接过去ESXi,打开configure,最下面一个advanced setting,选择VMkernel,拉到下面,将VMkernel.boot.techSupportMode关闭。

Mkernel

点击放大

  第二步:实体机登陆到ESXi的界面(按F2进入控制模式的那里)。按alt-F1进入console,输入unsupported。这个过程是没显示的,回车后就可以进入命令行.vi /etc/inetd.conf,按翻页查找到ssh 那一行,按键盘上的insert键,将前面#删掉,按esc返回命令模式。输入:wq,再输入reboot,重启后就可以用ssh连接ESXi了。

  安装ESXi的三种方法:

  第一种:U盘安装。这个是最简单的了。直接用ultraiso或者其他iso打开工具打开VMware-VMvisor-InstallerCD-3.5.0_Update_3-123629.i386.iso文件,提取出install.tgz,再如图提取:

安装ESXi

点击放大

  出现VMware-VMvisor-big-3.5.0_Update_3-123629.i386.dd.bz2文件,如图。再提取出VMware-VMvisor-big-3.5.0_Update_3-123629.i386.dd 这个镜像,然后打开winimg,恢复这个镜像到你所要用的U盘就可以了。U盘不能小于1G,因为那个镜像有750M左右。

镜像

镜像

虚拟镜像

ESXi

  第二种:光盘安装到SATA设备。如果是用Nforce C61 NF570SLI C68等/INTEL P965+ICH8 P35+ICH9 P45+ICH10等主板的,在安装前自行替换附件OEM.tgz文件到iso文件里这个文件,然后启动便可以找到SATA硬盘安装了。

SATA硬盘

点击放大

  第三种:光盘安装到IDE设备。不支持Nforce C61以上规格主板,其他的一般都支持。ICH8开始的INTEL主板大部分没有原生的IDE通道,所以也是不支持的。启动光盘到了安装界面,先别按F11进入安装,按alt-F1转到console界面,用root,密码空,进入命令行,修改以下文件。下面是命令:

vi /usr/lib/vmware/installer/Core/TargetFilter.py
找到def IDEFilter(lun)这一行,将
return interface.GetInterfaceType() == ScsiInterface.SCSI_IFACE_TYPE_IDE

  改成

return interface.GetInterfaceType() == ScsiInterface.SCSI_IFACE_TYPE_ISCSI

  然后按alt-F2返回安装界面,回车,还是没有找到硬盘,这时会提示你按回车重启。再一次按alt-F1进入命令行,输入install,就又回到安装界面了。这时就可以找到ide设备安装系统了。

  用U盘或者CF卡等装好ESXi之后,我们便可以用ESXi内置的ISCSI客户端来使用NFS系统做网络储存方式。这样对家用或者小型公司在网络条件优良的情况下,完全可以使用Windows或者Linux当作储存服务器(使用软件iscsi的target模式)。当然也可以使用raid0/1/5等几种方式作为集中储存,只要在ESXi服务器上设立单独的千兆网卡,或者聚合2个ISCSI TARGET的服务器设置成RAID0/0+1/5模式,性能还是非常高的。Intel的PCI网卡的吞吐也可以达到50Mbps左右。这样对于资源最大化利用和绿色环保来说都是不错的。

  我这里演示的是Windows下使用wintarget来设置ISCSI TARGET。如果是公司,可以使用Linux下的免费ISCSI TARGET。注意CCDISK ISCSI是不能作为这种储存方式的TARGET。

存储

ISCSI

网卡

点击放大

  更多信息请参见TechTarget中国虚拟化论坛:http://club.techtarget.com.cn/showforum-24.aspx。欢迎讨论!

  关于作者:吴炫国,在网络管理领域有丰富经验,专注硬件、服務器、WiFi等方面。强烈爱好虚拟化,TechTarget中国虚拟化论坛版主。

作者

吴炫国
吴炫国

吴炫国,在网络管理领域有丰富经验,专注硬件、服務器、WiFi等方面。强烈爱好虚拟化,TechTarget中国虚拟化论坛版主。

相关推荐