Elastic Beanstalk Migration Assistant Script

On Dec 19th 2020 AWS announced a new script you can clone from github that lets you migrate your IIS applications into elastic beanstalk with ease.

The annoucement is here: https://aws.amazon.com/about-aws/whats-new/2019/12/aws-elastic-beanstalk-launches-windows-web-application-migration-assistant/

Key take aways are:

  • It’s open source licensed under Apache 2
  • It has been released under awslabs
  • It can migrate an entire website and its config subject to the below dependencies

The scripts main dependencies are listed as:

  1. Internet Information Services (IIS) version 8.0 or above running on Windows Server 2012 or above
  2. MS PowerShell version 3.0 or above
  3. Microsoft Web Deploy version 3.6 or above
  4. AWSPowerShell module for MS PowerShell
  5. .NET Framework 4.x, 2.0, 1.x or .NET Core 3.0.0, 2.2.8, 2.1.14
  6. WebAdministration module for MS PowerShell. You can check for this dependency by invoking PowerShell command “Import-Module WebAdministration”
  7. The server needs full internet access to AWS.

With the main workflow as:

Here’s an overview of the migration assistant’s workflow:

  1. Discover local websites.
  2. Select site to migrate.
  3. Discover database connection strings.
  4. Update database connection strings.
  5. Generate Elastic Beanstalk deployment bundle.
  6. Deploy application to Elastic Beanstalk.

I have yet to test this script myself so cannot comment on its ease of use. Would be keen to hear any feedback from your experiences if you use it.

Paul.