Another RDS server?
-
My clients single RDS server is being pushed to it's limits. I can increase RAM, disk and CPU but when you would you consider adding a second RDS server?
I've only ever worked in single RDS server environments.
I'm wondering if some kind person could give me a high level overview of what needs to be done and what happens, so I can have more than a single server servicing RDS users?
With thanks.
-
More servers usually means more licenses and higher cost.
What's the age and config of your current server?
-
I wouldn't go over 50 users on one server. At 100 users you start running into limitations with the OS.
Multiple servers does make taking one host down easier.
-
Age of server is a primary question to answer before deciding to add/replace/upgrade.
Is it a true RDS environment? Old Fashioned terminal server providing a server OS to the users?
What OS is on the current server? And if you add a server, what OS will it have? This may impact your RDS and Cal licensing.
If you are not adding users, and can maintain the same server OS on the new server, you will not need additional licenses beyond the Server.
RDS Cals and User Cals connect to any server in the domain their license allows them to. (Poor grammar, but I think you'll get it.) -
Thanks folks.
The current RDS server is a Hyper-V VM with 16GB of 'startup' RAM and uses dynamic memory, maxing out at around 36GB. It's running 2016 server std with the RDS role.
The Hyper-V host has a single XEON E5-2620 v4 @ 2.1Ghz, 48GB RAM. Disks are 10K SATA.
The RDS is used to provide access to an application on another server, plus access to files & folders.
It's also in use as the workers tend to swap desks from day to day.
I'm currently chasing up price & availability for RAM & CPU. I know RAM will help, but is an additional CPU a good thing or will it not be of much use?
-
@siringo said in Another RDS server?:
I'm currently chasing up price & availability for RAM & CPU.
WTF? You buy a new server, not a new CPU.
Your CPU is from Q1 2016. That makes it 5 years old. At this point, don't throw money at a system that old. Replace it with a current generation system (and thus processor family) and SSD.
-
@JaredBusch said in Another RDS server?:
@siringo said in Another RDS server?:
I'm currently chasing up price & availability for RAM & CPU.
WTF? You buy a new server, not a new CPU.
Your CPU is from Q1 2016. That makes it 5 years old. At this point, don't throw money at a system that old. Replace it with a current generation system (and thus processor family) and SSD.
Yes, it's time for a new server.
If you're on a shoestring budget you could upgrade but then you'd want to use refurbished CPUs and RAM, absolutely not new. But nobody is going to thank you...
-
I wouldn't even waste an entire host for an RDS farm, let alone a single VM tbh. I agree with Jared, try to get something modern on a warranty with a better CPU (AMD EPYC are worth taking a look at), more RAM and SSDs instead. Unfortunately, the newer 14th Gen Dell refurbs are hard to come by in the land of Oz but the 10 gen HPE Proliant refurbs can be found at many HPE Renew partners, often half-price from new with full NBD warranties. Also, check out Digicor for their SuperMicro deals.
-
Just a reminder to step back and make sure that CPU and / or RAM are really your bottlenecks here. Network tuning / QoS can do wonders for the RDP experience and then there's the other side of the equation for the RDS server accessing those LoB apps. Some time spent with with processhacker watching not just RAM and CPU usage but process IO, network and disk / filesystem use is always a worthy investment to confirm your course of action. As soon as you've got users directly interacting with a system, be ready for surprises.
-
@notverypunny said in Another RDS server?:
Just a reminder to step back and make sure that CPU and / or RAM are really your bottlenecks here. Network tuning / QoS can do wonders for the RDP experience and then there's the other side of the equation for the RDS server accessing those LoB apps. Some time spent with with processhacker watching not just RAM and CPU usage but process IO, network and disk / filesystem use is always a worthy investment to confirm your course of action. As soon as you've got users directly interacting with a system, be ready for surprises.
This is what I was thinking.
Sure a 5 year old server ain't a spring chicken - but the real question is - what's the bottleneck?
Now - as previously said - more than about 50 users on TS box became problematic in the past, but I haven't dealt with this since it was called Terminal Server, so I don't know if things have changed for RDS?
-
Thanks everyone for the suggestions & ideas.
Yes I do need to sit back and do some looking at things before I go spending more money. Thanks for the reminder @notverypunny
-
@Dashrender said in Another RDS server?:
@notverypunny said in Another RDS server?:
Just a reminder to step back and make sure that CPU and / or RAM are really your bottlenecks here. Network tuning / QoS can do wonders for the RDP experience and then there's the other side of the equation for the RDS server accessing those LoB apps. Some time spent with with processhacker watching not just RAM and CPU usage but process IO, network and disk / filesystem use is always a worthy investment to confirm your course of action. As soon as you've got users directly interacting with a system, be ready for surprises.
This is what I was thinking.
Sure a 5 year old server ain't a spring chicken - but the real question is - what's the bottleneck?
Now - as previously said - more than about 50 users on TS box became problematic in the past, but I haven't dealt with this since it was called Terminal Server, so I don't know if things have changed for RDS?
At some point Task Manager stops working properly, and then other tools start breaking when you hit 100+. I forget exactly what, but I remember you couldn't use powershell commands either, but some older cmd tools still worked.
-
Have you thought about the addressing the real problem? What's making these users need a terminal server in the first place?
Are all users really dependent on terminal server or are some using it for convenience?
Can you replace any of these dated apps with web apps?
-
@IRJ said in Another RDS server?:
Have you thought about the addressing the real problem? What's making these users need a terminal server in the first place?
Are all users really dependent on terminal server or are some using it for convenience?
Can you replace any of these dated apps with web apps?
Thanks @IRJ , yep that's part of my process as well.
The server is 2016 Hyper-V guest with 8 virtual processors and with 16GB of 'startup' RAM and uses dynamic memory, maxing out at around 36GB.
I was looking at it this morning, had about 15 users on it and Resource Monitor was telling me that CPU use was around 70%. I looked at each session and couldn't see any session using more than normal resources.
I forgot to reboot it last night, I'll reboot tonight in the vague hope that that may fix something?
-
@siringo said in Another RDS server?:
@IRJ said in Another RDS server?:
Have you thought about the addressing the real problem? What's making these users need a terminal server in the first place?
Are all users really dependent on terminal server or are some using it for convenience?
Can you replace any of these dated apps with web apps?
Thanks @IRJ , yep that's part of my process as well.
The server is 2016 Hyper-V guest with 8 virtual processors and with 16GB of 'startup' RAM and uses dynamic memory, maxing out at around 36GB.
I was looking at it this morning, had about 15 users on it and Resource Monitor was telling me that CPU use was around 70%. I looked at each session and couldn't see any session using more than normal resources.
I forgot to reboot it last night, I'll reboot tonight in the vague hope that that may fix something?
15 users that's 2 users per vCPU. That's reasonable according to MS.
But 70% CPU is a lot. Too much I think.
What's the utilization on the hyper-v host? Are there other VMs running on it as well?
-
@Pete-S yes, there's one other VM. It has 8vCPU's 16GB of startup RAM and uses dynamic memory.
Unfortuantely I didn't have time to look at the problem too much today so I'm not too sure how busy the host was.
How can I determine how many vCPUs I can assign to a VM??
-
@siringo as few as possible.
-
I've found the item that's using excessive memory, it's an app that was added after the server was spec'd and put in place.
I can see the app in Resource Monitor, anyone know how I can export the Resource Monitor values to Excel etc?
-
@siringo said in Another RDS server?:
@Pete-S yes, there's one other VM. It has 8vCPU's 16GB of startup RAM and uses dynamic memory.
Unfortuantely I didn't have time to look at the problem too much today so I'm not too sure how busy the host was.
You have 48GB RAM and one 8 core CPU on the hyper-v host. 10K HDDs.
On that host you have:
- 1 VM, 16GB-36GB RAM, 8 vCPU, running 2016 RDS with 15 users @ 70% CPU
- 1 VM, 16GB+ RAM, 8 vCPU.
I think your hardware is just not up to the task. Not enough RAM and not enough cores.
-
@Pete-S said in Another RDS server?:
@siringo said in Another RDS server?:
@Pete-S yes, there's one other VM. It has 8vCPU's 16GB of startup RAM and uses dynamic memory.
Unfortuantely I didn't have time to look at the problem too much today so I'm not too sure how busy the host was.
You have 48GB RAM and one 8 core CPU on the hyper-v host. 10K HDDs.
On that host you have:
- 1 VM, 16GB-36GB RAM, 8 vCPU, running 2016 RDS with 15 users @ 70% CPU
- 1 VM, 16GB+ RAM, 8 vCPU.
I think your hardware is just not up to the task. Not enough RAM and not enough cores.
Also the servers memory config is puzzling to me because E5-2600 v4 CPUs have 4 channels of memory.
So for maximum performance you should use 4, 8 or 12 DIMMs. Only way I get to 48GB RAM is with 12 x 4GB DIMMs. That's very unusual for a server of that generation.Or you might have 6 x 8GB DIMM which in that case is bad. It's called an unbalanced memory configuration. It works but it's low performance. You're only getting 60% of the memory bandwidth.