REC

运维必备!Kyanos:网络抓包牛B极了

易航
3月27日发布

网络抓包是网络运维中不可或缺的一部分。它可以帮助运维人员监控网络流量、排查网络故障、优化网络性能,甚至检测安全威胁。想象一下,当你的服务器突然出现高延迟或服务中断时,抓包工具能够帮助你快速定位问题,是来自某个恶意 IP 的攻击,还是某个服务响应过慢?通过抓包,运维人员可以清晰地看到网络流量的每一个细节,从而迅速采取措施,恢复服务的正常运行。

为什么说 Kyanos 是抓包神器?

图片[1] - 运维必备!Kyanos:网络抓包牛B极了 - 易航博客

Kyanos 之所以被称为“抓包神器”,主要得益于其强大的功能和高效的操作。它基于 eBPF 技术,能够直接在内核层面进行数据捕获和分析,这意味着它可以在不影响系统性能的情况下,快速处理大量数据。与传统的抓包工具(如 tcpdump)相比,Kyanos 不仅能够捕获数据包,还能自动解密 SSL 流量,让加密的数据也能一目了然。此外,Kyanos 还支持多种协议(如 HTTP、Redis、MySQL 等),并能够根据进程 ID、容器 ID、请求大小、延迟等多种条件进行过滤,大大提高了运维效率。

图片[2] - 运维必备!Kyanos:网络抓包牛B极了 - 易航博客

Kyanos 的主要功能

图片[3] - 运维必备!Kyanos:网络抓包牛B极了 - 易航博客

  • 强大的流量过滤功能:Kyanos 支持基于进程 ID、容器 ID、七层协议信息、请求/响应字节大小、延迟等多种过滤条件。例如,你可以通过以下命令过滤特定进程的流量:

    ./kyanos watch --pids 1234
  • 高级分析能力:Kyanos 能够聚合捕获的包指标,快速提供关键数据。例如,你可以通过以下命令快速找出最慢的请求:

    ./kyanos stat --slow --time 5
  • 内核级延迟分析:Kyanos 能够可视化显示数据包在网络卡到内核套接字缓冲区的延迟情况,帮助精确定位问题。例如,你可以通过以下命令查看 HTTP 请求的延迟细节:

    ./kyanos watch http
  • 自动解密 SSL 流量:Kyanos 能够自动解密 SSL 流量,让捕获的请求和响应以明文形式呈现,大大简化了分析过程。

安装指南

安装 Kyanos 非常简单。以下是详细的安装步骤:
  1. 检查内核版本:Kyanos 支持 3.10(从 3.10.0-957 开始)和 4.14 及以上版本的内核。你可以通过以下命令检查你的内核版本:

    uname -r
  2. 下载 Kyanos:从发布页面下载适用于你的系统架构(如 amd64 或 arm64)的静态链接二进制文件:

    wget https://github.com/hengyoush/kyanos/releases/download/vx.x.x/kyanos_vx.x.x_linux_amd64.tar.gz
  3. 解压文件

    tar xvf kyanos_vx.x.x_linux_amd64.tar.gz
  4. 运行 Kyanos:运行 Kyanos 需要 root 权限,你可以通过以下命令启动它:

    sudo ./kyanos
Kyanos 是一款真正改变了运维工作方式的抓包工具。它不仅功能强大,还非常轻量级,几乎没有任何依赖。通过强大的流量过滤功能、高级分析能力和内核级延迟分析,Kyanos 能够帮助运维人员快速定位和解决网络问题。如果你还在为网络故障排查而烦恼,不妨试试 Kyanos,它可能会成为你运维工作中的“救命稻草”。

图片[4] - 运维必备!Kyanos:网络抓包牛B极了 - 易航博客

© 版权声明
转载本网站任何内容,请按照转载方式正确书写本站原文地址。
THE END
喜欢就支持一下吧
点赞 0 分享 赞赏
评论 抢沙发
OωO
取消 登录评论