又一款轻量级监控利器!开源了
点
大家好,我是民工哥。
今天给大家分享一个 k8s 集群流量查看神器,很轻量的一个工具,监控非常方便!
Kubeshark 简介
Kubeshark 由 2021 年 UP9 公司开源的 K8s API 流量查看器 Mizu 发展而来,试图成为一款 K8s 全过程流量监控工具。
Kubeshark 提供实时的 K8s 协议级别的可见性,可以捕获和监控所有在容器、Pod、节点和集群之间进出和流动的流量和负载。可以把它想象成专门针对 Kubernetes 重新发明的 TCPDump 和 Wireshark 工具。
Kubeshark 架构
Kubeshark 由三个不同的软件组成,它们可以协同工作:CLI、Hub 和 Worker。
CLI,它是客户端的二进制文件,通过 K8s API 与集群通信。 Hub,它协调 worker 部署,接收来自每个 worker 的嗅探和剖析,并收集到一个中心位置。它还提供一个Web界面,用于在浏览器上显示收集到的流量。 Work,作为 DaemonSet 部署到集群中,以确保集群中的每个节点都被 Kubeshark 覆盖。
Kubeshark 功能特性
调查 & API 调试
获得对 K8s 内部网络的协议级别可见性,覆盖集群中的所有部分 通过仪表板可以使用丰富的查询语言,实时过滤流式流量和应用层协议 不需要编码、代理、CNI、Sidecar、服务网格或其他任何准备工作,即可在<60 秒内开始使用该工具
网络遥测 & 观测
可以查看显示服务与服务之间连接数据的身份感知服务地图 可以将网络指标和无模式文档流式传输到遥测或日志聚合应用程序中 目前支持 InfluxDB、Grafana 和 Elasticsearch,未来还会有更多的集成支持
检测工程 & 取证
实时检测可疑的网络行为 上传网络跟踪( PCAPs) 到 AWS S3 并发送 Slack 警报 还可以编写自定义逻辑脚本,并结合 OSI L4/L7 hooks 使用
安装运行
下载安装
Mac (x86-64/Intel)
curl -Lo kubeshark https://github.com/kubeshark/kubeshark/releases/download/40.0/kubeshark_darwin_amd64 && chmod 755 kubeshark'
Mac (AArch64/Apple M1 silicon)
rm -f kubeshark && curl -Lo kubeshark https://github.com/kubeshark/kubeshark/releases/download/40.0/kubeshark_darwin_arm64 && chmod 755 kubeshark
Linux (x86-64)
curl -Lo kubeshark https://github.com/kubeshark/kubeshark/releases/download/40.0/kubeshark_linux_amd64 && chmod 755 kubeshark
Linux (AArch64)
curl -Lo kubeshark https://github.com/kubeshark/kubeshark/releases/download/40.0/kubeshark_linux_arm64 && chmod 755 kubeshark
Windows (x86-64)
curl -LO https://github.com/kubeshark/kubeshark/releases/download/40.0/kubeshark.exe
运行
运行 kubeshark tap
命令,在浏览器访问 localhost:8899
https://docs.kubeshark.co/en/install
监控界面
通过监控页面可以看到流量协议,请求路由, 请求响应状态,请求方式,请求源/目标地址 IP,由那个 POD 发起。可以通过过滤器对 包进行过滤。
一些使用场景和用法
可以直接在其 github 站点上看到这些基本使用场景。
监控指定的 Pod
kubeshark tap catalogue-b87b45784-sxc8q
使用正则表达式监控一组 Pod
kubeshark tap "(catalo*|front-end*)"
指定监控的 Namespace
默认情况下,Kubeshark 部署在 default namespace 中,也是监听这个 namespace,可以使用下面的命令指定到一个不同的 namespace 中。
kubeshark tap -n sock-shop
指定所有 Namespaces
kubeshark tap -A
开源地址:https://github.com/kubeshark/kubeshark
注:如需要转载,必须保留文首公众号名片,其它一律视为非授权转载行为。
PS:因为公众号平台更改了推送规则,如果不想错过内容,记得读完点一下“在看”,加个“星标”,这样每次新文章推送才会第一时间出现在你的订阅列表里。点“在看”支持我们吧!