ESXi折腾之:添加9240阵列卡CrossFlash及升级OMV、安装VMware Tools
目前NAS正常运行已经有九个月了,组RAID5阵列的硬盘数量也增加到五块。外加一个ESXi的数据存储盘,主板自带的六个SATA接口已经满载了。没法再添加硬盘了。嗯,是时候添加HBA卡来扩展硬盘了。
关于LSI HBA卡的选择:
由于我组的阵列是软RAID5,所以仅需要一个支持Pass-through的卡就好。并不需要卡的RAID功能。所以LSI9211-8i是首选。因为9211的I/T 、I/R固件都支持Pass-through,Pass-through状态下,安装好驱动后,HDD相关的操作都会被OS识别,和我们直接接到主板的SATA接口上是一样的。
其次,可以选择LSI 9240-8i 、 IBM M1015 、DELL H310,这些都可以通过特殊方法刷成LSI官方的9211固件来支持Pass-through。LSI 9240-8i 、 IBM M1015 、DELL H310默认的固件为iMR,初级阵列固件,不支持Pass-through。把硬盘接到LSI 9240-8i 、 IBM M1015 、DELL H310上,也可以直接用,但是并不是Pass-through模式,而是JBOD模式,会向指定的盘写入大约512MB的metadata。LSI9240-8i 、 IBM M1015 、DELL H310这三个卡的区别是,9240-8i支持RAID5,M1015、 H310的RAID5功能被砍掉了,如果需要做RAID5需要添加一个硬件KEY。这里要说明一下9240是没有缓存的,用来做RAID5的写入性能是很渣的,再一个RAID5有缺点,就是Write Hole,字面意思就是写入时掉坑里了
,二楼有这个的缺点的文章链接,所以说用没有缓存及BBU(BatteryBackup Unit)的RAID卡来做RAID5的可靠性一般,没有想像中的好。如果必须要用到RAID5,建议有缓存及带BBU的9260起步吧。
LSI 9240-8i JBOD模式
上面的资料都是LSI 9240-8i到手后研究的,之前的理解没有这么深刻。那么,需要使LSI 9240-8i支持Pass-through就要刷9211固件了,也就是CrossFlash。
LSI 9240-8i刷9211-8i I/T固件:
具体方法参考的这篇文章:
在这里,把LSI 9240-8i当作M1015看就好了。
LSI 9240-8i有SBR(serial boot rom),LSI 9211-8i貌似是没有的。刷固件前先把LSI 9240-8i的SBR保存一下,以后还可以刷回来。保存、清除SBR及删除FLASH原有固件的操作需要在DOS下运行,可以用U盘做一个DOS启动盘或者安装MAXDOS软件,我这没多于的U盘了,DOS系统是安装的MAXDOS。
刷新步骤简单讲一下:
1、在DOS下运行:Megarec -readsbr 0 9240sbr.bin 保存一下LSI 9240-8i的SBR
运行正常,多出一个256字节的9240SBR.BIN文件,有了这个文件,以后可以还原成9240。
2、运行命令:megarec-writesbr 0 empty.binEmpty.bin为空文件,把这个空文件写入9240,相当于清空9240的SBR。
3、运行命令:megarec -cleanflash 0 把9240的FLASH清空。第二步和第三步的截图如下:
运行成功,重新启动电脑,启动时按F11进入EFI Shell
4、在EFI Shell下,盘符是从fs0开始,挨个找下来,我在fs4找到了我存放固件及刷新程序的目录
进入fs4,9240目录,运行:sas2flash.efi -o -f 2118IT.BIN -b MPTSAS2.ROM 把9211 I/T固件刷入。EFI Shell下大小写必须正确,不然会找不到文件。
5、运行sas2flsh -o-sasadd 500605b0xxxxxxxx 把SAS address更新一下。
更新成功,9240变身9211了,固件为I/T,重启一下看看。
LSI被Avago收购后,启动信息也变成Avago Technologies了。
按Ctrl-C进入Avago Config Utility
显示sas9211-8i,搞定了。
如果还想原成9240,这个也是有办法的。
还原成9240:
1、在DOS下把FLASH清空 megarec -cleanflash 0
2、刷入之前备份的9240SBR.BIN megarec -writesbr 0 9240SBR.BIN
3、重启,刷入9240的iMR固件 megarec -m0flash 0 imr-fw.rom
还原成功。
9211I/T固件、9240 iMR固件及刷新工具放在这里。
刷完固件,把ESXi服务器关机,把卡接上,之前和 @nighttob 探讨了一下,定下了方案:把HBA卡接到CPU提供PCIe Lanes的插槽里,把这个HBA卡直通给OMV使用。还有另一种方法是不作直通,把连接到HBA卡的HDD在ESXi里作RDM,再分配给OMV使用。第二种方法需要改动的设置比较复杂,我没有使用。接好后启动ESXi在存储适配器里发现了LSI2008,和主板带的AHCI Controller不一样,只有一个vmhba1,上面可以接8个SATA或者SAS设备。
在存储器里面可以看到连接的五个硬盘,但是显示的信息杂乱无章,如果做RDM,不容易区分哪个vmdk文件对应的哪个HDD,我有点晕
,还是直接直通了吧,省事。
在高级设置里面,做一下直通,再重启一下。
编辑一下OMV的虚拟机设置,把原先分配的RDM磁盘删除,把LSI2008分配给OMV虚拟机使用。
只有一个虚拟磁盘安装OMV系统,再就是LSI2008控制器,很清爽有木有。
之前的虚拟机配置:
硬盘1为虚拟磁盘安装OMV系统,硬盘2到6都是RDM过去的物理盘。管理起来比较麻烦。
配置完成后启动虚拟机。正常启动
和之前的没有什么不同
Web登录进去,物理硬盘全部正常认出。
RAID管理页面,也一切正常。
文件系统页面,也一切正常
在SMB里面访问NAS,也OK
搞定了,这下不愁添加硬盘没地方接了,总共6+8=14个硬盘接口,以后如果NAS扩展超过8盘,还可以接到主板SATA接口上,做RDM,分配给OMV使用。
OMV系统更新:
折腾完毕后,又顺便到OMV官方网站去看了一下,发现,出新版本了,版本号从0.5.48直接提升到1.9。Linux内核从古老的2.6.32-5提升到3.2.0-4,还是值得升级的。于是把ISO下载下来,更新一下吧。
先新建一个虚拟机:
网络适配器可以选择VMXNET3了,OMV1.9带了vMware的10G虚拟网卡的驱动。
安装磁盘我分配了2G空间,置备就用厚置备吧,就不用Thin Provision了,如果以后安装插件比较多的话,可以适当多分配一些空间。
这个是1.9版本的OMV安装完VMware Tools后的空间占用
已使用1.25G,可用500M。
虚拟机硬件配置
需要直通的LSISAS2008等安装完系统再配置过去。
启动虚拟机,把OMV1.9的光盘镜像加载上
按ESC,从光盘启动
选中文,后面按照提示操作就OK了.(也可以选英文,这样在CLI下就没有乱码了。)
起个主机名。
域名
输入Root密码
安装系统还是很快的,不到一分钟搞定,再简单配置一下APT源就好了
时间大概一分多钟就完成了。
整个系统的安装也不过三五分钟。按回车重启一下系统
OMV不会自动配置VMXNET3虚拟网卡的IP地址,首次启动显示Nointerface(s) available.需要登录CLI使用omv-firstaid手动配置一下。
输入root 及密码登录CLI,运行omv-firstaid
设置一下network interface
只有一个VMXNET3虚拟网卡,eth0,按回车进入
可以设置从DHCP服务器自动获取地址,我习惯手动设置,选NO
设置IP及掩码、网关
IPv6我这不用,就不设置了。
网络唤醒我这也不用,选NO
运行reboot命令重启一下
可以通过192.168.1.200访问了,用户名密码为默认的admin openmediavault。
关闭虚拟机,把LSI2008直通到这个虚拟机。
直通完成后,启动。
Web登录,就可以进行设置了。
物理磁盘全部认出。
RAID管理,显示有一个/dev/md127了 级别是RAID5
移动到文件系统页面,选中/dev/md127 点上面的挂载
挂载之后,容量,可用,已使用就显示出来了。
开启SMB,添加用户设置共享方面就不再多讲了,参考前面写的0.5.48版本的文章吧,设置方面基本一样。
安装vmware tools
首先是下载LINUX版本的VMware Tools
把VMware Tools的ISO加载到OMV的虚拟光驱上
使用root用户登录到OVM
把光驱挂载到/media/cdrom目录:mount /dev/cdrom1 /media/cdrom
切换到光驱目录:cd /media/cdrom
查看一下光驱文件:ls
把VMwaretools-9.4.0-1280544.tar.gz复制到/tmp目录:cp VMwaretools-9.4.0-1280544.tar.gz /tmp/
切换到/tmp/目录:cd /tmp/
解包VMwaretools-9.4.0-1280544.tar.gz :tar –zxvf VMwaretools-9.4.0-1280544.tar.gz
查看一下/tmp/下的文件:ls
发现多了vmware-tools-distrib目录
切换到vmware-tools-distrib目录:cd vmware-tools-distrib
运行安装命令:./vmware-install.pl安装选项全部默认就好。
到这里报错了
,编译模块前,需要先安装make、gcc、当前LINUX kernel 的headers。 这些在OMV的默认安装中是不安装的
Web登录OMV,设置一下DNS。
在OMV上运行一下: apt-get update 更新一下软件源
接下来可以安装make、gcc了,安装命令:apt-get install make gcc (这里有乱码,前面有说明,安装时候选英文的就正常了,如果选择中文会出乱码。)
按Y就开始安装
make和gcc安装完成。
再来安装LINUX headers: apt-get install linux-headers-3.2.0-4-all-amd64
PS:LINUX下的命令行模式,TAB命令行补全真是太好用了,只打出前面几个字符,按TAB补全就好,打起来没那么麻烦。
按Y开始安装
安装完成。下面可以开始安装Tools了
全部默认就好了,一路回车。
出现这个,就是安装成功了,Enjoy!
在VMware vSphere Client里面查看一下OMV1.9虚拟机的摘要,显示正在运行,后面显示已过期,这是刚刚安装的Tools版本与ESXi的版本不一样造成的,安装的Tools版本是5.5U2比ESXi的版本5.5U2d老,由于没找到5.5U2d版本的vmware tools下载,就这样吧。以后更新,再覆盖安装一下就好了。
以上的操作步骤是摸索着来的,有些颠倒,重新整理一下:
1、 在OMV webconfig里面设定一下DNS
2、 更新一下OMV的软件源: apt-getupdate
3、 安装make、gcc、当前内核的linuxheaders:apt-get install make gcc apt-get install linux-headers-3.2.0-4-all-amd64
4、 复制VMwareTools压缩包到/tmp/目录:cp VMwaretools-9.4.0-1280544.tar.gz /tmp/
5、切换到/tmp/目录,解包:tar –zxvfVMwaretools-9.4.0-1280544.tar.gz
6、运行安装命令:./vmware-install.pl
7、全部默认,一路回车,Enjoy!
就是添加一个HBA卡,就折腾了这么多。不过收获还是满满的,之前对阵列卡一点不懂,再在算是入门了,在折腾中,也知道了RAID5有Write Hole,我这是RAID5软阵列,这个写入时掉坑里的缺点不容小视。以后估计会升级到RAID6,来提供比RAID5更好的冗余性。