This most likely looks like an installer optimisation for VS that removes old SDKs being too greedy and remove versions that older VS versions rely on, but at the moment this is more of an hypothesis while MS teams are investigating. See this GitHub issue for more similar reports.
The 2.2.1xx SDK(!) versions use MSBuild 15 and the 2.2.2xx use MSBuild 16.
VS 2017 needs to resolve a local version that is compatible with MSBuild 15 so if 2.2.1xx was removed during an upgrade, this may fail.
You can fix this by re-installing a compatible version – e.g. 2.2.105 – from https://dotnet.microsoft.com/download/dotnet-core/2.2
In order to find out which SDK uses which components, you can check the
DependencyVersions.props file in the <3.0 sources and the
Versions.props file for >= 3.0 (preview) sources – MSBuild version is set in via the