Some days ago, my colleague Claudia and I started to work on a new project: A greenfield deployment consisting of some well known building blocks: HPE ProLiant, HPE MSA, HPE Networking (now Aruba) and VMware vSphere. Nothing new for us, because we did this a couple times together. But this led us to the idea, to automate some tasks. Especially the configuration of the HPE ProLiants: Changing BIOS settings and configuring the iLO.
Do not automate what you have not fully understood
Some of the wisest words I have ever said to a customer. Modifying the BIOS and iLO settings is a well understood task. But if you have to deploy a bunch of ProLiants, this is a monotonous, and therefore error prone process. Perfect for automation!
Scripting Tools for Windows PowerShell
To support the automation of HPE ProLiant deployments, HPE offers the Scripting Tools for Windows PowerShell. HPE offers the PowerShell modules free for charge. There are three different downloads:
- iLO cmdlets
- BIOS cmdlets
- Onboard Administrator (OA) cmdlets
The iLO cmdlets include PowerShell cmdlets to configure and manage iLO on HPE ProLiant G7, Gen8 or Gen9 servers. The BIOS cmdlets does not support G7 servers, so you can only configure and manage legacy and UEFI BIOS for Gen8 (except DL580) and all Gen9 models. The OA cmdlets support the configuration and management of the HPE Onboard Administrator, which is used with HPEs well known ProLiant BL blade servers. The OA cmdlets need at least OA v3.11, whereby v4.60 is the latest version available. All you need to get started are
- Microsoft .NET Framework 4.5, and
- Windows Management Framework 3.0 or later
If you are using Windows 8 or 10, you already have PowerShell 4 respectively PowerShell 5.
Support for HPE ProLiant Gen9 iLO RESTful API
If you have ever seen a HPE ProLiant Gen9 booting up, you might have noticed the iLO RESTful API icon down right. Depending on the server model, the BIOS cmdlets utilize the ILO4 RESTful API. But the iLO RESTful API ecosystem is it worth to be presented in an own blog post. Stay tuned.
Documentation and examples
HPE offers a simple documentation for the BIOS, iLO and OA cmdlets. You can find the documentation in HPEs Information Library. Documentation is important, but sometimes example code is necessary to quickly ramp up code. Check HPEs PowerShell SDK GitHub repository for examples.
Time to code
I’m keen on it and curious to automate some of my regular deployment tasks with these PowerShell modules. Some of these tasks are always the same:
- change the power management and other BIOS settings
- change the network settings of the iLO
- change the initial password of the iLO administrator account and create additional iLO user accounts
Further automation tasks are not necessarily related to the HPE ProLiant PowerShell SDK, but to PowerShell, respectively VMware PowerCLI. PowerShell is great to automate the different aspects and modules of an infrastructure deployment. You can use it to build your own tool box.
- Fan health sensors report false alarms on HPE Gen10 Servers with ESXi 6.7 - May 11, 2020
- Missing Microsoft Teams calendar tab with on-premise Exchange - April 12, 2020
- Connecting to Exchange Online with PowerShell - February 26, 2020