Windows Server Update Services (WSUS) is an application developed by Microsoft that enables administrators to manage the distribution of updates for Microsoft products to computers in a corporate environment.
The first version of WSUS was known as Software Update Services (SUS) and was created in 2005. Only after 2008 it was distributed as an installable server role.
WSUS manages the update catalog for Windows components and other Microsoft products, the approval cycle, as well as the distribution of updates on a local network. However, it has no control over when and how such updates are applied to the target computers: even with this limit, WSUS is the ideal solution because it is free and easier to manage than the System Center Configuration Manager, a product that can both force and centrally control the distribution of updates.
From its earliest versions, the WSUS service required significant disk space, on the order of at least 100 GB. Over time, the situation got worse mainly due to the increasing number of Microsoft products and, above all, due to the frequency of release updates, mainly for security issues.
Monitoring systems trace the constant increase in disk space occupied by WSUS:
This disk space is occupied by updates that are approved (manually or automatically) by the WSUS Console.
There is also an even more serious problem: WSUS responds more and more slowly over time and the Console will finally disconnect intermittently and no longer respond to commands. What’s worse Clients will no longer be able to download new updates given the lack of storage space.
This situation is due to the non-optimized management of the database that WSUS uses to store all update information.
In the latest versions of WSUS, the default database used is WID (Windows Internal Database), located at the following path C:\Windows\WID\Data. Curiously, the database still keeps the old product name, SUSDB!
It is important to monitor the SUSDB size because starting when it exceeds the 7-8 GB you will begin to experience your first issues with WSUS.
There are three main causes for the growth of the SUSDB Database:
The tbEventInstance table may contain a very large number of rows if the WSUS is not periodically cleaned. Below you can see a normal situation with just a few thousand lines:
One important factor to consider is the abandonment of Superseded upgrades and Itanium Processors (if you do not use the Itanium technology!): Unfortunately, WSUS does not offer a simple way to do this, so it’s best to use a PowerShell script.
Only after the superseded upgrades are declined, you can see sufficient space in your database!
You can clean up your WSUS instance from the console with the Server Cleanup Wizard or via a PowerShell script:
To get an efficient WSUS it is necessary to:
By following these steps, you can keep the disk space occupied by WSUS under 100 GB.