跳至主要内容

解决WSUS服务器内存过高的问题

 最近公司某一台WSUS服务器出现内存过高报警,下班后将这台机器重启了。结果第二天又出现内存不足的情况。看样子不是偶发状况,必须处理才行。


登录机器发现sqlserver.exe和w3wp.exe这两个进程占用大量内存。

sqlserver.exe是数据库程序,这台机器使用内置wid数据库,没有使用sqlserver,无法使用sqlserver management客户端连接进行设定,只能使用微软发布的sqlcmd工具设置。

sqlcmd使用sqlodbc接口访问内置数据库,还需要安装sqlodbc驱动,而该驱动依赖Visual C++ 2017运行库,下载这三个文件VC_redist.x64.exe、msodbcsql.msi和MsSqlCmdLnUtils.msi。然后依序安装即可。


安装完成后,开启一个cmd窗口,输入如下命令连接内置数据库

sqlcmd -E -S \\.\pipe\Microsoft##WID\tsql\query

登录成功后会出现提示符1>

然后输入如下命令显示高级选项

exec sp_configure 'show advanced option', '1';

reconfigure;

exec sp_configure;

go

然后会显示内置数据库的设定

输入如下命令将内置数据库内存占用调整为4G,这个可以根据各自的服务器来调整。

exec sp_configure 'max server memory', 4096;

reconfigure with override;

go

执行成功会会有提示,完成后输入quit退出。

这时候在资源管理器里已经能看到sqlserver.exe的内存占用下降到4G。



接下来设置iis服务的内存上限,以解决w3wp.exe的内存占用过大的问题。

打开Internet Infomation Services (IIS) Manager

在服务中点开Application Pools中右键WsusPool,在弹出菜单中点击Advanced Settings。

在Recyling类别中找到Private Memory Limit (KB),设置一个内存上限值,这里单位是KB,大家自己用计算机算一下,我这里给到4G,就是4*1024*1024=4194304。

点击OK保存,然后重启WsusPool生效。


至此完成WSUS Server内存不足的问题。

评论

此博客中的热门博文

解决BT下载被ISP发警告信的问题

 最近刚刚换了光纤,网络刚刚切换过去不到1个小时,运营商就发警告邮件说被发现出现下载侵权文件的行为。 整理一下思路,这样只能使用代理来下载的,使用代理下载有2种方式。 方式1: 购买vpn服务,qbittorrent服务器连入vpn服务。               该方式优点:简单快捷,无需特定设置。               该方式缺点:对于udp的支持可能比较差,流量和速度会受限。 方式2: 购买vps服务器,在vps上部署 qbittorrent服务来下载。               该方式优点:价格便宜,网络速度快,流量大,完全支持udp协议。               该方式缺点:设置繁琐,需要解决存储问题以及文件下载回本地nas。 为了性能和省钱,最终选择了方式2,只是没想到在北美这边也要自己假设代理服务器。 接下来就开始部署服务,这边找了一个很便宜的vps服务商,然后安装debian 13系统。 Step 1,安装docker服务。 Step 2,安装Tailscale,能够访问家里的nas。 Step 3,配置Samba服务,挂载nas的下载目录。 Step 4,配置docker 让qbittorrent能够起来。 Step 5,用docker运行一个Cloudflare的tunnel服务,解决证书和安全问题。 这样的好处是下载完成后不需要把文件从vps上拉到nas,因为downloads的目录已经在nas上了。而且vps的存储价格很贵的,如果增加一个几百GB的存储,那价格得大几十美金一个月了。

PVE安装Windows 11虚拟机 step by step

Win 11已经发布有两周多了,因为引进了tpm机制,只支持较新的设备安装,对于虚拟机的支持不高。 目前各个虚拟化平台针对win 11已经有对应的方案,今天来介绍一下PVE 7.0安装win 11虚拟机。 提前下载win11和virtio win 11的镜像。 win 11镜像下载这里就不说了,很多途径。 virtio的镜像在这里下载https://github.com/virtio-win/virtio-win-pkg-scripts,下载最新的virtio win iso。 新建和配置虚拟机 点击新建虚拟机 给虚拟机起名,然后下一步。 选择加载win 11镜像文件,系统类型选择windows。 系统配置这里: bios选择OVMF(UEFI);机器选择q35;勾选TPM,并选择TPM版本为v2.0;然后存储的位置选择同一个存储。 硬盘设备选择VirtIO,磁盘大小选择64G,32G其实也可以,但是微软要求最低64G。 设置CPU和内存,微软要求最低2核8G,这里我们给4核8G,因为是单节点,所以CPU类型勾选host。 配置网卡信息后继续。 这里不要勾选自动创建后启动,确认配置信息后点击完成。 到新建的虚拟机这里,新建光驱。 选择下载的驱动镜像,点击创建。 完成后点击启动。 启动后进入windows安装界面,这里照一般操作进行。 到安装类型这里选择 自定义安装。 到选择安装位置这里会无法显示硬盘信息,因为缺少驱动,点击加载驱动程序。 然后点击浏览。 选择驱动镜像下的amd64下的w10文件夹,点击确定。 加载驱动后磁盘控制器能够显示,点击下一页。 选中显示的磁盘后点击下一步进行安装。 文件复制完后会重启几次。 安装完成后会启动第一次配置界面。 输入账户信息后进行系统配置。 配置完成后进入桌面。 在设备管理器中有一些设备未能正确识别。 进入驱动镜像,运行virtio-win-ge-x64安装文件安装驱动。 安装完成后,所有设备都能正确识别。 至此win11虚拟机安装完成。

为阿里云ecs创建自定义快照脚本

阿里云的ecs自动快照功能只支持最长一周的间隔,而有些生产环境不太需要如此频繁的备份。 因此写了一个每月备份一次的脚本来解决这个问题 一共分五个步骤,分别是创建执行快照的账号,分配账号权限,安装阿里云cli,创建脚本,编辑计划任务。 一.创建账号。 为降低安全风险,这里新创建一个账号用于执行生成快照的脚本。 在创造账号时,只勾选api访问。 记录下创建完成后的token信息。 二.分配账号权限。 创建一个自定义的访问权限策略。 {     "Statement": [         {             "Effect": "Allow",             "Action": "ecs:*Snapshot*",             "Resource": "*"         }     ],     "Version": "1" } 然后将这个策略套给新创建的账号,同时赋予这个账号ecs的只读权限。 三.安装阿里云cli客户端,这里就不做赘述,直接看阿里云的文档就好。 https://help.aliyun.com/document_detail/139508.html?spm=a2c4g.139508.0.0.3c18337a5eCaya 四.创建脚本。 aliyun configure set \   --profile bkadminprofile \   --mode AK \   --region cn-shanghai \   --access-key-id ************************ \   --access-key-secret ********************** 先获取ecs的实例id   aliyun ecs DescribeInstances --RegionId cn-shanghai --output c...