Windows容器环境有个特点, Host与Container的OS Builder Number必须匹配, 有点场景甚至要求Revision Number匹配, 所以经常要为K8s Node安装指定Revision 的hotfix, 用powershell在线安装时下载过程缓慢而不可控, 体验最好的路径还是直接找到相应Revision Number的msu安装包,直接安装:
1. 从Windows Update History网站找到版本对应的KB. 如: Windows Server 1809 OS Build 10.0.17763.1158
https://support.microsoft.com/en-us/help/4549949
2. 在Windows Update Catelog按KB搜索: https://www.catalog.update.microsoft.com/
找到相应的下载包. 如17763.1158对应的KB4549949: https://www.catalog.update.microsoft.com/Search.aspx?q=KB4549949
3. 下载msu安装包后使用wusa指令安装即可:
wusa windows10.0-kb4549949-x64_90e8805e69944530b8d4d4877c7609b9a9e68d81.msu
附:
为了防止Windows Node版本变更, 还要关闭Windows Auto Update, 防止Node OS自己变更版本:
a). 查看Auto Update 状态:
%systemroot%\system32\Cscript %systemroot%\system32\scregedit.wsf /AU /v
b). 禁用 Windows Auto Update:
Net stop wuauserv %systemroot%\system32\Cscript %systemroot%\system32\scregedit.wsf /AU 1 Net start wuauserv
PS: 可使用wmic qfe list查看已安装的hostfix
Reference:
https://docs.microsoft.com/en-us/windows-server/administration/server-core/server-core-servicing