使用 PanSift 从任何地方进行故障排除

导航至

本文由 PanSift 创始人兼首席技术官 Donal O Duibhir 撰写。向下滚动查看作者简介和照片。

2015 年,我在柏林举行的无线局域网专业人士会议上就大规模远程排除客户端性能和 Wi-Fi 故障做了一个简短的演讲。我当时描述的解决方案很粗糙,尚未使用时序数据库 (TSDB),但需求和目标仍然有效,甚至在今天更加重要。经过多次转向,去年我们终于构建了一个产品化的产品,以帮助技术团队支持远程工作人员,无论他们身在何处。它被称为 PanSift,其核心是 InfluxDB

PanSift - instant remote troubleshooting

远程办公自互联网诞生以来就已存在,但在过去十五年中,宽带普及率和知识型工作得到了迅速发展。最近,远程办公成为许多行业的迫切公共卫生需求。这导致了灵活工作协议的增加以及更广泛的共享、专用和个人工作空间。Gartner 预测,2022 年英国和美国约 53% 的劳动力将远程办公,全球为 31%。现在是时候开始将分布式用户边缘视为第一级,就像我们对待服务器和网络基础设施一样。

时间的人性化边缘

雇主和 IT 团队纷纷争先恐后地促进和扩大其 WFH(居家办公)和 WFA(随处办公)安排。对于某些人来说,远程办公已经是现状,许多人在咖啡店、共享办公空间和家庭办公室工作,但对于另一些人来说,这是一种新的工作方式,带来了一系列全新的挑战,尤其是在大规模情况下。

随着这种新的分布式边缘的复杂性不断增加,工程和支持团队缺乏对本地网络、无线性能和 ISP 配置的可见性和访问权限。即使可用,当试图观察历史问题或捕获间歇性问题时,基本的操作手册和时间点命令行脚本也不适合用途。

当员工生产力受到负面影响时,团队会损失时间、金钱和前进的动力。文化和信心也会受到打击,能力会受到质疑,并且事后无责分析变得站不住脚,所有这些都会导致双方感到沮丧。运营不仅仅关乎人员、流程和技术表现良好,而是关乎它们失败的程度。

建立在坚实的基础上

随着世界的变化,我们的支持模式和工具也必须随之改变。在一个更加去中心化的世界中,我们必须在员工发挥最佳工作的地方与他们会面,而不是固守工作应该发生在哪里的工业遗产和形象。不幸的是,通过去中心化,复杂性转移到了边缘,但通过检测这个新边缘,我们可以在不可避免的问题出现时更快地查找故障并进行修复。

PanSift 仍处于早期阶段,但我们构建了一些我们相信能够应对这一挑战的产品。PanSift 使远程故障排除变得即时。它使用持续的最终用户体验监控从远程工作人员的角度查看事物。代理从远程工作人员的笔记本电脑收集系统和网络健康信息,并将此数据以高频率发送回 PanSift 的 InfluxDB 实例。由于网络条件是动态的(尤其是 Wi-Fi),因此每 30 秒收集一次这些指标,然后每 60 秒传输回一次(或在完全中断期间缓冲)以实现高保真故障排除。然后,PanSift 会自动显示当前和历史问题,甚至可以建议补救措施(目前,我们非常关注 Wi-Fi 清晰信道,但围绕 DNS、IP、系统使用等还有更多内容)。

PanSift - troubleshooting and remediation

PanSift 由五个主要组件组成

  1. 本地端点代理(利用 Telegraf)用于数据收集和转换
  2. 无服务器“灯塔”(基于 CDN 的 JS 工作程序)用于快速网络探测
  3. API 控制的 DNS 区域,用于第一层摄取流量管理
  4. 水平 TSDB (InfluxDB OSS) 用于存储、查询和处理(由 HAProxy 提供前端服务)
  5. Web/SaaS(软件即服务)前端(使用 Ruby on Rails 构建),用于
    • 主 UI(用户界面)、IAM/多租户等
    • 代理的 ZTP(零接触配置)
    • FLUX (InfluxDB 脚本语言) 查询、洞察、异常检测等。
    • InfluxDB 编排(通过 API + Ruby gem: influxdb-client-ruby
    • 通过第三方进行网络数据丰富

扩展每个边缘

PanSift 代理根据其存储桶 UUID(通用唯一标识符)写入 InfluxDB 实例。UUID 在初始零接触配置 (ZTP) 期间分配。此 UUID 也存在于 DNS 中,并由代理作为 CNAME RR(资源记录)查询,然后映射到目标 InfluxDB 实例。主 PanSift Web 应用程序跟踪活动且健康的 InfluxDB 实例,以进行适当的配置、I/O 和后台作业。

通过在实例之间分配存储桶,我们可以创建一种水平弹性,从而实现简单的扩展、负载均衡、转向和未来的流量优化。此架构是模块化和灵活的,其中第一个 DNS“层”意味着我们也可以在需要时快速本地空路由来自源的流量。

速度和粘性

我们没有陷入困境并从头开始构建一切,而是很早就决定 Telegraf 可以加速我们的代理开发,并让我们专注于我们自己的更高级别的问题和演示。Telegraf 解决了许多挑战,例如收集、调度、转换和传输等等,但它也具有高性能且值得信赖。当添加其可扩展性、插件架构和受支持的平台时,它成为加速我们工作的明智之举。

Telegraf 和 InfluxDB(包括其一流的 API)的结合立即成为 PanSift 可靠且安全的枢纽。我们可以再次专注于 Web 应用程序、工作流程、用户体验和服务成果,而不是浪费时间试图重新发明轮子。公平地说,InfluxDB 生态系统可以更好地被认为是 PanSift 的不仅仅是轮子,而是变速箱、发动机和电气系统!

因此,通过选择 InfluxDB,我们知道我们正在构建在最佳 TSDB 之上。我们押注在一个由强大的社区驱动的平台,该平台具有清晰沟通的愿景和路线图,与我们的精神相符。对于初创公司而言,速度是关键,因此借助利用可信且可扩展的构建模块的模块化架构,我们避免了陷入困境并开始更快地迭代。

未来状态

着眼于容量和工作负载隔离,我们正在考虑如何使用 InfluxDB Cloud 产品并将特定帐户工作负载迁移到其上。通过将其用作弹性筒仓,它可以简化管理并减少运营开销。这可能适用于具有不断增长的存储桶、机器学习作业或其他应与标准 Web 读取或代理写入隔离的更繁重和更长时间的后台任务的较大客户。

此外,我们不仅对底层时序数据存储的创新(如 InfluxDB IOx)感到兴奋,而且对我们如何利用 InfluxDB 任务来开发新功能感到兴奋。我们对 InfluxDB 对开发者体验和相关工具的关注也感到非常兴奋。

总的来说,我们希望通过帮助 IT 团队将其远程员工队伍扩展到更积极和去中心化的未来来实现很多目标。这不仅仅关乎生活质量、减少对环境的影响或帮助农村复兴,而是关乎授权和赋能战壕中的人们消除苦差事并提高生产力。有了额外的时间,就会有更多机会在生活的其他领域和方面产生更大的影响。

附言:我们部署的免费代理越多,网络效应就越大,这使我们能够对更大的数据集提出更深入的问题,无论是技术性的问题,例如“MCS 索引是否会影响延迟”,还是围绕 ISP 和远程工作者的更广泛的宏观观察。查看我们的一键式演示,或在我们的新生 博客 上留言,说明您接下来想回答哪些问题!

关于作者

Donal-O-Duibhir

Donal 是一位受佛教启发的永续栽培网络极客,他认为一切都是相互关联的。从企业跨国公司到初创公司、农业和追逐独角兽……您可能会发现他在挖土豆、调整共享办公空间中的 RF/Wi-Fi、设计数据中心结构或开发 Web 应用程序……