无
l Linux系统盘符分配机制
在Linux系统中,若存在多块硬盘,内核分配盘符的顺序是/dev/sda、/dev/sdb、/dev/sdc … …。在系统启动过程中,内核会按照扫描到硬盘的顺序分配盘符。
扫描硬盘的顺序:
OS扫描盘的顺序由底层RAID卡控制器(FW),RAID卡驱动以及SCSI子系统配合完成。
具体过程:
1、 上电后,RAID控制器会通过总线扫描硬盘设备,并根据硬盘上报的顺序分配ID序号。扫描方式是:async scan,称为并行的的异步扫描,具体过程是哪个硬盘先找到,就先给那个设备分配Target ID。
2、 在RAID控制器分配好Target ID后,进入OS启动阶段,在内核加载的过程中,RAID卡驱动会调用,scsi_scan_host函数来将前面扫描到的Target ID上报给SCSI upper layer,由上层完成盘符分配。
l RAID+JBOD模式不能指定sda的原因
JBOD硬盘分配Targer ID时存在不确定性,Target ID可能发生变化,进而导致盘符漂移。
参考博通官网相关说明:
原厂描述:
Historically MegaRAID has exposed PDs first and VDs next. There is no architectural or technical reason for this. Because of this, JBOD PDs get exposed first if they exist. First JBOD PD will get /dev/sda designation. This notion of “PDs first and VDs next” is deeply baked into MegaRAID driver.
3416 iMR在设计上,均会先上报PD再上报VD,所以在RAID和JBOD硬盘混合时,RAID相当于是VD,JBOD相当于PD,系统首先将会分配sda给JBOD盘符,最后分配给VD。
l 解决方案建议
3108/3508/3408iMR/3416iMR为博通的MR/iMR品牌RAID卡,支持JBOD,即硬盘不组RAID,直接报给OS使用。
在使用JBOD功能时,通常客户至少会使用两个盘配置为RAID1安装操作系统,其他盘部分或全部配置为JBOD盘。MR/iMR卡设计为JBOD盘的盘符总是在RAID组盘符之前,因此RAID 1+JBOD混配下,无法保证RAID 1系统盘的盘符为sda。
规避方法:
采用将JBOD盘改为单盘RAID0的方式规避,保证RAID1为sda。
当所有盘都配置为RAID组时,第一个创建的RAID组盘符靠前。即只要保证首先创建用于安装OS的RAID1,随后创建其他RAID组和单盘RAID0,可以保证RAID 1系统盘的盘符为sda。
该案例暂时没有网友评论
✖
案例意见反馈
亲~登录后才可以操作哦!
确定你的邮箱还未认证,请认证邮箱或绑定手机后进行当前操作