ARTICLE DETAIL

资讯详情

深耕网站建设、视觉设计与SEO优化的一线实战洞察。

SolarWinds NPM 12.0.1 部署调优与维护实战指南

SolarWinds NPM 12.0.1 部署调优与维护实战指南 简介面向网络运维与IT管理人员的SolarWinds网络性能监视器NPM12.0.1及Orion Package 12.1资源包用于解决大规模网络设备状态监测、性能分析与故障预警可覆盖10至10000个节点的监控规模。资源为docx格式文档共1个文件压缩包仅85KB适合作为快速查阅的部署激活参考。文档整合了安装环境要求涵盖Windows Server 2016操作系统、SQL Server数据库版本选择及IIS 32位模式配置并提供服务启停与激活操作说明针对100节点以上的监控场景还给出了独立SQL Server建议。内容同时梳理了交换机端口管理、地图制作、报告生成、无线设备轮询等核心功能帮助读者全面掌握该平台能力。作者已实测可用激活说明清晰可有效降低部署排错成本。该资源已有1154人学习下载适合需要部署或升级SolarWinds NPM的网络工程师参考使用。1. 从一条突发的链路报警理解 SolarWinds NPM 12.0.1 到底在监控什么凌晨两点值班手机弹出告警核心路由器到分公司链路的接口利用率超过 85%。你打开 SolarWinds NPM 12.0.1 / Orion Package 12.1 的 Web Console把接口流量曲线和同一时刻的设备 CPU 曲线拖进 PerfStack发现利用率高峰和日志服务器备份任务完全重合。这类问题排查正是 SolarWinds 网络性能监视器NPM最擅长的场景它不替代抓包工具不承担 NetFlow 全量分析而是用 SNMP 把设备接口、CPU、内存、丢包率变成可回溯的指标曲线。Orion Package 12.1 是承载这套能力的平台层NPM 12.0.1 是平台之上具体的网络性能监控模块。适合的人群也很明确需要维护几十台到上千台网络设备又不想给每台设备装客户端探针的运维工程师。2. 部署 Orion Package 12.1先把 SolarWinds NPM 12.0.1 装成一个能抗住的监控平台2.1 安装包与运行库别把网络 NPM 和 Node.js 的 npm 安装混在一起第一次接触这个产品的同事经常在检索时被“npm 安装”带到 Node.js 生态里。要分清两件事SolarWinds NPM 是 Network Performance Monitor它的安装包是 Windows 下的 Orion 安装器而npm install是 Node.js 的包管理器命令。二者只是缩写撞名技术栈完全不同。如果只在 SolarWinds 服务器上做监控部署不需要安装 Node.js。需要引入 npm 工具的场合通常是开发自定义 Web 报表、仪表板脚本或者在 SDK 工具链里构建前端资源。因此部署阶段先别急着配置 npm 镜像源地址那是在后续定制报表时才用得上的东西。Orion 安装器本身的下载和补丁更新走 SolarWinds Customer Portal和 npm registry 没有关系。2.2 一台主服务器加一台附加轮询器的部署形态与系统要求我一般建议最小生产环境用两台 Windows Server一台做主轮询引擎一台做附加轮询器。主服务器安装 Orion Platform 12.1 和 NPM 12.0.1 Web 服务附加轮询器只承担设备轮询任务可以把网络抓取和数据入库的压力分开。如果监控设备少于 100 台单台服务器也扛得住但数据库建议始终独立部署。角色CPU内存磁盘数据盘典型场景Orion 主服务器8 vCPU32 GB200 GB SSD500 节点以内附加轮询器4 vCPU16 GB100 GB SSD远程机房或隔离网段SQL Server 数据库8 vCPU32 GB 起500 GB SSD原始采样数据与历史报表数据库方面Orion 平台常见做法是使用 SQL Server 2019 或 2022 Standard 版。安装时选择“混合模式认证”或者为 Orion 服务创建专用 SQL 登录账户不要让 Web 服务直接用 sa 运行。排序规则如果安装时没特意改通常保持默认的SQL_Latin1_General_CP1_CI_AS这个大小写不敏感配置和 Orion 的查询逻辑兼容性最好。2.3 命令行安装 Orion 12.1 的关键参数大规模部署或者需要批量化交付环境时用图形界面逐个下一步太慢。Orion 安装器支持静默安装命令大致如下SolarWinds-Orion-Installer.exe /quiet \ ADMINPASSYourAdminPassword \ SQLSERVERdbserver\SQL2022 \ SQLUSERorion_sa \ SQLPASSWORDYourSqlPassword \ /L*v C:\Temp\orion_install.log这里ADMINPASS是 Web Console 超级管理员初始密码不是 Windows 密码SQLSERVER指定 SQL Server 实例名SQLUSER和SQLPASSWORD是 Orion 专用的数据库登录凭据/L*v用于生成详细安装日志安装失败时第一件事就是看这个日志。静默安装跑完大约二十分钟期间不要手动重启服务器。安装完成后浏览器打开http://服务器IP首次登录会强制要求修改管理员密码。2.4 安装之后必须先做的三件事装完先别急着加设备。第一在 Windows 服务列表里确认SolarWinds Administration Service、SolarWinds NetPerfMon Service、SolarWinds Configuration Service等核心服务全部处于“正在运行”状态。第二打开 SQL Server Management Studio确认 Orion 数据库已创建并且orion_sa登录账户具备后续轮询器写入数据的权限。第三进入 Web Console 的 Settings 菜单找到 Backup Configuration把自动备份周期设置为每天一次。很多环境用了半年才发现备份从未成功最后只能靠人工重配所有轮询阈值。注意附加轮询器不要在安装主服务器时一并装在同一台机器上。后续扩展时运行同一安装器选择“Additional Polling Engine”它会自动向主服务器注册。3. 上手 NPM 12.0.1用 Web Console 把网络监控参数调成可用状态3.1 网络发现设置 ICMP/SNMP 发现范围之前先想清楚轮询边界SolarWinds NPM 12.0.1 的第一道工序是网络发现。登录 Web Console 后在 Settings 里找到 Network Discovery选择按 IP 范围或子网扫描。很多新手直接填一个大网段结果发现扫描出数百台打印机、IP 电话和无线路由器反而把 SNMP 轮询负载拉高。我一般会先跟着设备台账划分发现范围把核心交换、路由、防火墙、服务器网卡这四类对象纳入自动发现打印和访客 Wi-Fi 设备手动排除。发现方式建议选择“ICMP SNMP”这样既能识别存活设备又能拿到接口表和 ARP 信息。如果部分网络设备禁 ping 但开 SNMP可以在发现配置里勾选“仅使用 SNMP”。Community 字符串务必和网络设备实际配置一致不同品牌的设备对只读 Community 的格式要求略有差异发现前先在一台交换机上手动snmpwalk验证。3.2 SNMP 轮询参数表间隔与超时不是越小越好节点加进来之后NPM 会对每个节点执行多类轮询。默认间隔能覆盖大多数场景但在大网络中频繁轮询会让设备 CPU 额外消耗 3% 到 8%。以下是我常用的参数表轮询器类型默认间隔生产建议说明Interface Traffic120 秒60-300 秒链路利用率报警建议 60 秒Interface Status120 秒60 秒状态告警需要更快的感知Node StatusICMP Ping60 秒60 秒设备存活探测CPU / Memory Load120 秒300 秒变化较慢频繁轮询收益低Response Time120 秒120 秒丢包与延迟统计参数设置路径在 Settings 的 Polling Settings 里。注意改间隔不会立即生效需要等下一个轮询周期完成。对于监控规模比较大的环境建议把 CPU 和内存间隔拉长到 5 分钟释放出的 SNMP 超时余量留给接口状态变化。3.3 用 SQL 快速核对 Node 与 Poller 状态Web Console 界面能看状态但要一次性梳理所有节点的轮询器启用情况直接查 Orion SQL 数据库更快。安装完 NPM 后Orion 数据库里会有Nodes和Pollers两张核心表查询脚本如下SELECT TOP 50 n.NodeID, n.Caption, n.Status, n.IP_Address, p.PollerType, p.Enabled FROM Nodes n LEFT JOIN Pollers p ON n.NodeID p.NodeID WHERE n.Status NOT IN (2, 3) ORDER BY n.Caption;这段查询把存活节点的轮询器配置列出来Status字段中 1 表示 Up2 表示 Down3 表示 Unknown。PollerType区分N.NodeStatus、N.ResponseTime、N.InterfaceTraffic等轮询器类型。如果Enabled为 0即使节点是 Up 状态也不会采集对应指标。常见做法是先跑这个查询确认新增节点是否缺轮询器再到 Web Console 里针对性地“重新发现轮询器”比一台台点开节点详情高效很多。3.4 NetPath、PerfStack、NTA 的配合用法NPM 12.0.1 的价值不只在“收集指标”更在把指标组合成可判断的证据链。NetPath 模块可以展示从监控服务器到目标业务服务的网络路径中间每一跳的延迟和节点变化都会记录遇到“用户说慢但核心链路不拥塞”的问题NetPath 能快速发现是跨运营商路径抖动还是防火墙策略丢包。PerfStack 则是性能对比工具。把某个接口的利用率曲线和防火墙 CPU 曲线拖到同一时间轴再叠加丢包率曲线三线重合的位置往往就是故障发生点。NTANetFlow Traffic Analyzer单独使用时容量消耗很大一般只在核心出口或关键互联链路开启。三个功能配合起来才能真正回答“网络到底哪里堵了”而不是只看到一张张孤立曲线。提示NetPath 需要在目标路径沿途能探测到设备中间节点禁 ping 时路径会断档此时不代表业务故障。4. 数据量上来后的 Orion SQL 与 NPM 轮询参数调优4.1 原始采样数据与汇总表的保留策略NPM 每两分钟采一次接口流量一个月下来一个 500 节点的网络会产生数千万行采样记录。Orion 平台本身有数据汇总能力设置不当会导致 Web Console 的图表越开越慢。设置入口在 Settings 的 Database Management 里常见做法是原始采样数据保留 7 到 14 天每 5 分钟汇总后的数据保留 6 到 12 个月每日汇总保留更长时间。这个策略可以避免查询两三年前的接口明细时SQL Server 去扫几十亿行原始表。4.2 数据库维护计划与索引更新在 4.1 的保留策略完善后同样重要的还有 SQL Server 的统计信息更新。我见过不少环境设备规模只有 400 台却在持续使用一个月后打开 NPM 仪表板要等半分钟最后发现是HourlyStatistics表上的索引统计信息严重过期。可以在维护窗口执行下面的脚本来更新USE Orion; EXEC sp_updatestats;逻辑说明sp_updatestats会更新 Orion 库里全部表的统计信息让 SQL Server 优化器重新评估索引和连接策略。每天凌晨两点执行一次配合 4.1 的清理任务基本能避免统计信息陈旧导致的慢查询。这里不建议对 Orion 数据文件做DBCC SHRINKDATABASE收缩数据文件会显著增加磁盘 IO 和索引碎片监控数据库一旦碎片化性能回升很困难。4.3 自定义仪表板和报告时需要的 npm run build / npm 环境变量 PATH 配置如果团队用 SolarWinds SDK 或自定义报表模板常见链路是先改前端资源再执行构建。这时候才会遇到真正的 npm 工具链问题。在 Windows Server 上第一次执行 npm 命令很容易出现下面这段报错npm : 无法加载文件 C:\Program Files\nodejs\npm.ps1因为在此系统上禁止运行脚本这个报错和 SolarWinds 无关是 PowerShell 默认执行策略限制。解决方式是使用管理员权限执行Set-ExecutionPolicy -Scope CurrentUser RemoteSigned [Environment]::SetEnvironmentVariable(Path, $env:Path ;C:\Program Files\nodejs, User) cd D:\solarwinds-report-tools npm install npm run buildSet-ExecutionPolicy -Scope CurrentUser RemoteSigned允许本地脚本和由可信发布者签名的远程脚本运行SetEnvironmentVariable把 Node.js 目录追加到用户级 PATH确保npm命令在任意目录可用。如果公司开发网无法直接访问 npm 官方源可以切换到国内常用的 npm 镜像源地址npm config set registry https://registry.npmmirror.com该命令只影响本地 npm registry 配置和 Orion SQL 里的监控数据完全隔离。执行完npm run build后生成的静态资源部署到 SolarWinds 自定义 Web 资源目录即可。4.4 SNMP 超时与重试次数实战调参当“Poller is Down”或“Device Not Responding”告警频繁出现时先别急着更换设备。排查顺序是先 ping 通 IP再用测试工具以同样的 Community 字符串读取设备 MIB 节点最后确认防火墙只允许轮询器地址的 UDP 161 端口访问设备。这三步排除基础连通性问题后才轮到调整 NPM 的轮询超时参数。参数建议值适用场景SNMP Timeout1000-3000 ms延迟低的局域网SNMP Retry1-3 次默认 2 次足够Response Time 探测间隔60-120 秒防止探测报文自己成为负载并发轮询数默认值即可太大反而导致轮询器 CPU 飙高调整路径是 Settings - Polling Settings - Advanced Polling。要注意增加超时时间本质上是降低轮询成功率敏感度如果设备本身响应慢正确的做法是给该设备单独建一个轮询器分组把超时时间拉长到 5 秒而不是全局调参否则所有节点的轮询周期都会被拉长告警时效全面下降。5. 维护 Orion Package 12.1 的 NPM 实例时我会留意的三个细节5.1 升级前用 Configuration Manager 做完整导出Orion Platform 从 12.1 升到下一个维护版本或者给 NPM 12.0.1 打补丁前我会先打开服务器上的 Configuration Manager在 Actions 面板中选择 Export Configuration。导出内容覆盖设备清单、自定义属性、告警规则、轮询器配置和虚拟化厂商凭据。导出包文件要复制到另一台机器不要留在原服务器同一块磁盘里否则系统盘故障时备份也跟着丢失。5.2 升级后确认自定义 Poller 与 NPM 12.0.1 版本绑定主服务器升级完成后附加轮询器往往不会自动同步版本。登录 Web Console 后进入 Polling Engines 页面检查附加轮询器的版本号和主服务器是否一致。如果不一致需要重新在附加轮询器上运行一次安装器选择“Upgrade/Repair”。这个动作经常被漏掉结果表现为升级后某些节点的数据不再更新但主引擎上的告警还正常因为主服务器和附加轮询器之间的通信协议存在版本差异。5.3 一个容易被忽略的冷门技巧把 SNMP v3 凭据一起导出升级或迁移节点到另一台主服务器时设备清单能自动带过去SNMP v3 认证凭据却经常在重新发现时消失。配置较多 SNMP v3 设备的环境里这个坑最隐蔽。我一般会在导出配置时额外在 Credential Manager 中把 SNMPv3 凭据单独导出一份并确认导出时输入了解密密码。没有这层操作升级后每台设备都要人工重新录入认证参数上百台设备会让人崩溃。迁移完成后先用一台设备做验证检查它的轮询器是否成功采集到数据再批量处理其余节点。本文还有配套的精品资源点击获取
返回列表