Updated 10/01/2017: Adding the following two sections: “Updating Nano Server with HPE Drivers”, “Applying Latest Windows Updates”, and “Adding Nano Server Roles and Features”.
Introduction
With the release of Windows Server 2016 and System Center 2016, Microsoft also released the first version of Nano Server.
In the previous post, I showed you how to create a reusable bootable USB to deploy Nano Server on physical machine.
In this post, I will show you how to install Nano Server on HPE ProLiant Gen9 servers by following this plan:
- Updating HPE Firmware and System Components
- Installing Nano Server on HPE ProLiant Servers
- Managing Nano Server using Windows PowerShell
- Updating Nano Server with HPE Drivers
- Applying Latest Windows Updates
- Adding Nano Server Roles and Features
- Verifying Nano Server Roles and Features
Before we start with the installation, you need to make sure you have downloaded the latest Service Pack for ProLiant (SPP) version including HPE Intelligent Provisioning.
Intelligent Provisioning V2.50 supports Microsoft Windows Server 2016 and Microsoft Windows Nano Server 2016.
Updating HPE Firmware and System Components
Once you downloaded the media, you need to update the UEFI boot order and set it to boot from USB instead of hard drive or network.
Boot to USB and update the Firmware using the Service Pack for ProLiant media.
Once done, reboot the server, boot to USB and then run the Intelligent Provisioning Recovery Media to update to version 2.50.
Installing Nano Server on HPE ProLiant Servers
Reboot the server first and login to Intelligent Provisioning by pressing F10, and then Click Configure and Install.
Select the System Profile as Maximum Performance, because this node will be configured as Nano Hyper-V host, then select the desired Target Controller and Click Continue. In my case, I am using HP embedded Dynamic Smart Array B140i with 2X120GB SSD as RAID 1 for the OS.
Select OS Family: Microsoft Windows and make sure you inserted the Microsoft Windows Server 2016 DVD/ISO media and then Click Continue.
In the next screen, Provide the Operating System Information by selecting Windows Server 2016 Datacenter Nano as shown in the next screenshot.
Enter the computer Name, administrator password and then click Continue.
In Step 4, Review the summary details and click Continue.
The OS installation will Kick Off… Sit back, relax and get cup of coffee while Nano Server is being deployed! But you will not have much time to drink your coffee , Nano deployment will take just 7 minutes, tiny OS.
The server will reboot and Windows Server OEM drivers will automatically be installed as shown in the next screenshot.
Once the drivers are installed, the server will reboot and you will be instructed to change the administrator password from the Recovery Console.
Managing Nano Server using Windows PowerShell
Once you login to Nano Server Recovery Console, you need to set a static IP address if you don’t have DHCP server in place.
Select >Networking, then select a network adapter to configure.
Press F11: IPv4 Settings and then set the IP address by toggling the NIC with F4 and disabling DHCP.
Once the server is reachable over the network, you can proceed and start managing Nano Server instance using PowerShell Remoting.
In order to do so, open Windows PowerShell and run the following commands.
Note: Update the IP address according to your environment.
#region NanoServer Remote Management #Workgroup environment; we need to modify TrustedHosts list Set-item wsman:localhost\client\trustedhosts -value 172.16.19.* -Force dir WSMAN:\localhost\client\trustedhosts $NanoIP = "172.16.19.21" $Session = New-PSSession -cn $NanoIP -cre Administrator $Session | Enter-PSSession cd / $IPType = "IPv4" $DNSIP = "8.8.8.8" $adapter = Get-NetAdapter | ? {$_.Status -eq "up"} $interface = $adapter | Get-NetIPInterface -AddressFamily $IPType If ($interface.Dhcp -eq "Disabled") { Set-DnsClientServerAddress -InterfaceAlias $interface.InterfaceAlias -ServerAddress $DNSIP -Verbose } ping bing.com #endregion
Above command will set the DNS server on the interface which is configured with Static IP address.
Updating Nano Server with HPE Drivers
In the following section we will copy the latest HPE drivers from the Service Pack for ProLiant (SPP) that we downloaded earlier, and then update all the drivers.
When you mount the SPP ISO, you can see a folder called “WIN_DRV”, copy that folder to your management machine and rename it if you want.
This folder contains all the latest and certified Windows drivers for HPE Gen 9 Servers.
Open Windows PowerShell and run the following commands:
#Update the IP address according to your environment.
$NanoIP = "172.16.19.21"
$Session = New-PSSession -cn $NanoIP -cre Administrator
Copy-Item -ToSession $Session -Path D:\NanoServer\HPE-SPP-10.60 -Destination C:\ -Recurse -Force
$Session | Enter-PSSession
cd /
In order to install the drivers, we will login to Nano Server using PowerShell remote session and then use “pnputil.exe“. You can install the drivers individually or all of them. For example, assuming the driver pack shown above is extracted to c:\HPE-SPP-10.60 (in this example), you can install all of them with the following command:
pnputil.exe /add-driver c:\HPE-SPP-10.60\*.inf /subdirs /install
This will recursively install all the drivers automatically for you.
If you want to install just a single driver, use the following command instead:
pnputil.exe /add-driver c:\HPE-SPP-10.60\<driver>\<filename.inf> /install
In this example, we will install all the drivers as shown in below screenshot and then reboot the system.
Applying Latest Windows Updates
In the next step, we will update Nano Server by installing the latest Cumulative Update for Windows Server 2016. The instructions can be found here. We have 6 different options to integrate, install and apply the latest Windows Updates. In this example, we will use Option 4: Apply the cumulative update to a running Nano Server. But before doing so, you need to download the Servicing Stack Update for Windows Server 2016 (KB3199986) including the latest cumulative update. As of this writing, the latest Cumulative Update is (KB3213522).
Visit the Microsoft Update Catalog to download each of these update packages:
- http://www.catalog.update.microsoft.com/Search.aspx?q=KB3199986
http://www.catalog.update.microsoft.com/Search.aspx?q=KB3213522
After downloading the .msu files from the Microsoft Update Catalog, save them to a local directory on your management machine such as C:\ServicingPackages.
Then use the EXPAND utility to extract the .cab files from the .msu files into separate directories and copy the .cabs into a single folder.
Next, you will need to copy the extracted .cabs file locally on the Nano Server. If you’re applying a servicing stack update, please make sure to restart the server after applying the servicing stack update before applying the latest cumulative update.
Open Windows PowerShell and run the following commands:
#Update the IP address according to your environment. $NanoIP = "172.16.19.21" $Session = New-PSSession -cn $NanoIP -cre Administrator Copy-Item -ToSession $Session -Path C:\ServicingPackages\ -Destination C:\ -Recurse -Force $Session | Enter-PSSession cd / # Apply the servicing stack update first and then restart Add-WindowsPackage -Online -PackagePath C:\ServicingPackages\Windows10.0-KB3199986-x64.cab Restart-Computer; exit # After restarting, apply the cumulative update and then restart $Session = New-PSSession -cn $NanoIP -cre Administrator $Session | Enter-PSSession cd / Add-WindowsPackage -Online -PackagePath C:\ServicingPackages\Windows10.0-KB3213522-x64.cab Restart-Computer; exit
To confirm that all updates are installed successfully, you can connect to Nano Server and run the following commands:
#Update the IP address according to your environment. $NanoIP = "172.16.19.21" $Session = New-PSSession -cn $NanoIP -cre Administrator $Session | Enter-PSSession cd / #Get a list of installed updates Get-WindowsPackage -Online | Where-Object {$_.ReleaseType -eq "Update"}
Adding Nano Server Roles and Features
Once Nano Server is updated, we will proceed by installing the necessary roles and features using the DISM command.
In order to do so, we will copy the Packages folder from the local ISO media to Nano Server using the following command:
Copy-Item -Path D:\NanoServer\Packages\ -Destination C:\ -Recurse -ToSession $Session -Force
As mentioned earlier, we are installing Nano Server on bare-metal machine and this server will function as Hyper-V host, failover clustering and we will manage it using System Center Virtual Machine Manager (SCVMM).
So we will install the following 5 packages:
- Microsoft-NanoServer-Host-Package.cab
- Microsoft-NanoServer-FailoverCluster-Package.cab
- Microsoft-NanoServer-SCVMM-Package.cab
- Microsoft-NanoServer-SCVMM-Compute-Package.cab
- Microsoft-NanoServer-Storage-Package.cab
Note: If you are going to manage Nano server with VMM and you added Microsoft-NanoServer-SCVMM-Compute-Package, then do not add Microsoft-NanoServer-Compute-Package for the Hyper-V role, because this server will be managed by VMM and has already the compute option.
Open Windows PowerShell, then connect to Nano Server session and run the following commands:
#region Install NanoServer Roles and Features $NanoIP = "172.16.19.21" $Session = New-PSSession -cn $NanoIP -cre Administrator $Session | Enter-PSSession cd C:\Packages\ Dism /Online /Add-Package /PackagePath:C:\Packages\Microsoft-NanoServer-Host-Package.cab Dism /Online /Add-Package /PackagePath:C:\Packages\en-US\Microsoft-NanoServer-Host-Package_en-US.cab Dism /Online /Add-Package /PackagePath:C:\Packages\Microsoft-NanoServer-FailoverCluster-Package.cab Dism /Online /Add-Package /PackagePath:C:\Packages\en-US\Microsoft-NanoServer-FailoverCluster-Package_en-US.cab Dism /Online /Add-Package /PackagePath:C:\Packages\Microsoft-NanoServer-SCVMM-Package.cab Dism /Online /Add-Package /PackagePath:C:\Packages\en-US\Microsoft-NanoServer-SCVMM-Package_en-US.cab Dism /Online /Add-Package /PackagePath:C:\Packages\Microsoft-NanoServer-SCVMM-Compute-Package.cab Dism /Online /Add-Package /PackagePath:C:\Packages\en-US\Microsoft-NanoServer-SCVMM-Compute-Package_en-US.cab Dism /Online /Add-Package /PackagePath:C:\Packages\Microsoft-NanoServer-Storage-Package.cab Dism /Online /Add-Package /PackagePath:C:\Packages\en-US\Microsoft-NanoServer-Storage-Package_en-US.cab Restart-Computer; exit #endregion
Verifying Nano Server Roles and Features
When restarting Nano Server, the console will display “Updating your system” as shown in the following screenshot.
Afterward, connect to Nano Server remote session and use the “Dism /online /get-features” command to confirm the available packages on the system.
Last but not least, you can login to Nano Recovery Console and confirm it’s running as VM host.
Thanks for reading!
Cheers,
-Ch@rbel
Hi Charbel,
Thanks for the article, it’s gotten me part of the way. Have you tried to deploy Nano Server to the internal SD card in a Gen9? I get to the point where it restarts after deploying the drivers but get a 0xc000000f error on boot up.
Stu
The Nano deployment on SD card is similar to HDD or SSD.
The steps for configuring the server to use the MicroSD card (32GB) are listed below. It
is assumed that the Micro SD card is already installed in the HPE ProLiant server’s internal Micro SD slot.
1. Log on to the iLO of the target HPE ProLiant Server using a Web browser.
2. Open an Integrated Remote Console (IRC) session:
a. On the iLO Overview screen, click the “.NET” or “Java” link, whichever you prefer, to open an IRC session.
b. Follow the prompts to complete the connection
3. Reboot the server and press the F9 System Utilities option.
4. At the System Utilities menu, enable the Internal SD Card Slot as follows: 4 times to return to System Utilities menu.
a. Select System Configuration
b. Select BIOS/Platform Configuration (RBSU)
c. Select System Options
d. Select USB Options
e. Select Internal SD Card Slot and set to “Enabled”.
f. Press F10 to save and
g. Select Reboot the System.
The internal Micro SD card is now ready for deployment.