Scalable XenApp in the Cloud

I previously posted how to create a XenApp 5.0 server and a XenApp 6.0 server
in Amazon EC2. A one-off server is good for starters, but you might
eventually want to build a “scalable” XenApp farm in the cloud. Having a XenApp farm that scales requires that the components of XenApp be broken out and install on their own servers. Those components being the License Server, Database Server, XenApp Server, XML Server and Web Interface Server. You will also need a Windows Domain Controller. A complete set of XenApp farm AMI’s have been created for your use, in our Citrix C3 Blueprints section of the Citrix Community site.

The following are the instructions to install the components of a scalable XenApp farm in Amazon EC2. The instructions are for the Amazon EC2 Cloud, although they could be adapted for use with any cloud provider. Note: These instructions are for the Amazon EC2 cloud; however, you may want to install these AMI’s inside of the Amazon VPC for tighter security.

Domain Controller (dc.xa6.com)

  • Launch Amazon AMI for W2K8R2
  • Right-Click to get administrator password using your key
  • RDP to the instance
    • From your local computer command prompt, mstsc /console
  • Change the password:
    • Administratrive tools -> Computer Management -> Users -> Administrator -> right click -> Set Password
  • Set Ec2Config Service settings:
    • Program Files -> Amazon -> Ec2ConfigSetup -> Ec2ConfigServiceSettings.exe
    • Uncheck (disable) set computer name
    • Uncheck (disable) set password
  • Set Computer Name
    • My Computer –> right click –> Properties –> Computer Name –> Change –> dc
  • Use dcpromo to turn it into a Domain Controller
  • Create a new forest xa6.com
  • Get the internal IP Address – this will be used by all the other XenApp AMI’s as the DNS address

License Server (lic.xa6.com)

  • Launch Amazon AMI for W2K8R2
  • Right-Click to get administrator password using your key
  • RDP to the instance
    • From your local computer command prompt, mstsc /console
  • Change the password:
    • Administratrive tools -> Computer Management -> Users -> Administrator -> right click -> Set Password
  • Set Ec2Config Service settings:
    • Program Files -> Amazon -> Ec2ConfigSetup -> Ec2ConfigServiceSettings.exe
    • Uncheck (disable) set computer name
    • Uncheck (disable) set password
  • Set Computer Name
    • My Computer –> right click –> Properties –> Computer Name –> Change –> lic
  • Set DNS address in Network Settings to point to the dc.xa6.com internal IP Address
  • Join the xa6.com domain
  • Download the XenApp 6.0 .iso and mount with Virtual Clone Drive
  • Install XenApp Licensing
  • Apply License file
  • Create an Amazon Volume, and assign drive letter D:
  • Copy the XenApp 6.0 .iso and Virtual Clone Drive to drive D:
  • Create an Amazon Snapshot for drive D:
    • Name it Citrix XenApp 6.0

Database Server (db.xa6.com)

  • Launch Amazon AMI for W2K8R2
  • Right-Click to get administrator password using your key
  • RDP to the instance
    • From your local computer command prompt, mstsc /console
  • Change the password:
    • Administratrive tools -> Computer Management -> Users -> Administrator -> right click -> Set Password
  • Set Ec2Config Service settings:
    • Program Files -> Amazon -> Ec2ConfigSetup -> Ec2ConfigServiceSettings.exe
    • Uncheck (disable) set computer name
    • Uncheck (disable) set password
  • Set Computer Name
    • My Computer –> right click –> Properties –> Computer Name –> Change –> lic
  • Set DNS address in Network Settings to point to the dc.xa6.com internal IP Address
  • Join the xa6.com domain
  • Do not install XenApp on this server
  • Start Services: SQL Server, SQL Server Agent, SQL Server Browser (Set to automatic)
  • Launch Microsoft SQL Server Management Console
    • Database -> right click -> new -> xenappdb

XenApp Server (xa1.xa6.com)

  • Launch Amazon AMI for W2K8R2
  • Right-Click to get administrator password using your key
  • RDP to the instance
    • From your local computer command prompt, mstsc /console
  • Change the password:
    • Administratrive tools -> Computer Management -> Users -> Administrator -> right click -> Set Password
  • Set Ec2Config Service settings:
    • Program Files -> Amazon -> Ec2ConfigSetup -> Ec2ConfigServiceSettings.exe
    • Uncheck (disable) set computer name
    • Uncheck (disable) set password
  • Set Computer Name
    • My Computer –> right click –> Properties –> Computer Name –> Change –> xa1
  • Set DNS address in Network Settings to point to the dc.xa6.com internal IP Address
  • Join the xa6.com domain
  • Creat a volume from the snapshot created previously
  • Attach and mount the volume to drive letter d:
  • Install XenApp
    • Do not install XML Integration
    • Join Database -> db.xa6.com, xenappdb
  • Create a farm (xa6farm)
  • Publish applications
  • Configure Policy
    • Launch Desktop Delivery Controller
    • DDC -> Policies
    • License server hostname -> lic
    • License server port -> 27000
    • Trust XML requests
    • XenApp product edition (should match license)
    • XML Server and port
    • Update policy
      • Launch command prompt as administrator
      • gpupdate /force

XML Server (xml.xa6.com)

  • Launch Amazon AMI for W2K8R2
  • Right-Click to get administrator password using your key
  • RDP to the instance
    • From your local computer command prompt, mstsc /console
  • Change the password:
    • Administratrive tools -> Computer Management -> Users -> Administrator -> right click -> Set Password
  • Set Ec2Config Service settings:
    • Program Files -> Amazon -> Ec2ConfigSetup -> Ec2ConfigServiceSettings.exe
    • Uncheck (disable) set computer name
    • Uncheck (disable) set password
  • Set Computer Name
    • My Computer –> right click –> Properties –> Computer Name –> Change –> xml
  • Set DNS address in Network Settings to point to the dc.xa6.com internal IP Address
  • Join the xa6.com domain
  • Creat a volume from the snapshot created previously
  • Attach and mount the volume to drive letter d:
  • Install XenApp
    • Select XML Integration
  • Register XML on port 8080
    • Run command prompt as administrator
    • ctxxmlss /u
    • ctxxmlss /r8081
    • restart XML service
  • Configure and join the xa6farm & database on xa1.xa6.com
    Note: re-run discovery on the DDC to make sure it shows up in the farm
  • To specify the data-collector
    • DDC -> XenApp -> Farm -> zones -> Default zone -> “Most Preferred” is the data collector

Web Interface (wi.xa6.com)

  • Launch Amazon AMI for W2K8R2
  • Right-Click to get administrator password using your key
  • RDP to the instance
    • From your local computer command prompt, mstsc /console
  • Change the password:
    • Administratrive tools -> Computer Management -> Users -> Administrator -> right click -> Set Password
  • Set Ec2Config Service settings:
    • Program Files -> Amazon -> Ec2ConfigSetup -> Ec2ConfigServiceSettings.exe
    • Uncheck (disable) set computer name
    • Uncheck (disable) set password
  • Set Computer Name
    • My Computer –> right click –> Properties –> Computer Name –> Change –> xml
  • Set DNS address in Network Settings to point to the dc.xa6.com internal IP Address
  • Join the xa6.com domain
  • Creat a volume from the snapshot created previously
  • Attach and mount the volume to drive letter d:
  • Install Web Interface
  • Launch Web Interface Management:
    • Create site -> point server farm to xml.xa6.com port 8080
  • Install Secure Gateway according to these instructions
  • Change Secure Access to Gateway Direct
  • Grab an Elastic IP Address from Amazon and assign it to this server

Additional XenApp Server (xa2, xa3, xa4, etc).

  • Install XenApp Server
  • Join farm at xa1.xa6.com

It’s powerful!