如何自动化ISO安装(iDrac for DELL服务器)?

时间:2017-02-15 12:15:56

标签: user-interface automation ui-automation

我需要在Dell服务器上自动化ISO安装。对于这样的系统,我们有自己的主机和另一个用于iDrac管理界面的ip。

我需要自动化的流程是:

  1. 将USB与ISO DD映像连接到系统
  2. 重新启动主机(可以直接通过ssh或连接到主机的iDrac虚拟控制台完成)
  3. 重新启动后,我没有与主机的ssh连接,但在KVM(虚拟控制台)中,我仍然可以看到重启过程并与之通信。例如按 F2 F11
  4. 将BIOS设置更改为从USB启动,并通过填写所有必需参数来完成安装。
  5. 为此我尝试使用pywinauto(我们有一个RobotFramework + Python2.7),但我面临的问题是KVM(虚拟控制台)被识别为一个窗口(没有子项或其他控件) 。 所以我可以键入键,如: ENTER SPACE 箭头(向上向下向左 TAB F2 F11 ...但我无法获取或阅读内容在屏幕上显示的控制台,强制我使用硬编码步骤并在步骤之间使用睡眠。

    我认为可以帮助的其他东西是通过SSH和racadm api连接到iDrac以尝试获取该内容,但我找不到提供此类信息的子命令。

    所以我没有选择,我知道其他一个名为Sikuli的工具,它使用了我以前用来自动化iOS的图像识别,我发现它的可靠性很难被信任,所以我不打算再试一次。

    请告知是否有可以提取该控制台内容的工具。 顺便说一句,控制台可以使用不同的插件类型打开,例如:Native,Java,Html5(仅限iDrac 8+),即使使用Html5,包含该控制台的控件也是<canvas>我真的不能从中提取任何东西(除此之外我需要覆盖旧版本的iDrac)

3 个答案:

答案 0 :(得分:1)

我为戴尔工作。有几种选择。最简单的方法是从脚本中使用远程racadm。您可以在任何Windows或Linux计算机上安装racamd。您可以使用racadm显示引导顺序,然后更改它并引导主机。

http://topics-cdn.dell.com/pdf/idrac7-8-lifecycle-controller-v2.30.30.30_Reference%20Guide4_en-us.pdf

racadm -r <idrac-ip> -u <user> -p <passwd> get BIOS.BiosBootSettings
racadm -r <idrac-ip> -u <user> -p <passwd> set BIOS.BiosBootSettings.HddSeq
racadm -r <idrac-ip> -u <user> -p <passwd> serveraction powerup

其他选项是wsman和redfish,您可以在戴尔技术中心维基上了解这些选项http://de.community.dell.com/techcenter/w/wiki

答案 1 :(得分:0)

选择f11启动管理器,然后单击shot bios菜单  然后选择可启动的USB。它正在做自动

答案 2 :(得分:0)

1)将所需的iso放在Windows共享上

2)在工作站上安装racadm工具

https://www.dell.com/support/home/us/en/04/drivers/driversdetails?driverid=8gmf6

3)命令行,输入iDRAC命令以将共享iso挂载到要安装iso内容的服务器上 “ racadm -r remote_machine_iDRAC_IP -u idrac_user -p idrac_password remoteimage -c -u remote_share_user -p remote_share_passwd -l //远程共享IP / iso /”

4)“ racadm -r remote_machine_iDRAC_IP -u idrac_user -p idrac_password remoteimage -c -u remote_share_user -p remote_share_passwd设置idrac.ServerBoot.FirstBootDevice VCD-DVD”

5)“ racadm -r remote_machine_iDRAC_IP -u idrac_user -p idrac_password remoteimage -c -u remote_share_user -p remote_share_passwd服务器操作电源重启/加电” 如果机器已启动,请使用电源循环;如果机器已关闭,请使用电源循环。

连接到iDRAC控制台时,它应该引导至OS安装屏幕(假设iso是可引导映像)。

6)执行安装,然后在OS部署后重新启动它之前,先断开已安装的iso: “ racadm -r remote_machine_iDRAC_IP -u idrac_user -p idrac_password remoteimage -d”