Kubeshark
आधिकारिकक्लस्टर-व्यापी L4 और L7 नेटवर्क ट्रैफ़िक, पैकेट, API और पूर्ण पेलोड तक MCP पहुँच।
Kubeshark MCP के साथ आप क्या कर सकते हैं?
- KFL फ़िल्टर के साथ L7 API लेन-देन क्वेरी करें —
list_api_callsका उपयोग करके HTTP, gRPC, Redis, Kafka या DNS अनुरोधों को खोजें जो स्थिति कोड या पथ जैसी शर्तों से मेल खाते हों। - किसी विशिष्ट API कॉल का विस्तार से निरीक्षण करें —
get_api_callके साथ एकल लेन-देन के लिए पूर्ण अनुरोध/प्रतिक्रिया डेटा प्राप्त करें। - एकत्रित API आँकड़े प्राप्त करें —
get_api_statsका उपयोग करके ट्रैफ़िक पैटर्न, त्रुटि दर या विलंबता वितरण का सारांश प्रस्तुत करें। - L4 नेटवर्क प्रवाह और सारांश देखें —
list_l4_flowsऔरget_l4_flow_summaryके माध्यम से TCP/UDP कनेक्शन सूचीबद्ध करें और कनेक्टिविटी अवलोकन प्राप्त करें। - PCAP स्नैपशॉट बनाएं और प्रबंधित करें —
create_snapshotऔरlist_snapshotsके साथ ऑफ़लाइन विश्लेषण के लिए नेटवर्क ट्रैफ़िक कैप्चर करें। - L7 प्रोटोकॉल डिसेक्शन को नियंत्रित करें —
enable_dissectionऔरdisable_dissectionका उपयोग करके आवश्यकतानुसार गहन प्रोटोकॉल पार्सिंग को सक्षम या अक्षम करें।
दस्तावेज़
Kubeshark MCP सर्वर
Kubeshark MCP (मॉडल कॉन्टेक्स्ट प्रोटोकॉल) सर्वर, Claude Desktop, Cursor और अन्य MCP-संगत क्लाइंट जैसे AI सहायकों को रीयल-टाइम Kubernetes नेटवर्क ट्रैफ़िक क्वेरी करने में सक्षम बनाता है।
AI कौशल
MCP उपकरण प्रदान करता है — AI कौशल एजेंटों को उनका उपयोग करना सिखाते हैं। कौशल कच्ची MCP क्षमताओं को मूल कारण विश्लेषण, ट्रैफ़िक फ़िल्टरिंग और फोरेंसिक जाँच जैसे डोमेन-विशिष्ट वर्कफ़्लो में बदल देते हैं। इंस्टॉलेशन और उपयोग के लिए कौशल README देखें।
| कौशल | विवरण |
|---|---|
network-rca | नेटवर्क मूल कारण विश्लेषण — PCAP और डिसेक्शन मार्गों के साथ स्नैपशॉट-आधारित पूर्वव्यापी जाँच |
kfl | KFL2 फ़िल्टर विशेषज्ञ — सभी समर्थित प्रोटोकॉल पर ट्रैफ़िक क्वेरी लिखें, डीबग करें और ऑप्टिमाइज़ करें |
विशेषताएँ
- L7 API ट्रैफ़िक विश्लेषण: HTTP, gRPC, Redis, Kafka, DNS लेन-देन क्वेरी करें
- L4 नेटवर्क फ़्लो: ट्रैफ़िक आँकड़ों के साथ TCP/UDP फ़्लो देखें
- क्लस्टर प्रबंधन: Kubeshark परिनियोजन प्रारंभ/रोकें (सुरक्षा नियंत्रणों के साथ)
- PCAP स्नैपशॉट: नेटवर्क कैप्चर बनाएँ और निर्यात करें
- अंतर्निहित प्रॉम्प्ट: सामान्य विश्लेषण कार्यों के लिए पूर्व-कॉन्फ़िगर प्रॉम्प्ट
इंस्टॉलेशन
1. Kubeshark CLI इंस्टॉल करें
# macOS
brew install kubeshark
# Linux
sh <(curl -Ls https://kubeshark.com/install)
# Windows (PowerShell)
choco install kubeshark
या GitHub रिलीज़ से डाउनलोड करें।
2. Claude Desktop कॉन्फ़िगर करें
अपने Claude Desktop कॉन्फ़िगरेशन में जोड़ें:
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
डिफ़ॉल्ट (kubectl एक्सेस / kube कॉन्टेक्स्ट आवश्यक)
{
"mcpServers": {
"kubeshark": {
"command": "kubeshark",
"args": ["mcp"]
}
}
}
स्पष्ट kubeconfig पथ के साथ:
{
"mcpServers": {
"kubeshark": {
"command": "kubeshark",
"args": ["mcp", "--kubeconfig", "/path/to/.kube/config"]
}
}
}
URL मोड (कोई kubectl आवश्यक नहीं)
जब मशीन के पास kubectl एक्सेस या kube कॉन्टेक्स्ट न हो तब इसका उपयोग करें। किसी मौजूदा Kubeshark परिनियोजन से सीधे कनेक्ट करें:
{
"mcpServers": {
"kubeshark": {
"command": "kubeshark",
"args": ["mcp", "--url", "https://kubeshark.example.com"]
}
}
}
गेटेड हब (AUTH_ENABLED=true) के लिए, URL मोड टोकन नहीं बना सकता (कोई kube एक्सेस नहीं),
इसलिए --token (या KUBESHARK_HUB_TOKEN env var) के माध्यम से स्पष्ट रूप से एक प्रदान करें। इसे क्लस्टर एक्सेस वाली मशीन से बनाएँ:
kubectl create token kubeshark-cli -n <release-namespace> --audience kubeshark-hub
{
"mcpServers": {
"kubeshark": {
"command": "kubeshark",
"args": ["mcp", "--url", "https://kubeshark.example.com", "--token", "<token>"]
}
}
}
टोकन अल्पकालिक (~1h) होता है और URL मोड इसे ऑटो-रिन्यू नहीं कर सकता; जब यह समाप्त हो जाता है तो सर्वर एक स्पष्ट 401 ... token expired/invalid संदेश रिपोर्ट करता है — पुनः बनाएँ और पुनरारंभ करें। प्रॉक्सी मोड (डिफ़ॉल्ट, kube एक्सेस के साथ) kubeshark-cli टोकन स्वचालित रूप से बनाता है और इसे ऑटो-रिन्यू करता है, इसलिए लंबे समय तक चलने वाले सत्र समाप्त नहीं होते।
विनाशकारी संचालन के साथ
{
"mcpServers": {
"kubeshark": {
"command": "kubeshark",
"args": ["mcp", "--allow-destructive", "--kubeconfig", "/path/to/.kube/config"]
}
}
}
3. कॉन्फ़िगरेशन जनरेट करें
कॉन्फ़िगरेशन जनरेट करने के लिए CLI का उपयोग करें:
kubeshark mcp --mcp-config --url https://kubeshark.example.com
उपलब्ध उपकरण
ट्रैफ़िक विश्लेषण (सभी मोड)
| उपकरण | विवरण |
|---|---|
list_workloads | देखे गए ट्रैफ़िक के साथ पॉड, सेवाएँ, नेमस्पेस सूचीबद्ध करें |
list_api_calls | KFL फ़िल्टरिंग के साथ L7 API लेन-देन क्वेरी करें |
get_api_call | किसी विशिष्ट API कॉल के बारे में विस्तृत जानकारी प्राप्त करें |
get_api_stats | समेकित API आँकड़े प्राप्त करें |
list_l4_flows | L4 (TCP/UDP) नेटवर्क फ़्लो सूचीबद्ध करें |
get_l4_flow_summary | L4 कनेक्टिविटी सारांश प्राप्त करें |
list_snapshots | सभी PCAP स्नैपशॉट सूचीबद्ध करें |
create_snapshot | एक नया PCAP स्नैपशॉट बनाएँ |
get_dissection_status | L7 प्रोटोकॉल पार्सिंग स्थिति जाँचें |
enable_dissection | L7 प्रोटोकॉल डिसेक्शन सक्षम करें |
disable_dissection | L7 प्रोटोकॉल डिसेक्शन अक्षम करें |
क्लस्टर प्रबंधन (केवल प्रॉक्सी मोड)
| उपकरण | विवरण | आवश्यकता |
|---|---|---|
check_kubeshark_status | जाँचें कि Kubeshark चल रहा है या नहीं | - |
start_kubeshark | क्लस्टर में Kubeshark परिनियोजित करें | --allow-destructive |
stop_kubeshark | क्लस्टर से Kubeshark हटाएँ | --allow-destructive |
उपलब्ध प्रॉम्प्ट
| प्रॉम्प्ट | विवरण |
|---|---|
analyze_traffic | API ट्रैफ़िक पैटर्न का विश्लेषण करें और समस्याओं की पहचान करें |
find_errors | API त्रुटियों और विफलताओं को खोजें और सारांशित करें |
trace_request | माइक्रोसर्विसेज़ के माध्यम से अनुरोध पथ ट्रेस करें |
show_topology | सेवा संचार टोपोलॉजी दिखाएँ |
latency_analysis | विलंबता पैटर्न का विश्लेषण करें और धीमे एंडपॉइंट की पहचान करें |
security_audit | सुरक्षा चिंताओं के लिए ट्रैफ़िक ऑडिट करें |
compare_traffic | समय अवधियों के बीच ट्रैफ़िक पैटर्न की तुलना करें |
debug_connection | सेवाओं के बीच कनेक्टिविटी समस्याएँ डीबग करें |
उदाहरण वार्तालाप
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
...
CLI विकल्प
| विकल्प | विवरण |
|---|---|
--url | Kubeshark हब का सीधा URL |
--token | गेटेड हब के विरुद्ध --url मोड के लिए हब SA/बियरर टोकन (KUBESHARK_HUB_TOKEN भी); प्रॉक्सी मोड में अनदेखा, जो टोकन बनाता और ऑटो-रिन्यू करता है |
--kubeconfig | kubeconfig फ़ाइल का पथ |
--allow-destructive | प्रारंभ/रोक संचालन सक्षम करें |
--list-tools | उपलब्ध उपकरण सूचीबद्ध करें और बाहर निकलें |
--mcp-config | Claude Desktop कॉन्फ़िग JSON प्रिंट करें |
KFL (Kubeshark फ़िल्टर भाषा)
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
MCP रजिस्ट्री
Kubeshark प्रत्येक रिलीज़ पर स्वचालित रूप से MCP रजिस्ट्री में प्रकाशित होता है।
इस निर्देशिका में server.json एक संदर्भ फ़ाइल है। वास्तविक रजिस्ट्री मेटाडेटा (संस्करण, SHA256 हैश) रिलीज़ वर्कफ़्लो के दौरान ऑटो-जनरेट होता है। विवरण के लिए .github/workflows/release.yml देखें।
लिंक
लाइसेंस
Apache-2.0