Kubeshark
chính thứcTruy cập MCP vào lưu lượng mạng L4 và L7 toàn cụm, các gói tin, API và toàn bộ tải trọng.
Bạn có thể làm gì với Kubeshark MCP?
- Truy vấn giao dịch API L7 với bộ lọc KFL — sử dụng
list_api_callsđể tìm các yêu cầu HTTP, gRPC, Redis, Kafka hoặc DNS khớp với các điều kiện như mã trạng thái hoặc đường dẫn. - Kiểm tra chi tiết một lệnh gọi API cụ thể — truy xuất dữ liệu yêu cầu/phản hồi đầy đủ cho một giao dịch duy nhất bằng
get_api_call. - Lấy thống kê API tổng hợp — tóm tắt các mẫu lưu lượng, tỷ lệ lỗi hoặc phân phối độ trễ bằng
get_api_stats. - Xem luồng mạng L4 và bản tóm tắt — liệt kê các kết nối TCP/UDP và nhận tổng quan về kết nối qua
list_l4_flowsvàget_l4_flow_summary. - Tạo và quản lý ảnh chụp PCAP — thu thập lưu lượng mạng để phân tích ngoại tuyến bằng
create_snapshotvàlist_snapshots. - Kiểm soát phân tích giao thức L7 — bật hoặc tắt phân tích giao thức chuyên sâu theo yêu cầu bằng
enable_dissectionvàdisable_dissection.
Tài liệu
Máy chủ Kubeshark MCP
Kubeshark MCP (Giao thức Ngữ cảnh Mô hình) máy chủ cho phép các trợ lý AI như Claude Desktop, Cursor và các máy khách tương thích MCP khác truy vấn lưu lượng mạng Kubernetes thời gian thực.
Kỹ năng AI
MCP cung cấp các công cụ — kỹ năng AI dạy các tác nhân cách sử dụng chúng. Kỹ năng biến các khả năng MCP thô thành các quy trình làm việc theo miền cụ thể như phân tích nguyên nhân gốc, lọc lưu lượng và điều tra pháp y. Xem README kỹ năng để biết cách cài đặt và sử dụng.
| Kỹ năng | Mô tả |
|---|---|
network-rca | Phân tích Nguyên nhân Gốc Mạng — điều tra hồi cứu dựa trên ảnh chụp nhanh với các tuyến PCAP và phân tích gói tin |
kfl | Chuyên gia bộ lọc KFL2 — viết, gỡ lỗi và tối ưu hóa các truy vấn lưu lượng trên tất cả các giao thức được hỗ trợ |
Tính năng
- Phân tích Lưu lượng API L7: Truy vấn các giao dịch HTTP, gRPC, Redis, Kafka, DNS
- Luồng Mạng L4: Xem các luồng TCP/UDP với thống kê lưu lượng
- Quản lý Cụm: Khởi động/dừng triển khai Kubeshark (với các kiểm soát an toàn)
- Ảnh chụp nhanh PCAP: Tạo và xuất các bản ghi mạng
- Lời nhắc Tích hợp: Các lời nhắc được cấu hình sẵn cho các tác vụ phân tích phổ biến
Cài đặt
1. Cài đặt Kubeshark CLI
# macOS
brew install kubeshark
# Linux
sh <(curl -Ls https://kubeshark.com/install)
# Windows (PowerShell)
choco install kubeshark
Hoặc tải xuống từ GitHub Releases.
2. Cấu hình Claude Desktop
Thêm vào cấu hình Claude Desktop của bạn:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
Mặc định (yêu cầu quyền truy cập kubectl / ngữ cảnh kube)
{
"mcpServers": {
"kubeshark": {
"command": "kubeshark",
"args": ["mcp"]
}
}
}
Với đường dẫn kubeconfig rõ ràng:
{
"mcpServers": {
"kubeshark": {
"command": "kubeshark",
"args": ["mcp", "--kubeconfig", "/path/to/.kube/config"]
}
}
}
Chế độ URL (không yêu cầu kubectl)
Sử dụng khi máy không có quyền truy cập kubectl hoặc ngữ cảnh kube. Kết nối trực tiếp đến một triển khai Kubeshark hiện có:
{
"mcpServers": {
"kubeshark": {
"command": "kubeshark",
"args": ["mcp", "--url", "https://kubeshark.example.com"]
}
}
}
Đối với Hub có kiểm soát (AUTH_ENABLED=true), chế độ URL không thể tạo token (không có quyền truy cập kube), vì vậy hãy cung cấp một token rõ ràng qua --token (hoặc biến môi trường KUBESHARK_HUB_TOKEN). Tạo nó từ một máy có quyền truy cập cụm:
kubectl create token kubeshark-cli -n <release-namespace> --audience kubeshark-hub
{
"mcpServers": {
"kubeshark": {
"command": "kubeshark",
"args": ["mcp", "--url", "https://kubeshark.example.com", "--token", "<token>"]
}
}
}
Token có thời hạn ngắn (~1 giờ) và chế độ URL không thể tự động gia hạn nó; khi nó hết hạn, máy chủ báo cáo một thông báo 401 ... token expired/invalid rõ ràng — hãy tạo lại và khởi động lại. Chế độ proxy (mặc định, với quyền truy cập kube) tự động tạo token kubeshark-cli và tự động gia hạn nó, vì vậy các phiên chạy dài không bị hết hạn.
Với các Thao tác Hủy diệt
{
"mcpServers": {
"kubeshark": {
"command": "kubeshark",
"args": ["mcp", "--allow-destructive", "--kubeconfig", "/path/to/.kube/config"]
}
}
}
3. Tạo Cấu hình
Sử dụng CLI để tạo cấu hình:
kubeshark mcp --mcp-config --url https://kubeshark.example.com
Công cụ Khả dụng
Phân tích Lưu lượng (Tất cả các Chế độ)
| Công cụ | Mô tả |
|---|---|
list_workloads | Liệt kê các pod, dịch vụ, không gian tên có lưu lượng quan sát được |
list_api_calls | Truy vấn các giao dịch API L7 với bộ lọc KFL |
get_api_call | Nhận thông tin chi tiết về một lệnh gọi API cụ thể |
get_api_stats | Nhận thống kê API tổng hợp |
list_l4_flows | Liệt kê các luồng mạng L4 (TCP/UDP) |
get_l4_flow_summary | Nhận tóm tắt kết nối L4 |
list_snapshots | Liệt kê tất cả các ảnh chụp nhanh PCAP |
create_snapshot | Tạo một ảnh chụp nhanh PCAP mới |
get_dissection_status | Kiểm tra trạng thái phân tích giao thức L7 |
enable_dissection | Bật phân tích giao thức L7 |
disable_dissection | Tắt phân tích giao thức L7 |
Quản lý Cụm (Chỉ Chế độ Proxy)
| Công cụ | Mô tả | Yêu cầu |
|---|---|---|
check_kubeshark_status | Kiểm tra xem Kubeshark có đang chạy không | - |
start_kubeshark | Triển khai Kubeshark lên cụm | --allow-destructive |
stop_kubeshark | Gỡ bỏ Kubeshark khỏi cụm | --allow-destructive |
Lời nhắc Khả dụng
| Lời nhắc | Mô tả |
|---|---|
analyze_traffic | Phân tích các mẫu lưu lượng API và xác định vấn đề |
find_errors | Tìm và tóm tắt các lỗi và thất bại API |
trace_request | Theo dõi đường dẫn yêu cầu qua các microservice |
show_topology | Hiển thị cấu trúc liên kết giao tiếp dịch vụ |
latency_analysis | Phân tích các mẫu độ trễ và xác định các điểm cuối chậm |
security_audit | Kiểm tra lưu lượng để tìm các mối lo ngại về bảo mật |
compare_traffic | So sánh các mẫu lưu lượng giữa các khoảng thời gian |
debug_connection | Gỡ lỗi các vấn đề kết nối giữa các dịch vụ |
Ví dụ về Hội thoại
User: Show me all HTTP 500 errors in the last hour
Claude: I'll query the API traffic for 500 errors.
[Calling list_api_calls with kfl="http and response.status == 500"]
Found 12 HTTP 500 errors:
1. POST /api/checkout -> payment-service (500)
Time: 10:23:45 | Latency: 2340ms
...
User: What services are communicating with the database?
Claude: Let me check the L4 flows to the database.
[Calling list_l4_flows with dst_filter="postgres"]
Found 5 services connecting to postgres:5432:
- orders-service: 456KB transferred
- users-service: 123KB transferred
...
Tùy chọn CLI
| Tùy chọn | Mô tả |
|---|---|
--url | URL trực tiếp đến Kubeshark Hub |
--token | Token SA/bearer của Hub cho chế độ --url đối với Hub có kiểm soát (cũng là KUBESHARK_HUB_TOKEN); bị bỏ qua trong chế độ proxy, chế độ này tạo và tự động gia hạn token |
--kubeconfig | Đường dẫn đến tệp kubeconfig |
--allow-destructive | Bật các thao tác khởi động/dừng |
--list-tools | Liệt kê các công cụ khả dụng và thoát |
--mcp-config | In JSON cấu hình Claude Desktop |
KFL (Ngôn ngữ Lọc Kubeshark)
Truy vấn lưu lượng bằng cú pháp KFL:
# HTTP requests to a specific path
http and request.path == "/api/users"
# Errors only
response.status >= 400
# Specific source pod
src.pod.name == "frontend-.*"
# Multiple conditions
http and src.namespace == "default" and response.status == 500
Sổ đăng ký MCP
Kubeshark được xuất bản lên Sổ đăng ký MCP tự động trên mỗi bản phát hành.
server.json trong thư mục này là một tệp tham chiếu. Siêu dữ liệu sổ đăng ký thực tế (phiên bản, hàm băm SHA256) được tạo tự động trong quy trình phát hành. Xem .github/workflows/release.yml để biết chi tiết.
Liên kết
Giấy phép
Apache-2.0