每当土豪公司的服务器到手了之后,得刷固件,做RAID,安装操作系统吧,想想就头大。
这次到了N台DELL的PowerEdge 系列的服务器,刚好Ansible可以发挥作用了。
纵观现在的服务器,从以前闭源的管理系统,如DELL的OpenManage和iDRAC、华为的iBMC、惠普的OneView和iLO、l联想的XClarity和XClarity Controller 嵌入式管理、IMM2(收购自IBM的 SystemX PC Server系列) 等等,都在积极拥抱开源自动化工具,与Ansible,chef等开源软件都有不同程度的整合及支持。
先拿台DELL PowerEdge 2U机架服务器玩玩~~
工欲善其事必先利其器
要开干了,我们得准备一下家伙:
- Ansible >= 2.2
- Python >= 2.7
- Dell EMC OpenManage Python SDK
- iDRAC with enterprise license
DellEMC OpenManage Python SDK(OMSDK)是一个python库,可帮助开发人员和客户自动化PowerEdge服务器的生命周期管理。 OMSDK模块利用基于DMTF Redfish标准的iDRAC REST API以及用于配置,部署,更新和监控PowerEdge服务器的WS-Man和SNMP协议。此外,OMSDK还支持监控和查询PowerEdge模块化基础架构(M1000e,VRTX和FX2)的库存信息。
戴尔EMC OpenManage Ansible Modules允许数据中心和IT管理员使用RedHat Ansible来通过利用内置于集成戴尔远程访问控制器(IDRAC)中的管理自动化功能,实现戴尔EMC PowerEdge服务器(第12代PowerEdge服务器及以后版本)的配置、部署和更新。
所有Dell EMC PowerEdge第12代及更高版本的PowerEdge服务器,以及Dell EMC PowerEdge M1000e,Dell EMC PowerEdge VRTX和Dell EMC PowerEdge FX2机箱的机箱管理控制器
起步条件:
- iDRAC 7/8,固件版本为2.41.40.40或更高版本
- iDRAC 9,固件版本3.00.00.00或以上
看了这段介绍,感觉很有高大上。
就是说你要玩这个,iDRAC的版本必须符合上述要求,不然就得先升级iDRAC的固件版本。
这里假设你已经升级完毕,这里放上其中一台已经升级完毕的一张图,供参考:
安装DellEMC OpenManage Python SDK (OMSDK)
克隆代码到运行ansible的机器,一般是运维的笔记本或者是工作站。
先安装依赖包
1 | pip install -r https://raw.githubusercontent.com/dell/omsdk/master/requirements-python2x.txt |
安装最新的稳定omsdk版本
1 | pip install omsdk |
安装最新的OM稳定驱动程序版本
1 | pip install omdrivers |
查看安装情况
1 | root@Ansible:/opt# pip list |grep om |
安装Dell-EMC-Ansible-Modules-for-iDRAC
1 | root@Ansible:/opt# git clone https://github.com/dell/Dell-EMC-Ansible-Modules-for-iDRAC |
就这么简单,就安装完咧~,下面可以开始玩耍了。
例如刚拿到一台机器,得看看各固件版本
Playbook如下:
1 | - hosts: dell |
输出结果如下:
1 | root@Ansible:/opt/Dell-EMC-Ansible-Modules-for-iDRAC/examples# ansible-playbook -vvv getfirmwareinventory.yml |
可以看到返回的信息是很详细的。
看来广阔天地,大有作为啊。