博客 | 首席技术官办公室

F5 星期五: 将 F5 遥测推送至您的管道

Lori MacVittie 缩略图
洛里·麦克维蒂
2018 年 9 月 28 日发布

当我们最近对 IT 运营从业者进行网络自动化现状调查时,我们发现市场面临着许多挑战。 NetOps 专业人士特别提到的问题之一是缺乏用于推进自动化工作的集成工具。 

鉴于 NetOps 面临的最大障碍是缺乏“DevOps”技能,缺乏工具集成被视为一项挑战也就不足为奇了。 通常这些包括传统上与 NetOps 专业人员不相关的开发技能。 大多数情况下,集成需要的正是这些技能。 尽管 NetOps 非常熟悉通过命令行调用 Web 和基于 API 的协议,但这并不意味着有能力开发集成工具和技术所需的系统。

这是有问题的。 IT 运营迅速采用开源解决方案为 NetOps 在其自动化计划中提供了丰富的选择。 NetOps 不愿意等待传统时间表上的集成。 谁又能责怪他们呢? 毕竟,企业不愿意等他们

这就是为什么我们在 F5 使用为从业者提供的相同工具和框架来快速响应传统产品发布计划之外的此类需求。 

与 BIG-IP 和 NODE.JS 的生态系统集成

F5 iControlLX 是一个基于 node.js 的可扩展框架,使我们能够执行扩展 BIG-IP 控制平面功能的代码。 该框架使我们能够整合外部系统和信息源,并为我们提供了一个方便的位置,可以从 BIG-IP 中提取信息并将其推送到其他系统。

其中一个例子就是名为BigStats的解决方案。 BigStats 的诞生是因为需要将 BIG-IP 生成的遥测数据与收集、分析和仪表板信息的系统相集成。 BigStats 0.4 版最近提交到 GitHub,现在支持传统和 AS3 数据格式。 遥测导出也已扩展到包括特定于设备的统计数据。 

该集成由首席技术官办公室开发倡导者Nathan Pearce开发,利用iControlLX并使用 node.js 按照用户指定的时间间隔将遥测数据推送到所需的端点。 虽然最初的请求来自单个客户并针对单个系统,但后来得到了扩展(这是开源和协作的结果),现在支持针对多个收集端点,包括 HTTP/S、statsd 和 Kafka。 

BigStats 的配置可以在本地或远程通过 HTTP POST 完成,其中包含以简单 JSON 格式编码的适当信息: 

{
“config”:{
“destination”:{
“protocol”:[http|https|stats|kafka]”,
“address”:[目标地址或主机名]”,
“port”:[目标 TCP 端口]”
},
“interval”:[发送统计数据的所需间隔(秒)|默认为 10 秒]”,
“enabled”:[true|false],
“debug”:[true|false]
}
}

除了提供将 BIG-IP 统计数据快速推送到遥测管道的方法之外,BigStats 还提供了一个极好的样本,可在其中构建其他统计数据可能有用的其他集成。

它还使 NetOps 能够通过以一种可以轻松集成到 Grafana 等仪表板的方式释放与应用相关的运营数据来展示企业对应用服务的投资价值。

您可以在 Nathan 的帖子中阅读有关 BigStats v0.4 的更多信息,或者在 GitHub 上自行查看 repo 。