158 lines
7.1 KiB
Markdown
158 lines
7.1 KiB
Markdown
<!-- WEHUB_ZH_README -->
|
||
> [!NOTE]
|
||
> 本文档由 WeHub 基于上游 README 翻译整理,属于社区翻译,非官方中文文档。
|
||
> [English](./README.en.md) · [原始项目](https://github.com/kubeshark/kubeshark) · [上游 README](https://github.com/kubeshark/kubeshark/blob/HEAD/README.md)
|
||
> 原作者、版权与许可证归属以原始项目及本仓库 LICENSE 文件为准。
|
||
|
||
<p align="center">
|
||
<img src="https://raw.githubusercontent.com/kubeshark/assets/master/svg/kubeshark-logo.svg" alt="Kubeshark" height="120px"/>
|
||
</p>
|
||
|
||
<p align="center">
|
||
<a href="https://github.com/kubeshark/kubeshark/releases/latest"><img alt="Release" src="https://img.shields.io/github/v/release/kubeshark/kubeshark?logo=GitHub&style=flat-square"></a>
|
||
<a href="https://hub.docker.com/r/kubeshark/worker"><img alt="Docker pulls" src="https://img.shields.io/docker/pulls/kubeshark/worker?color=%23099cec&logo=Docker&style=flat-square"></a>
|
||
<a href="https://discord.gg/WkvRGMUcx7"><img alt="Discord" src="https://img.shields.io/discord/1042559155224973352?logo=Discord&style=flat-square&label=discord"></a>
|
||
<a href="https://join.slack.com/t/kubeshark/shared_invite/zt-3jdcdgxdv-1qNkhBh9c6CFoE7bSPkpBQ"><img alt="Slack" src="https://img.shields.io/badge/slack-join_chat-green?logo=Slack&style=flat-square"></a>
|
||
</p>
|
||
|
||
<p align="center"><b>面向 SRE 与 AI Agent 的网络可观测性</b></p>
|
||
|
||
<p align="center">
|
||
<a href="https://demo.kubeshark.com/">在线演示</a> · <a href="https://docs.kubeshark.com">文档</a>
|
||
</p>
|
||
|
||
---
|
||
|
||
Kubeshark 使用 eBPF 在内核层面对集群范围内的网络流量进行索引 — 借助网络、API 与 Kubernetes 语义,为任意查询提供即时答案。
|
||
|
||
**你可以做什么:**
|
||
|
||
- **下载回顾性 PCAP** — 按节点、时间、工作负载和 IP 筛选的集群范围数据包捕获。可长期保留 PCAP,供后续调查使用。
|
||
- **可视化网络数据** — 通过实时仪表板,以 API、Kubernetes 或网络语义探索符合查询的流量。
|
||
- **以明文查看加密流量** — 使用 eBPF 自动解密 TLS/mTLS 流量,无需密钥管理或 sidecar。
|
||
- **与 AI 集成** — 将你偏好的 AI 助手(如 Claude、Copilot)接入,将网络数据纳入事件响应与根因分析(Root Cause Analysis, RCA)等 AI 驱动的工作流。
|
||
|
||

|
||
|
||
---
|
||
|
||
## 快速开始
|
||
|
||
```bash
|
||
helm repo add kubeshark https://helm.kubeshark.com
|
||
helm install kubeshark kubeshark/kubeshark
|
||
kubectl port-forward svc/kubeshark-front 8899:80
|
||
```
|
||
|
||
在浏览器中打开 `http://localhost:8899`。你已开始捕获流量。
|
||
|
||
> 生产环境建议通过 [ingress controller](https://docs.kubeshark.com/en/ingress) 替代 port-forward。
|
||
|
||
**通过 MCP 连接 AI agent**:
|
||
|
||
```bash
|
||
brew install kubeshark
|
||
claude mcp add kubeshark -- kubeshark mcp
|
||
```
|
||
|
||
[MCP 配置指南 →](https://docs.kubeshark.com/en/mcp)
|
||
|
||
---
|
||
|
||
### 面向 AI Agent 的网络数据
|
||
|
||
Kubeshark 通过 [MCP](https://docs.kubeshark.com/en/mcp) 暴露集群范围内的网络数据 — 使 AI agent 能够以自然语言查询流量、调查 API 调用并执行根因分析。
|
||
|
||
> *"为什么 checkout 在下午 2:15 失败了?"*
|
||
> *"哪些服务的错误率超过 1%?"*
|
||
> *"显示所有节点间路径的 TCP 重传率"*
|
||
> *"追踪请求 abc123 在所有服务中的流转"*
|
||
|
||
可与 Claude Code、Cursor 及任何兼容 MCP 的 AI 配合使用。
|
||
|
||

|
||
|
||
[MCP 配置指南 →](https://docs.kubeshark.com/en/mcp)
|
||
|
||
### AI 技能
|
||
|
||
开源、可复用的技能,用于在 Kubeshark 的 MCP 工具之上,教会 AI agent 领域特定的工作流:
|
||
|
||
| 技能 | 描述 |
|
||
|-------|-------------|
|
||
| **[Network RCA](skills/network-rca/)** | 回顾性根因分析 — 快照、解析、PCAP 提取、趋势对比 |
|
||
| **[KFL](skills/kfl/)** | KFL(Kubeshark Filter Language)专家 — 编写、调试并优化流量过滤器 |
|
||
|
||
作为 Claude Code 插件安装:
|
||
|
||
```
|
||
/plugin marketplace add kubeshark/kubeshark
|
||
/plugin install kubeshark
|
||
```
|
||
|
||
或直接克隆使用 — 技能会根据对话上下文自动触发。
|
||
|
||
[AI 技能文档 →](https://docs.kubeshark.com/en/mcp/skills)
|
||
|
||
---
|
||
|
||
### 使用 API、Kubernetes 与网络语义进行查询
|
||
|
||
Kubeshark 依据协议规范解析流量,对集群范围内的网络流量进行索引,支持 HTTP、gRPC、Redis、Kafka、DNS 等。单个 [KFL 查询](https://docs.kubeshark.com/en/v2/kfl2) 可组合全部三层语义 — Kubernetes 身份、API 上下文与网络属性 — 精确定位所需流量。无需代码插桩。
|
||
|
||

|
||
|
||
[KFL 参考 →](https://docs.kubeshark.com/en/v2/kfl2) · [流量索引 →](https://docs.kubeshark.com/en/v2/l7_api_dissection)
|
||
|
||
### 工作负载依赖图
|
||
|
||
可视化展示工作负载之间的通信方式,呈现集群内的依赖关系、流量规模与协议使用情况。
|
||
|
||

|
||
|
||
[了解更多 →](https://docs.kubeshark.com/en/v2/service_map)
|
||
|
||
### 流量保留与 PCAP 导出
|
||
|
||
在集群范围内捕获并保留原始网络流量,包括已解密的 TLS。可按时间范围、节点、工作负载和 IP 下载 PCAP — 可直接用于 Wireshark 或任何兼容 PCAP 的工具。将快照存储到云存储(S3、Azure Blob、GCS)以实现长期保留与跨集群共享。
|
||
|
||

|
||
|
||
[快照指南 →](https://docs.kubeshark.com/en/v2/traffic_snapshots) · [云存储 →](https://docs.kubeshark.com/en/snapshots_cloud_storage)
|
||
|
||
---
|
||
|
||
## 功能特性
|
||
|
||
| 功能 | 描述 |
|
||
|---------|-------------|
|
||
| [**流量快照**](https://docs.kubeshark.com/en/v2/traffic_snapshots) | 时间点快照,支持云存储(S3、Azure Blob、GCS),可导出 PCAP 供 Wireshark 使用 |
|
||
| [**流量索引**](https://docs.kubeshark.com/en/v2/l7_api_dissection) | 实时与延迟 L7 索引,支持请求/响应匹配与完整载荷 |
|
||
| [**协议支持**](https://docs.kubeshark.com/en/protocols) | HTTP、gRPC、GraphQL、Redis、Kafka、DNS 等 |
|
||
| [**TLS 解密**](https://docs.kubeshark.com/en/encrypted_traffic) | 基于 eBPF 的解密,无需密钥管理,包含在快照中 |
|
||
| [**AI 集成**](https://docs.kubeshark.com/en/mcp) | MCP 服务器 + 开源 AI 技能,用于网络 RCA 与流量过滤 |
|
||
| [**KFL 查询语言**](https://docs.kubeshark.com/en/v2/kfl2) | 基于 CEL 的查询语言,支持 Kubernetes、API 与网络语义 |
|
||
| [**100% 本地部署**](https://docs.kubeshark.com/en/air_gapped) | 支持气隙(air-gapped)环境,无外部依赖 |
|
||
|
||
---
|
||
|
||
## 安装
|
||
|
||
| 方式 | 命令 |
|
||
|--------|---------|
|
||
| Helm | `helm repo add kubeshark https://helm.kubeshark.com && helm install kubeshark kubeshark/kubeshark` |
|
||
| Homebrew | `brew install kubeshark && kubeshark tap` |
|
||
| Binary | [下载](https://github.com/kubeshark/kubeshark/releases/latest) |
|
||
|
||
[安装指南 →](https://docs.kubeshark.com/en/install)
|
||
|
||
---
|
||
|
||
## 贡献
|
||
|
||
欢迎贡献。请参阅 [CONTRIBUTING.md](CONTRIBUTING.md)。
|
||
|
||
## 许可证
|
||
|
||
[Apache-2.0](LICENSE)
|