Beware: even though Microsoft says that WSUS needs a minimum of 2GB extra RAM, you won’t be able to use WSUS with just 2GB of extra RAM. Whilst WSUS may have only required 2GB of RAM when they developed it and with the database stored on a different server, you are going to have a practically unusable WSUS installation by the time it’s downloaded all the updates and has a few computers connecting to it, especially if it’s storing the database locally.
So what are the real hardware requirements for WSUS? Well, I’m currently running a small computer network (less than 100 computers) and I’ve installed WSUS on a dedicated server which has 32GB of RAM and runs Windows 2019. I would say that I’ve only just got enough RAM for the job.
The reason I say this is because after installing WSUS I got the classic WSUS connection error, which is caused by either two things: Not enough RAM for the database or not enough RAM for the WSUS application pool in IIS. After setting the application pool to have 10GB of RAM (up from the default of about 2ish), I was seeing a lot less connection errors. As I was still getting connection errors when trying to load lists of updates, I increased it to 20GB (why not? I have 32GB in the machine). This caused it to crash more, and upon investigation I noticed that there wasn’t enough RAM for the built in SQL database running on the same server. I decreased WSUS to have 15GB of RAM, which makes the whole thing run a lot smoother. I now rarely get the connection error, but my server frequently runs at or near full capacity on the RAM.
I imagine many readers will say that this is how SQL server works – it grabs all the RAM it can, so that’s normal. But my counter to that point is that if I increase the WSUS RAM allocation, I get more errors; as the server isn’t doing anything other than WSUS, clearly the SQL database requires more RAM for WSUS.
Therefore, I conclude that the absolute minimum hardware requirements for running WSUS on Server 2019 is actually slightly more than 32GB (because I still get the odd connection error).