InfraGuard

服务器参数快照

以只读方式快照实例的 web/数据库/内核/应用/其他设置,作为 AI 调优提问的依据。

概述 —— 它做什么

实例卡片上的 [param] 按钮会把每个实例的 服务器参数(配置值)快照到 infr_instance_param。它与 实例变量(供 Tools 混合拼装使用的机密字典)不同 —— 这里保存的是 nginx.conf、my.cnf、sysctl、php.ini、haproxy.cfg 这类 配置值,作为支撑 AI 调优诊断 的参考快照。它不是机密;敏感值会被探针标记为 (redacted)。

页面构成

五个区域面板(--grid--5,响应式 5→3→1 列)。

区域 引擎示例
Web nginx · apache
数据库 mysql · mariadb · postgres
内核 linux (sysctl)
应用 php · php-fpm · python (gunicorn/uwsgi) · java (JVM)
其他 haproxy · docker · kafka · elasticsearch · vsftpd

多引擎共存 —— engine 是唯一标识的一部分(UNIQUE(instance_id, category, engine, name))。即使一台主机同时运行 nginx+apache 或 mysql+postgres,同名参数(例如 max_connections)也会 按引擎 分别存储,绝不混淆。界面会在每个区域面板内部按引擎分组显示。

使用方法

有两条更新路径:

  1. 手动新增/编辑 —— 各面板标题栏中的 [+]。
  2. JSON 导入 —— 在目标主机上运行探针,并粘贴它输出的 JSON:
# 已预置在 清单 ▸ 工具 中的本地探针(无需凭据,不发起外部调用)
node infr_server_params_probe.cjs
# 把 JSON 粘贴到 [param] ▸ JSON 导入,即可幂等 upsert

探针使用 五轴白名单,只采集关键调优值(内存、工作进程、执行、超时):web 用 nginx -T/apache conf · 数据库解析 my.cnf/postgresql.conf 文件(无需连接)· 内核用 sysctl · 应用用 php -i/pool.d/gunicorn·JVM 堆 (ps) · 其他读取配置文件。机密会被掩码。

数据来源

为什么排除 node —— pm2/Node 应用不符合“一台主机 = 每个引擎一份正式配置”的模型(一台主机上有多个应用;ecosystem.config.js 属于应用仓库;每次部署都会变),因此不纳入应用采集范围。保留 python/java,是因为传统部署方式往往收敛为每台主机一个应用服务器/单个 JVM。

访问权限

读取需要级别≥1;写入(保存/删除/导入)需要级别≥2。

相关内容

카드의 [param] 버튼
카드의 [param] 버튼