Creating a XenApp 6.0 Lab Using Amazon EC2

Not everyone has access to equipment at home or work to learn, experiment or test software. It often requires a pretty good chunk of money up front to get started – that won’t fly for everyone. For those who want access to fast, reliable and affordable computing power, the cloud is the perfect place to look. In this article we’ll cover building a 2 server lab to run Citrix XenApp 6.0 and a Domain Controller on Windows Server 2008 R2 on Amazon’s Elastic Computing Cloud (EC2).

Yes, Citrix offers pre-built AMIs for this task, but it doesn’t help learn the entire process of installing and configuring Citrix XenApp.

Download the PDF Version of this Tutorial Here

What You’ll Need

  • A connection to the internet.
  • An e-mail address.
  • A credit card.
  • Access to Citrix XenApp 6.0 Media (ISO)
  • An hour or two.

What We’re Going to Do

  • Using Amazon EC2, create 2 Instances running Windows Server 2008 R2 AMIs.
  • Configure an Elastic IP Address
  • Configure a Domain Controller
  • Install and Configure Citrix Licensing
  • Install and Configure Citrix XenApp 6.0 in a Single Farm/Zone Environment
  • Install and Configure Web Interface
  • Publish an Application

What We Won’t Be Doing

  • Secure Gateway/SSL Access
  • Multi-Zone Configuration

Creating an Amazon AWS Account

To get started, visit and create an account. You can use your regular account if you wish. You’ll need to provide a valid credit card number to complete the process.

Creating the Domain Controller Instance

Log into Amazon AWS using the username you just created and select the Amazon EC2 tab.

Select Launch Instance.











Select the Microsoft Windows Server 2008 R2 Base AMI


On the Instance Details page (part of the Request Instances Wizard), select Micro (Instance Type) and an Availability Zone close to your location. We’re selecting a Micro instance here because we’re only using it for a Domain Controller. Leave Launch Instances selected. Click Continue.

On the Advanced Instance Options page, you can leave all settings as they are and then click Continue.

On the Key/Value page, enter Role as they key and DomainController as the value.

Next, we’ll create a new Key Pair. EC2 uses key pairs to allow you to connect to your instances. Enter a key pair name of your choice, then select Create & Download your Key Pair. Keep this somewhere safe.

On the Configure Firewall page, select Create a New Security Group and name and describe it as you desire. Leave the rules alone for now; we’ll come back to that later. Click Continue.

You may now select Launch if all the settings shown are as you desire.

Select View your instances on the Instances page

You should then see a new instance, powered on, but without a name.

Select the empty section and edit it. Label the instance something like EIEC2-DC-01

In 15-30 minutes, we’ll come back to this instance. That amount of time is required for EC2 to generate a password for this instance.

Creating the Citrix XenApp Instance

Creating the instance required for the Citrix XenApp 6.0 server is nearly the same. Here are the exceptions:

  • Use a Large not Micro Instance.
  • The Role tag should have a key of CitrixXenApp
  • Use the existing Key Pair and Security Group
See Page 2 to Continue.

Published by

Roger Birong, Jr.

Roger Birong, Jr. is a Citrix Accredited Subject Matter Expert in Virtualization Technologies and a Citrix Certified Administrator for XenDesktop 3.0 Enterprise, XenApp 6.0, and XenServer 5.6. He has participated in the development of the Citrix Certified Enterprise Engineer curriculum (A15 in 2009, A25 in 2011)and currently works as a Citrix Systems Engineer for a Citrix Partner in Jacksonville, FL.

14 thoughts on “Creating a XenApp 6.0 Lab Using Amazon EC2”

  1. Thanks! This helps me a lot. You just helped me getting started on Cloud-computing. Thanks!
    I think it’s difficult to find out how much this will cost me, for at similar test-enviroment. Could you help me?

  2. What instance type and ami did you use for the machine running XenApp? I saw which one you chose for the DC, but not for the XenApp machine itself.

      1. Actually, as we’ve found out the pre-built XA6 AMIs are not event fully functional, as per our testing. So we decided to go from scratch, but, man we’ve found so many obstacles and little tricks that are completely absent from Citrix’s documentation that it has been pretty disheartening.

  3. Roger,

    Shouldn’t this step “Join the EC2.lab domain and reboot the instance.”


    “Join the EC2.local domain and reboot the instance” instead?

    1. Actually, either way, this step cannot be completed (joining the domain). I followed every step to the “T” and cannot join the DC in any way or manner. If this worked when you wrote it, amazon might changed the way they handle internal DNS queries/lookups since. Using the prvate ip of the DC instance as primary DNS and Google’s as its secondary doesn’t help. It simply doesn’t know what EC2.local or XA-DC or XA-DC.EC2.local is.

    2. Actually here’s the steps involved in “join such and such domain” that someone not familiar with process will need:

      * After you finish creating the domain and reboot, RDP to the DC instance again then go to Start > Administrative Tool > Active Directory Users and Computers.
      * Click on Users.
      * In the toolbar click on “Create a new user in the current container”. Follow steps to creating providing login name, a password, etc. Make sure the “force user to change password is deselected”.
      Ok. Done.

      * Now, when RDPto the XenApp instance, log in with EC2.local\Administrator (with the normal password to that machine).
      * In the Server Manager click on “Change System Properties”.
      * Click on Change
      * Click to select Domain. Then enter EC2.local. It should now prompt you with an username/password prompt. Enter the credentials you used when you created the user in the DC.
      * If successful it’ll prompt to reboot.

      Hope that helps.

  4. Hi, great start guide for beginners! I’m trying to access my Web Interface on my home installation which has a fixed IP address but no applications will start. I have used the alternate address command on my XenApp server because I read that in another guide that this should used. Got a hint or two for me to try?

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>