Propalms TSE Enterprise Deployment Server Sizing Version 6.5 Propalms Ltd. Published February 2011 Server Scaling and Sizing requirements for Enterprise scalable Propalms TSE deployment TSE Roles WEB and Load Balancer servers: Primary Database Server: Backup Database server: App Servers: SPR /DMZ-SPR: Minimum 2 GB RAM and Dual core P4 Preferably a dedicated server running Licensed SQL 2005 or higher. Can be run on a shared SQL server on the n/w. Same as for Native Terminal Services. Minimum 2GB RAM and 1.0 G Hz CPU Propalms uses MS RDP as the core protocol. Hence the scaling and sizing requirement for TS servers also applies to Propalms servers running the APPLICATION Role. Propalms Application role is the only role that requires higher resources as it will host user s RDP sessions running the published app. The other Propalms roles do not need higher resources and work efficiently on any modest hardware server specification. One can install the Propalms roles like WEB and Load-Balancer on TS servers but it is recommended to have it on separate servers.
Propalms TSE Team Recommendation Web Roles: One server is Mandatory but for redundancy and load sharing WEB role should be deployed on at least 2 servers. The Primary Web server should be a dedicated Web server having only the TSE WEB role installed on it. The 2nd and 3rd Web server role can be installed along with the secondary LoadBalancer servers. Note that HTTP connections are not persistent connections, the connection is stateless and per instance. With a Dual core P4 processor, it should be able to handle and serve up to 200-300 simultaneous logon connections. So at peak login time, depending on how many users connect to the web server at the same instance, will determine the CPU requirement of the Web server. On an average per core can handle 100-150 connections. It can handle more but performance will degrade with the number of concurrent connections going up. There should be another server running the WEB role with similar hardware specification. This 2nd Web server will serve as a fall back secondary Web server should the client fail to communicate with the Primary Web server. TSE internally also distributes the http download requests for TSE App icons and client install files to the other WEB servers available in the TSE team. Load Balancer (LB): One is Mandatory and for redundancy it should be installed on 1 or 2 more servers. The Primary LoadBalancer should be a dedicated server and for redundancy the LB role can be run along with the secondary WEB servers. The LB role does not have heavy resource requirement. The primary LB server spec should be similar to the Primary Web server. Note that Clients never make a direct connection with the LB server. LB server communicates with WEB and APP servers using RPC. Application Role: Two or more servers depending on the number of applications and users required. On a general note, TSE APP server hardware sizing requirement is similar to that of Microsoft Terminal services. But as MS recommends, it s a function of the application being published through TS and kind of resources made available within the session. So a true test is monitoring and recording server resource usage with each user session, running the published app. This will be the most correct method for sizing server specs for publishing user apps. Here are Microsoft s general recommendations and suggestions for sizing and scaling Terminal Servers. NOTE: This is just a reference guide. Propalms do not guarantee server sizing as the actual sizing of servers depends on the applications and resources made available to users within their Propalms Session. Always keep 10-15 % margin when finalizing the figures for number of users per TS server.
How many concurrent Remote Desktop Sessions can run on a single 32-Bit Windows Terminal Server? Generally anywhere between 5 and 100, depending on the following factors: 1. Speed, type and number or CPUs installed on the terminal server. 2. Amount of RAM installed in the terminal server. 3. Server's Host Operating System, i.e. Windows 2000, 2003 or 2008 server. 4. Client settings, i.e. local resource redirection, screen resolution & color depth. 5. Other services running on the terminal server, i.e. Active Directory, Exchange, SQL... (NOT recommended). 6. Bandwidth available for Terminal Services sessions (a main consideration for WAN connections). 7. End-user applications being used in each session, i.e. Microsoft Office, Acrobat Reader, Internet Explorer... How many concurrent Remote Desktop Sessions can run on a single Terminal Server running Windows Server 2003 x64 Edition? To scale-up higher than on x32 requires both RAM > 4GB and 4 or more CPUs, according to the "Terminal Services Scaling and Performance on x64-based Versions of Windows Server 2003" study performed by HP and Microsoft. Unisys also did a similar study on 64 Bit Terminal Server Scaling. That being said, with sufficient resources, Terminal Server running on Windows Server 2003, Standard x64 Edition could scale to >= 150 concurrent sessions on a single server, as there is no longer the 2GB Kernel Memory Limit. How many CPUs should I install on each terminal server? Generally anywhere between 1 and 4, depending on the following factors: 1. In a large server farm hosting thousands of sessions on 10s or 100s of servers, 2 CPU servers ideal. 2. In a very small environment hosting only a few sessions, i.e. < 10, a server with 1 CPU is usually adequate. 3. In certain environments 4 CPUs may be used, i.e. for CPU intensive applications or for virtualizing Terminal Servers on VMware ESX or other Hypervisor.
What do the terms "Scale-up" and "Scale-out" mean? 1. Scale-up means to add more resources to a server (i.e. additional CPUs or RAM) to be able to host more terminal services sessions. 2. Scale-out means to add more server nodes to a terminal server farm to be able to host more terminal services sessions. Which do you recommend, to "Scale-up" to a server with more CPUs or to "Scale-out" to more servers, and why? 1. I recommend scaling-up to 2 CPUs and 4GB or RAM, at which point I recommend scaling-out with an additional server node. 2. Scaling-out is recommended because terminal servers do NOT scale-up linearly, i.e. a 4 CPU server with 8GB of RAM will NOT host twice as many terminal server sessions as a 2 CPU server with 4GB of RAM. 3. Servers that accommodate 4 or 8 CPUs are much more expensive than those that accommodate 2 CPUs. 4. Servers with more than 4 CPUs or more than 4GB of RAM require Windows Server Enterprise Edition to be able to recognize the additional resources. Windows Server Enterprise Edition is much more expensive than Windows Server Standard Edition. Which operating system should I use for Terminal Server? The most efficient operating system for Terminal Services (Remote Desktop Services) is Windows 2008 Server and Windows 2008 R2. Windows Server 2008 R2 is 64bit only therefore you need to make sure your applications can run effectively in this environment before making a decision. Is there a program that will help me to choose the correct number and size of servers to host different software and a specified number of sessions? The following applications allow you to load-test terminal servers to see how well your specific applications scale. Some of these software programs need to be purchased therefore you may want to consider simply utilizing the built-in performance monitor within Windows Server in order to give you a basic assessment of resource usage. 1. Denamik Loadgen 2. Mercury LoadRunner
3. NRG AppsLoad 4. Scapa Technologies StressTest 5. Segue SilkPerformer 6. Tevron CitraTest VU 7. thingenius TLoad Band Width Calculation for User session through Propalms Propalms uses the RDP protocol to deliver user sessions. The actual bandwidth used for each session can change significantly due to application type, user type, local device redirection etc. There are various articles on Microsoft discussing the RDP bandwidth requirements. Like one listed below. http://www.microsoft.com/downloads/en/details.aspx?familyid=e4d25d08-ae40-4c5c-ac81- EAACDC9923D3&%3Bdisplaylang=en You can also use tools such as Network Monitor and set it up to capture RDP traffic for analysis. Propalms Ltd is a global provider of application delivery and secure remote access solutions for Terminal Services and Virtual Desktop Infrastructures. Delivering to Enterprises of all sizes we offer reliable, scalable and affordable solutions that simply work. Our belief is that application delivery solutions should be flexible, dynamic and above all, simple to use. 2011 Propalms Ltd. All Rights Reserved. Microsoft, Windows are registered trademarks of Microsoft Corporation in the United States and other countries. All other trademarks and registered trademarks are the property of their respective owners.