Installing Server 2016 on a HP ML10 v2

After a sort out of my loft, I discovered my long forgotten HP ML10 v2 server that was part of my initial home lab setup (before it went all Mac Mini), so I thought i’d fire it up and see if I could get Server 2016 on a HP ML10 v2 installed.

HP ML10 v2As with my earlier attempts with Server 2012 R2, things weren’t as straightforward as the could be so I thought i’d document it for the blog.

Portions of the guide have been lifted and then modified from my earlier guide on installing Server 2012 R2 on a HP ML10 v2 as there are similarities between both setup procedures.

As before, i’m going to treat the install guide as an out of the box install – i.e, no additional drives installed in the ML10 v2.

Installing Server 2016 on a HP ML10 v2 – A Quick and Dirty Guide

This guide has been written for the standard version of Microsoft Windows Server 2016, although it’ll likely work for all flavours.

Additions to the base specification:

  • 1 x 2TB Samsung Hard Drive (any SATA drive will do)

As the server ships in bare-bones configuration, i’m using the same 2TB Samsung drive as in my 2012 R2 install, although any small HDD or SSD would suffice in a test environment.

What you are going to need to install Server 2016 on a HP ML10 v2:

  • HP ProLiant Offline Array Configuration Utility
  • A Zalman Drive (any type will do)
  • USB Pen Drive (Any capacity but 2GB + is recommended)
  • HP Dynamic Smart Array B120i Drivers
  • Server Install DVD (or ISO)

Setting up the B120i Disk Controller

As the ML10 v2 is a very low cost server it does omit some handy features found on higher specced models. The biggest omission is lack of an inbuilt version of  HP Smart Storage Administrator.

HP Smart Storage Administrator is a small bootable partition that contains the management software to create, diagnose and troubleshoot disk arrays on the included B120i Controller. While its not included as a bootable option on the ML10 v2, it is downloadable from HP’s website.

The offline version of the software is referred to as the “Offline Array Configuration Utility” but this is functionally equivalent to the inbuilt version of the Smart Storage Administrator. The only real difference is how you boot into the environment.

Download the HP Offline Array Configuration Utility

Once downloaded, unzip it and drop the ISO into the _ISO directory on the Zalman drive. (If you don’t have a Zalman, you can still use the instructions in my 2012 R2 setup guide and do the same with a USB pen drive and the HP Utility).

All you need to do now is set the Zalman to Optical mode (O) and select the HP Offline Array Configuration Utility ISO then boot the server up from USB.

If you are interested in getting a Zalman drive, please check out my overview:

Setting up a disk array using HP ProLiant Offline Array Configuration Utility

Rather than reinvent the wheel, here is the link to the official HP user guide for configuring the disk controller using HP Smart Storage Administrator. Although the offline version is named slightly differently (Offline Array Configuration Utility instead of Smart Storage Administrator) once you have booted into the environment, the process is the same.

Download the HP Smart Storage Administrator User Guide from

If you work through the guide, you’ll be able to setup the array how you want it.

Download the HP Dynamic Smart Array B120i Drivers

Next you are going to need the controller drivers for Server 2016 on a HP ML10 v2. After a look around, i’ve not been able to find anything specific for Server 2016 so I tried the Server 2012 R2 versions using the following link and they worked fine for me. HP will likely release “official” versions at some point – when they do i’ll update the guide accordingly.

Download the HP Dynamic Smart Array B120i Drivers for Server 2012 R2

Download and extract the files to a USB pen drive as you are going to need to inject them during the server install.

Installing Server 2016 (and other variants)

The install from this point was straight forward. After copying the Server 2016 ISO to the _ISO directory on the Zalman, I booted the server to USB and let the drive do the rest.

As with the 2012 R2 guide, the installer failed to locate a disk drive due to the lack of controller drivers on the install DVD. Simply pop in the USB with the B120i Controller drivers, find them in the dialogue box and the install will continue as normal.

At the moment, i’ve just done the base install of Server 2016 on a ML10 v2 really to see if it would work. I’ll continue to play around with roles, especially the new features in HyperV 2016.

If you are looking for a Server 2012 R2 install guide for the ML10v2 – see my guide here

In Conclusion

It was fun digging the ML10v2 out of storage for my little experiment with Server 2016 on a HP ML10 v2 and once you’ve done the usual faff with the ProLiant Offline Array Configuration Utility it was a very standard setup.

The Zalman worked brilliantly, and ended up saving me some time by not having to go off and configure another HP USB Key drive for the ProLiant Offline Array Configuration Utility and an extra Easy2Boot USB drive for the Server 2016 ISO.

As I mentioned before, if you don’t have a Zalman drive of any sort, then you can follow the same step by step instructions in the 2012 R2 guide.

Below is a video showing a run through of a Server 2016 install – the only difference between this video and the HP ML10v2 install was the process pausing for the HP Dynamic Smart Array B120i Drivers.

2 Comments on "Installing Server 2016 on a HP ML10 v2"

  1. I found the move upto Server 2016 fantastic. I went from 2008 R2 to 2016 and have found 2016 to be fantastic in terms of speed on this little server. I haven’t got around to playing with 2012 R2 but compared to 2008 R2 I love the client backup features GUI.

    All I need to do now is upgrade the CPU as I’m streaming more now and require more CPU headroom for transcoding.

    • Hi Matthew,

      I know what you mean about CPU headroom – the low grade pentium in the ML10v2 really chugs when trying to do anything processor intensive. My Gen8 Microserver (Celeron powered) is running as a Plex host and that *really* struggles when doing anything fancy.

      At least with the ML10v2 you can go for a hotter running chip – the Microserver’s max TDP for 35W means that a very limited selection of alternatives exist.

Leave a comment

Your email address will not be published.