Microsoft Workloads on AWS

How to set up Microsoft Visual Studio on Amazon EC2

AWS recently announced the general availability of license-included Visual Studio software on Amazon Elastic Compute Cloud (Amazon EC2) instances.

Setting up development environments with the necessary hardware specifications is a challenge that customers have faced for years. Providing the proper hardware to software developers is a balance between delighting employees and investing the right amount of money. If you underinvest, it is likely you will have to replace their hardware soon. If you overinvest, you will pay for underutilized hardware. Developers also must be provided with an Integrated Development Environment (IDE) to maximize software development efficiency.

By using license-included Visual Studio software on Amazon EC2 instances, software developers can write code in AWS using a highly available and secure environment. All they need is an internet connection, any laptop or desktop, and their credentials in order to continue their work, regardless of their current location. Customers can purchase fully compliant AWS-provided licenses of Visual Studio with a per-user subscription fee and assign them to their .NET software developers. You can provision instances based on your project needs using preconfigured Amazon Machine Images (AMIs) of that are provided by Amazon Web Services.

Instances can be started when your developers need them. They can be automatically stopped, as well as scaled up or down as needed, helping to optimize cost.

This offering is made possible by the new user-based subscriptions feature of AWS License Manager. Let’s review steps needed to set up your license-included Visual Studio software on an Amazon EC2 instance.

Prerequisites

To use the license-included Visual Studio on Amazon EC2, you must set up AWS Directory Service for Microsoft Active Directory (AWS Managed Microsoft AD) . Your users must either be managed by AWS Managed Microsoft AD or in your own Active Directory domain using a bidirectional trust with your  AWS Managed Microsoft AD).

The license-included Visual Studio on Amazon EC2 offering relies on Visual Studio subscriptions, which use a per-user licensing model. You need to carefully audit how many users have a Visual Studio subscription and on which Amazon EC2 instances they are using these subscriptions. The new user-based subscriptions feature in AWS License Manager leverages AWS Managed Microsoft AD to track users and license-included Visual Studio software on Amazon EC2 instances.

Walkthrough

To start using Visual Studio on Amazon EC2, you will need to complete the following steps:

  • Subscribe to a Visual Studio product in the AWS Marketplace
  • Configure AWS License Manager
  • Launch an Amazon EC2 instance with a user-based subscription
  • Connect to the instance with user credentials managed by AWS Managed Microsoft AD.

Step 1: Subscribe to a Visual Studio product in the AWS Marketplace

First, you need to subscribe to the Visual Studio Professional or Visual Studio Enterprise products provided by AWS in the AWS Marketplace. You only need to subscribe to each product once to be able to use it.

  1. Navigate to the AWS Marketplace console, choose Discover products and search for “Visual Studio”.
  2. Choose the relevant Visual Studio version you need (Professional or Enterprise). You will then be redirected to the subscription page.
    Subscribe to Visual Studio
  3. Review the information and choose Continue to Subscribe.
  4. Review and accept the Terms and Conditions of Amazon Web Services offer. When you choose Accept Terms, your subscription will be processed.
  5. Once the subscription request has been validated, you will need to enable remote desktop services and set up AWS License Manager.

Step 2: Subscribe to the Win Remote Desktop Services SAL product

Since your software developers will access Visual Studio on Amazon EC2 through Remote Desktop Services, you will need to associate Microsoft Remote Desktop Service Subscriber Access Licenses (SAL) in order to be compliant with Microsoft licensing terms.
All you need to do is subscribe to the “Win Remote Desktop Services SAL” product in the AWS Marketplace.

Afterwards, each time you assign a Visual Studio license to your developers, it will automatically assign them a “Win Remote Desktop Services SAL” license as well.

  1. Navigate to the AWS Marketplace console, select Discover products and search for “Remote Desktop Services” and choose it.
    Win Remote Desktop Service SAL On AWS Marketplace
  2. Review the information and choose Continue to Subscribe. Review and validate by choosing Subscribe.
  3. You will then be redirected to the AWS License Manager console. If you choose Dashboard in the navigation pane, a summary of the numbers of subscribed users to user-based subscriptions will be displayed. You can view all user-based subscription products supported by AWS License Manager in this list, even if you have not subscribed to that product.
    User based product list on AWS License Manager

Step 3: Configure AWS License Manager

Using Visual studio is possible with the new AWS License Manager user-based subscriptions feature. It enables AWS License Manager to use AWS Managed Microsoft AD to track and provide product licenses for specific users.

  • AWS License Manager can associate Visual Studio subscriptions only to users that exist in your AWS Managed Microsoft AD.
  • Each Amazon EC2 instance with license-included Visual Studio you create is automatically joined to your AWS Managed Microsoft AD domain.
  • AWS License Manager allows you to associate a user with an AWS-provided Visual Studio subscription to a license-included Visual Studio software on Amazon EC2 instance.
  • AWS License Manager uses your AWS Managed Microsoft AD to enforce that only the associated users can connect to a license-included Visual Studio software on Amazon EC2 instance.

First, you will configure AWS License Manager to use a specific AWS Managed Microsoft AD instance.

  1. Open the AWS License Manager console and choose Settings in the navigation pane.
    AWS Licesne Manager Settings Screen
    The first time you use this feature, you will be asked to create a service-linked role for User-based subscriptions in your account. Select I agree to give AWS License Manager permission to create a service-linked role in my account. Then choose Create.
    Create Service-Linked Role Dialog
  2. In the AWS Managed Microsoft Directory section, choose Configure. For AWS Managed Microsoft Active Directory name and ID, select the AWS Managed AD instance that you want AWS License Manager to use. For Product name and ID,  select the Visual Studio products you want to enable for users. Choose Configure.
    AWS License Manager Configure Microsoft Active Directory
  3. Wait until a message indicating that the configuration has completed appears. This may take several minutes.
  4. Choose View Products in the User-based subscriptions section of the navigation pane. There, you can check the Marketplace subscription status column of the Products table and the numbers of subscribed users for each product.
    View Products Status

Step 4: Launch a new Amazon EC2 instance

Now that AWS License Manager User-based subscriptions feature has been set up, you can create a license-included Visual Studio on Amazon EC2 instance using the preconfigured AMI. You can launch the creation of this instance both from the AWS Marketplace Subscriptions console or from the Amazon EC2 console. Here, we illustrate the procedure for the Amazon EC2 console:

  1. Navigate to the Amazon EC2 console and choose on Launch Instance.
  2. Enter a value for name to name to your instance.
  3. Enter “Visual Studio” in the search box in the Application and OS Images (Amazon Machine Image) section.
  4. Find the Visual Studio version you have subscribed to (Visual Studio Professional or Enterprise) and choose Select, and then Continue on the next screen.
  5. On the next screen Confirm changes to validate the change to the security group configuration and the IAM role.
  6. On the Launch an instance screen, update the following:
    Instance type – Select a Nitro-based instance that is not Graviton-based.
    Choose Edit on Network settings . For VPC, select a VPC that has connectivity to your AWS Managed Microsoft AD. For Security group, select a security group that permits connections to your AWS Managed AD. This security group also will need to allow RDP connection from your environment if you intend to connecting to the new instance using RDP (rather than by using AWS System Manager)
  7. Expand the Advance details section and select Choose an existing IAM role from your account, and choose an IAM role that allows Systems Manager functionality.

Once the new instance has launched, you can connect to it and start using Visual Studio.

Using Visual Studio

  1. You can connect to your Amazon EC2 instances by using remote desktop (RDP). There are two ways to connect using RDP: either connect using your remote desktop client or connect using the remote desktop feature of Fleet Manager, a feature of AWS Systems Manager.
  2. When asked for user credentials, use the user’s credentials from the AWS Managed AD.
  3. Once logged into the Amazon EC2 instance, you can open Visual Studio 2022 and begin writing code.
    Visual Studio Running on EC2 instance

Cleaning up

To avoid incurring future charges, you will need to follow the steps in the documentation to remove unneeded resources.

  1. Disassociate users and then unsubscribe these users
  2. Terminate running Amazon EC2 instances
  3. Remove AWS Managed AD from AWS License Manager

Conclusion

In this blog post, we have introduced the new user-based, license-included Visual Studio offering on AWS. With this new offering, customers can provision a fully-compliant, virtual machine on Amazon EC2 with Amazon-provided licenses for Microsoft Visual Studio Enterprise 2022 and Microsoft Visual Studio Professional 2022.Using the new instances, customers can provision development environments on-demand and scale them, according to their development needs.
For addtional information on how to set up and use Visual Studio on AWS, you can read this user guide and CLI documentation.


AWS can help you assess how your company can get the most out of cloud. Join the millions of AWS customers that trust us to migrate and modernize their most important applications in the cloud. To learn more on modernizing Windows Server or SQL Server, visit Windows on AWSContact us to start your modernization journey today.

Dror Helper

Dror Helper

Dror is a Sr. Microsoft Specialist Solutions Architect at AWS. He has been developing and architecting software for the last 20 years and when not writing code has worked with software companies on modernizing their existing legacy code while improving the way they develop software. In his current role Dror assist organizations to migrate and modernize their existing applications.

François Bouteruche

François Bouteruche

François Bouteruche is a Senior Developer Advocate at Amazon Web Services, based in Paris. He is a tech enthusiast and international conference presenter with a strong background around .NET development and DevOps philosophy and practices.