I recently wrote a blog post on how to migrate an on-prem VM to AWS as an EC2 instance using Veeam. At the end of the post I had mentioned that I initially was unable to RDP into the new instance once it was restored into AWS because of an error message saying that The function requested is not supported.
After some digging into this error message, it looked like running Windows Update could be a simple fix to this issue. I knew that AWS has some capabilities around running PowerShell against EC2 instances, so I figured it may be easy enough to get this EC2 instance to run some updates, which would hopefully fix the RDP error. I found some documentation on using AWS System Manager to do this and attempted to give it a go. I opened up the EC2 service in my AWS console and found the System Manager -> Run Command option.
Within the System Manager, I clicked the Run a Command button, which gave me a list of different commands that I could possibly run against an EC2 instance.
Somewhere within that list, I found the option to use the AWS-RunPowerShellScript command. Below the list of commands was also an option to select the EC2 instance to target. I pulled that drop down and my heart sank when I realized the newly restored instance was not listed!
Turns out that I hadn’t full prepared in my mind for the possibility of needing something like this after performing the restore into AWS. Looking at the AWS documentation, I realized that the SSM Agent is needed to run these commands, and per AWS:
SSM Agent is installed by default on Windows Server 2016 instances and instances created from Windows Server 2003-2012 R2 AMIs published in November 2016 or later.
This EC2 instance had been restored from an on-prem backup, and therefore did not already contain the SSM Agent as an EC2 instance deployed from within AWS typically would. In this case, I ended up both installing the agent in the on-prem server using these instructions and running Windows Updates, running the backup again and then going through the restore to AWS process one more time.
After the second restore, I was both able to access the restored EC2 instance via RDP, as well as see the server listed as one of the instance available on which to run a command.
The restore to AWS functionality within Veeam 9.5 U4 is a great addition to the product, but like most other things concerning backup and DR, a little planning can go a long way. Yes, the EC2 instance will have all the same bits once restored into AWS, but are there any additional bits that may be necessary for it to run optimally in the cloud? The SSM Agent is certainly not a requirement for an EC2 instance to run within AWS, but it does allow for extra functionality that may come in handy. While it is probably the case in most scenarios that a VM can be converted to EC2 and run fine without any extra tweaking, putting a bit of thought and planning into what could possibly either be necessary or at least helpful once restored into AWS will only prove to make that jump to running your on-prem VM in the cloud a smoother process.