ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

Nightingale Meraki 集成实战:Categraf 采集思科网络设备监控完整指南

Nightingale Meraki 集成实战:Categraf 采集思科网络设备监控完整指南 Nightingale Meraki 集成实战Categraf 采集思科网络设备监控完整指南【免费下载链接】nightingaleNightingale is to monitoring and alerting what Grafana is to visualization.项目地址: https://gitcode.com/GitHub_Trending/ni/nightingale本文以开源监控告警系统 Nightingale 中的 Cisco Meraki 集成为例讲解如何用 Categraf 配置采集 Meraki 网络设备的监控数据。你会拿到一份可直接复用的采集配置模板覆盖 API 限速、4G 信号与探活关联三类数据源并能在十分钟内容完成自己网络环境的接入。拿到完整的 meraki.toml 采集配置Meraki 组件位于 integrations/Meraki 目录采集配置模板 collect/meraki/meraki.toml 与 markdown/README.md 中的示例逐字一致全文如下interval60 [[instances]] #api_keyxxxxx #base_urlhttps://api.meraki.cn/api/v1 #network_result_per_page100000 #rate_limit5 [instances.signal_4g] urlxxx app_key app_secret app_id [instances.extra_info] urlxxxx query probe_success{clusterhedan-prod-elk,jobicmp,isOpenTrue} 文件分三层顶层interval60是全局采集周期单位秒即每分钟抓取一次作用于文件内所有实例[[instances]]是主实例负责向 Meraki API 拉取设备数据两个[instances.*]表是子实例各挂一个额外的数据源。主实例里的四行参数默认被注释掉去掉#并填入值即可生效。填好 Meraki API 密钥并选择区域端点主实例的四个参数都是可选的但建议显式配置参数含义取值建议api_keyMeraki Dashboard API 的访问密钥用于请求鉴权在 Meraki 控制台生成真实密钥填入不要保留xxxxx占位base_urlAPI 服务地址模板默认https://api.meraki.cn/api/v1是中国区端点海外区换成api.meraki.com域名按域名命名推测保留/api/v1路径network_result_per_page拉取网络列表时每页返回的网络记录数按 Meraki Dashboard API 命名惯例推测网络规模大时保留模板值 100000 以减少请求次数小规模可调小rate_limit对 Meraki API 的请求速率限制用于规避 API 限速按命名惯例推测模板默认 5单位每秒请求数按设备规模上调一句话短注interval管节奏rate_limit管节流两者共同决定你被 Meraki API 限流的概率调采集频率时建议一起调整。按需配置 4G 信号与探活两个子实例主实例之下的两个子实例都不走 Meraki API 凭据各自挂一个独立数据源用哪个配哪个。[instances.signal_4g]挂接独立的 4G 信号接口[instances.signal_4g] urlxxx app_key app_secret app_id该子实例不用api_key而是一套独立凭据url是 4G 信号数据接口地址app_key与app_secret是接口鉴权密钥对app_id是应用标识按字段组合推测属于类似开放平台的应用凭据鉴权模式。如果你的环境没有 4G 信号数据源整个表可以直接删掉。[instances.extra_info]用 PromQL 补充探活信息[instances.extra_info] urlxxxx query probe_success{clusterhedan-prod-elk,jobicmp,isOpenTrue} url指向另一个数据源的查询接口query是一段 PromQL 语句。示例查的是黑盒探针指标probe_success用标签筛出生产 ELK 集群、ICMP 探测任务、开放状态这三类探测结果从配置意图看该集成用它把网络设备的连通性探测结果与设备自身指标关联辅助判断链路状态。⚠️hedan-prod-elk只是模板作者环境的示例集群名接入前必须替换为你环境中真实存在的标签值。integrations/ 目录怎么组织Nightingale 与 Categraf 的分工Nightingale 负责告警、仪表盘与 Web 界面数据采集的脏活由配套采集器 Categraf 承担。仓库的 integrations/ 目录集中存放上百个组件的采集资源每个组件目录都按同一套约定组织markdown/使用与配置文档Meraki 同时提供中英文两版collect/按插件名组织的 Categraf 采集配置模板icon/、dashboards/、alerts/、metrics/组件 logo、仪表盘、告警规则与指标定义。integrations/Meraki 目前只有markdown/、collect/、icon/三项其余子目录由组件按需提供缺了也不影响采集。重启 Categraf 并验证 Meraki 指标上报配置改好后动作都发生在 Categraf 这一侧放置配置把 meraki.toml 复制到 Categraf 的采集配置目录或以它为基础新建一个插件配置填写凭据主实例的api_key、base_url以及按需填写两个子实例的url与 4G 应用凭据调整频率与限速按设备数量一并调整interval与rate_limit避免触发 API 限速重启 Categraf 让配置生效再到 Nightingale 的指标查询页面确认 Meraki 相关指标是否有数据上报。✅这份模板凭什么可信服务端两处代码在引用它你在 Nightingale Web 界面看到的集成组件页来自服务启动时的一次目录扫描center/integration/init.goInit函数遍历 integrations/ 目录把每个组件目录注册为数据库中的内置组件并读取icon/的 logo、markdown/的 README以及alerts/、dashboards/、metrics/下的告警规则、仪表盘与指标定义配置项disable_integration_init可跳过这一整套流程。aiagent/tools/integrations_loader.goloadIntegrationsEntries扫描每个组件把markdown/README.md生成一条[integration-doc]索引条目把每个collect/*/*.toml生成一条[integration-config]条目TOML 内容用代码围栏包起来防止大模型把配置当散文改写。正因如此模板里的字段写法和指标命名与 Categraf 的真实解析逻辑对得上照着抄即可。指标跑通之后把告警规则接上Meraki 指标上报后可以按组件目录alerts/的约定补上告警规则并挂到 Nightingale 的推送渠道上。integrations/ 里其他组件Cloudflare、Redis 等遵循同样的目录约定本文的接入流程可以直接复用。【免费下载链接】nightingaleNightingale is to monitoring and alerting what Grafana is to visualization.项目地址: https://gitcode.com/GitHub_Trending/ni/nightingale创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表