PowerEdge:自动部署操作系统到 Dell BOSS:适用于不同操作系统的方法
Summary: 本文提供有关 Dell Boot Optimized Storage Solution (BOSS) PCIe 卡的信息。还提供了有关在这些卡上安装 Windows、Red Hat、SuSE、Ubuntu 和相关 Linux 发行版的说明。
Instructions
Dell Boot Optimized Storage Solution (BOSS) 设备是支持两个 M.2 SSD 驱动器的独立 PCIe 卡,默认为 RAID 1 配置。它设计为操作系统启动驱动器,可将所有其他驱动器腾出来用作高速缓存或数据存储设备。这是一种确保主驱动器托架可以完全用于比操作系统启动更重要的任务的简单方法。
但是,由于 BOSS 卡受正常设备枚举的约束,因此不同的引导设备可能会显示为 BIOS 引导顺序中的第一个设备。在以编程方式部署操作系统时,这可能会导致问题。
以下信息介绍了如何标记或识别 Dell BOSS 卡,以确保在它上面安装操作系统。搜索并使用“易于识别的名称”(例如,DELLBOSS VD)是确保作系统安装到 BOSS 的正确方法。每个作系统都可以通过本文中详细介绍的各种方法查找并使用 BOSS 卡。
全部显示 | 全部隐藏
Linux 操作系统中的 BOSS 设备识别
BOSS 设备在设备的 Model 属性中包含字符串 DELLBOSS,这可用于识别该设备,如以下示例所示:
# cat /proc/scsi/scsi Attached devices: Host: scsi0 Channel: 00 Id: 00 Lun: 00 Vendor: ATA Model: DELLBOSS VD Rev: MV.R Type: Direct-Access ANSI SCSI revision: 05 Host: scsi2 Channel: 00 Id: 00 Lun: 00 Vendor: Marvell Model: Console Rev: 1.01 Type: Processor ANSI SCSI revision: 05
基于 Linux 的作系统使用 udev 要在 中创建符号链接,请执行以下作 /dev/disk/by-id/ 可用于定位 BOSS 设备,如下所示:
# ls -l /dev/disk/by-id/ total 0 lrwxrwxrwx. 1 root root 9 Jan 13 15:02 ata-DELLBOSS_VD_6668c813b78a0010 -> ../../sda
此属性可在自动化安装脚本中用于检测 BOSS 卡是否存在,并指示安装程序使用它进行安装。
Red Hat Enterprise Linux 和衍生产品(CentOS、Scientific Linux、Fedora)交互式安装
在执行交互式安装时,系统会让用户选择 BOSS 设备作为主安装或启动设备。BOSS 设备显示为 ATA DELLBOSS VD,如下图所示。选择 ATADELLBOSS VD 设备可确保安装程序将作系统文件放在 BOSS 设备上,同时保持其他驱动器不变。
图 1:安装目标
Red Hat Enterprise Linux 和衍生产品自动化安装
对于自动化 (kickstart) 安装,可以使用预安装脚本来确保安装程序将操作系统放在正确的驱动器上。以下脚本通过搜索包含 DELLBOSS 的型号字段的设备来识别 BOSS 设备。它指示安装程序仅使用该设备,而忽略安装程序可用的所有其他存储设备。
ks.cfg: %include /tmp/bootdisk.cfg %pre # Use DELLBOSS device for OS install if present. BOSS_DEV=$(find /dev -name "*DELLBOSS*" -printf %P"\n" | \ egrep -v -e part -e scsi| head -1) if [ -n "$BOSS_DEV" ]; then echo ignoredisk --only-use="$BOSS_DEV" > /tmp/bootdisk.cfg fi %end
下面是一个示例 /tmp/bootdisk.cfg 包含安装程序应使用的 BOSS 设备的设备名称。
# cat /tmp/bootdisk.cfg ignoredisk --only-use=disk/by-id/ata-DELLBOSS_VD_6668c813b78a0010
SUSE 和衍生产品交互式安装
基于 SUSE 的操作系统的交互式安装不会列出设备的标签,仅列出其设备名称。因此,用户必须切换到文本控制台才能获取 BOSS 设备的设备名称。
图 2:建议的分区。
在 Suggested Partitioning 屏幕中,选择 Guided Setup。
图 3:硬盘选择
通过按 Ctrl+Alt+F2 切换到控制台。在命令提示符处,输入以下命令以显示应用于安装的 BOSS 设备的 SCSI 设备名称。
chvt 7 命令退出控制台:
# lsscsi| grep DELLBOSS # chvt 7
图 4: lsscsi 输出
在 “Select Hard Disk ”屏幕中,从 lsscsi 命令输出,确保未选择所有其他设备。
继续安装。这可确保操作系统安装在 BOSS 设备上。
SUSE 和衍生产品自动化安装
- 对于自动安装,可以将以下内容添加到
autoyast.xml:
##Sample pre-script section in the autoyast file to extract the device name for BOSS device. <pre-scripts config:type="list"> <script> <feedback config:type="boolean">true</feedback> <debug config:type="boolean">false</debug> <filename>pre.sh</filename> <interpreter>shell</interpreter> <source><![CDATA[ # Use DELLBOSS device for OS install if present. DEV=$(find /dev -name "*DELLBOSS*" | egrep -v -e part -e scsi| head -1) if [ -n "$DEV" ]; then BOSS_DEV=$(basename $(readlink $DEV)) sed -e "s/@ROOT_DEVICE@/$BOSS_DEV/" /tmp/profile/autoinst.xml >/tmp/profile/modified.xml cp /tmp/profile/modified.xml /tmp/profile/autoinst.xml fi ]]> </source> </script> </pre-scripts> ###Sample autoyast partitioning section with ROOT device variable that needs to be replaced by the BOSS device found in the pre-script section above. <partitioning config:type="list"> <drive> <device>/dev/@ROOT_DEVICE@</device> <disklabel>gpt</disklabel> <enable_snapshots config:type="boolean">true</enable_snapshots> <initialize config:type="boolean">true</initialize> <partitions config:type="list"> <partition> <create config:type="boolean">true</create> <crypt_fs config:type="boolean">false</crypt_fs> <filesystem config:type="symbol">vfat</filesystem> <format config:type="boolean">true</format> <fstopt>umask=0002,utf8=true</fstopt> <loop_fs config:type="boolean">false</loop_fs> <mount>/boot/efi</mount> <mountby config:type="symbol">uuid</mountby> <partition_id config:type="integer">259</partition_id> <partition_nr config:type="integer">1</partition_nr> <resize config:type="boolean">false</resize> <size>155352576</size> </partition> </partitions> </drive> </partitioning>
Ubuntu 交互式安装
图 5:磁盘分区方法
图 6:磁盘分区
Ubuntu 自动化安装
ks.cfg: %include /tmp/bootdisk.cfg %pre # Use DELLBOSS device for OS install if present. BOSS_DEV=$(readlink -f $(find /dev -name "*DELLBOSS*" | \ egrep -v -e part -e scsi| head -1)) if [ -n "$BOSS_DEV" ]; then echo ignoredisk --only-use="$BOSS_DEV" > /tmp/bootdisk.cfg fi %end
VMware ESXi 交互式安装
图 7:ESXi 安装程序
VMware ESXi 自动化安装
对于 ESXi 则略有不同,安装程序可以检测 BOSS 驱动器,因此 kickstart 脚本只有一行。
install --overwritevmfs --firstdisk="DELLBOSS VD"
Microsoft Windows 交互式安装
在具有多个磁盘的服务器中,确保操作系统安装到 BOSS 卡可能颇具挑战性。在此示例中,BOSS 卡是磁盘 6,但在“磁盘管理”中无法一眼看出。(提醒:在此屏幕截图中操作系统已完全安装。)BOSS 卡没有在顶层标识出来,但可以通过右键单击磁盘 6 并选择属性来识别。
图 8:磁盘管理
图 9:Dell BOSS 属性视图
此外,使用 WinPE 的标准 Windows 安装过程会带来一些挑战。默认情况下,PowerShell 在 WinPE 中不可用(但可以添加),并且只有特定工具可用于识别 BOSS 卡。标准安装屏幕中不标识 BOSS 卡,如以下的屏幕截图所示。
知道 BOSS 卡的大小对于指定安装到该卡非常有帮助。为了确定,请使用 Shift-F10 在 WinPE 中打开命令提示符窗口。
在以下屏幕截图中,磁盘 6 无法明确标识为 BOSS 卡。此示例有六个驱动器,但有些服务器具有更多驱动器。
图 10:Windows 磁盘选择
图 . Windows 磁盘选择
图 12:Windows 磁盘选择
命令行界面提供了一个解决方案。要打开命令提示符,您可以在 Windows 安装期间的任何时候在 WinPE 中按 Shift-F10。
1.DiskPart:DiskPart 的唯一问题是需要在运行 详细磁盘之前选择磁盘,如下所示。这需要您猜测要选择的磁盘。因此,知道 BOSS M.2 设备的大小非常重要。选择正确的驱动器会显示 DELLBOSS VD:
图 13: Diskpart
2.使用 PowerShell,可以通过多种方法识别 BOSS 卡。但是,默认情况下,PowerShell 在 WinPE 中不可用,因此除非已添加或已完全安装作系统,否则它没有用处。
图 14:PowerShell 在 WinPE
3 中不可用。Windows Management Instrumentation 命令行界面 (WMIC) 可以帮助我们确定地选择 Dell BOSS 设备。WMIC 在完整操作系统和 WinPE 中可用。
使用以下命令识别 BOSS 卡:
WMIC Diskdrive get model, name

图 15:WMIC 输出
使用 WMIC,您可以将硬盘位置绑定到名称 DELLBOSS VD。(请参见上面的 PHYSICALDRIVE6。)
Microsoft Windows 自动化安装
使用上述任一方法(DiskPart 或 WMIC)知道物理位置后,可以在脚本中使用以下内容:
Diskpart SELECT DISK=<disk location path> command to select each drive.
例如:
SELECT DISK=PCIROOT(0)#PCI(0100)#ATA(C00T00L00)
在上面的服务器示例中,命令将为:
SELECT DISK=PCIROOT(3A)#PCI(0000)#PCI(0000)#ATA(C00T00L00)
下面是格式化驱动器的简单示例。
创建文本文件 (diskpart.txt),使用如上所示的路径:
SELECT DISK=PCIROOT(3A)#PCI(0000)#PCI(0000)#ATA(C00T00L00) CLEAN CREATE PART PRI SELECT PART 1 ACTIVE ASSIGN FORMAT FS=NTFS QUICK EXIT
创建操作系统安装脚本或批处理文件,并添加以下行:
DISKPART /s diskpart.txt
备选方法:使用 Powershell、WMI 和注册表识别 BOSS 卡。
PowerShell
在 Windows 中,PowerShell 可以使用以下命令显示“易于识别的名称”(DELLBOSS VD) Get-Disk 或 Get-PhysicalDisk 命令,如下所示。此示例显示 BOSS 卡并不总是枚举为磁盘 0,它在此处显示为磁盘 12:
图 16:Powershell Get-Disk 输出

图 17:Powershell Get-PhysicalDisk 输出
图 18:Powershell Get-PhysicalDisk 过滤输出
WMI 层次结构
这远非最直接的方法,但您可以使用 WbemTest 工具,通过遍历 WMI 层次结构来识别 BOSS 卡。
- 通过键入以下命令启动该工具:
wbemtest在命令提示符下。 - 连接到
root\cimv2Namespace。 - 单击 Enum Classes,选择 Recursive,然后单击 OK 以打开类列表。
- 双击
Win32_DiskDrive,然后单击 Instances 以列出系统中的所有驱动器 - 依次双击每个列出的设备并查看其 Caption 属性。
图 19: WBEMTEST 应用程序屏幕
Powershell
Get-WmiObject cmdlet 提供了一种显示相同信息的更简单方法:
图 20:Powershell Get-WmiObject 输出
注册表路径
HKEY_LOCAL_MACHINE\HARDWARE\DEVICEMAP\Scsi\Scsi Port #\Scsi Bus #\Target Id #\Logical Unit Id #\Identifier
图 21:Windows 注册表
用于带外识别和安装的 RACADM 命令
戴尔支持创建了一个包含 racadm 和其他必要工具的 live ISO 映像。客户可以使用此 ISO 启动至 Linux 并执行 racadm 任务。单击 此处 了解更多信息。
以下是用于使用 RACADM 命令部署到 BOSS 的脚本中的一些片段:
# Identify
##Get the list of all AHCI controllers and grab the BOSS controller.
racadm storage get controllers | grep -i ahci > /tmp/all_ctrls.txt
for ctrl in `cat /tmp/all_ctrls.txt`;do if [[ `racadm storage get controllers:$ctrl -p Name | grep -i boss` ]];then boss_ctrl=$ctrl;fi;done
# Configure RAID
##BOSS SSD drives are of form factor M.2. Capture the m.2 for factor physical disks
racadm storage get pdisks > /tmp/all_disks.txt
racadm storage get pdisks:$disk -p FormFactor | grep -i 'm.2'
##Create a VD (raid 1) on the two BOSS PDs
racadm storage createvd:$boss_ctrl -rl r1 -name boss_ssd -pdkey:${boss_disks[0]},${boss_disks[1]}
# Change boot order in bios to boot from.
racadm set BIOS.BootSettings.HddSeq <AHCI controller> && /opt/dell/srvadmin/sbin/racadm set BIOS.BootSettings.HddFailover Enabled