Since there is no real documentation regarding UAG deployment on Hyper-V, I will guide you through the installation and configuration steps.
First of all, you need to download the UAG deployment PowerShell script. This zip file which you will download, includes several .ini and .ps1 files.
Unfortunately there is no .ini file for Hyper-V and I had to try things to get the UAG running.
First there were a lot of failures like:
- UAG were deployed but settings, like API server, were not saved.
I started with the basic .ini file which deploys the UAG with three NIC’s. Since I have no management network in my test environment, the internal and management NIC were both in the same IP Range. This will fail. So I removed the management NIC from the .ini file.
- Deployment failed without any real error.
Happened really often. Just redeploy the app. The problem is, that the Hyper-V integration services need some time to start up.
- “UAG virtual appliance UAG failed to deploy”
Most times because the external IP is not set. In my environment, I need to add the MAC address to the DHCP agent to receive a public IP address. Make sure, UAG is running and you assigned the IP. IF you did this, you can ignore the failure.
Hyper-V ini file
So, if you downloaded the UAG deployment PowerShell script, you need to create a new .ini file and add the following content:
[General] #external IP settings $ip0=126.96.36.199 gateway0=188.8.131.52 netmask0=255..0.0.0 # you can add more than one route - comma "," separated routes0=192.168.40.0/24 192.168.40.200 #If you need the Management IP, just remove the # #Management IP settings #$ip1=172.16.0.1 #gateway1=172.16.0.254 #netmask1=255.255.0.0 #internal IP settings $ip2=192.168.40.200 gateway2=192.168.40.254 netmask2=255.255.255.0 routes2=0.0.0.0/0 184.108.40.206 # # UAG virtual appliance unique name (between 1 and 32 characters). # If name is not specified, the script will prompt for it. # name=UAG02 # # Full path filename of the UAG .vhdx virtual machine image # The file can be obtained from VMware # source=""M:\uagdeploy-220.127.116.11-14019369\uagdeploy\euc-unified-access-gateway-18.104.22.168-14019369_OVF10.vhdx"" # # Normally used for vSphere Data Store. In Hyper-V used for the virtual Disk Foldername # ds=Storage # # Network names - use the network names of the virtual switches you want to use # netInternet=External #netManagementNetwork=VM Network netBackendNetwork=Internal # # Setting honorCipherOrder to true forces the TLS cipher order to be the order specified by the server. This can be set on # UAG 2.7.2 and newer to force the Forward Secrecy ciphers to be presented first to improve security. # honorCipherOrder=true
If you want to deploy the UAG directly with certificates for SSL just take a look in the uag2-advanced.ini file.
The deployment will copy the .vhdx file to the path your current path in PowerShell. So navigate first to your location where you want to create the “Storage” folder with the copied .vhdx file in it.
Start the deployment
Use the following command to start the deployment:
uagdeployhv.ps1 -iniFile .\uag13-hyper-v.ini -rootPwd ‘Pa$$w0rd’ -adminPwd ‘Pa$$w0rd1’ -ceipEnabled ‘yes’
Always use the uagdeployhv script, since this is the only way to deploy the UAG on Hyper-V.
I named the .ini file “uag13-hyper-v.ini” and pasted it in the “uagdeploy” folder. Also make sure to use different passwords – for root and admin. Otherwise the deployment will fail.
If you start the deployment, the VM will be created and the .vhdx file will be copied to the new location. The VM will start soon and will show the following warning:
Deployment still in progress
After the script has deployed the VM successfully, the screen of the VM changed and no warning is shown anymore.
PowerShell script successful
Deployment finished – warning disappeared
If you receive this error:
Make sure that the UAG detected the network settings. In my case, I had to change the MAC address and restart the device. After that everything works fine.
The deployment checker evaluates if the VM is running and has the public IP assigned.
To configure the DNS settings of the UAG take a look at this post: