Kubernetes MCP服務器(K8s MCP):如何使用?

#作者:曹付江

文章目錄

  • 1、什么是 Kubernetes MCP 服務器?
    • 1.1、K8s MCP 服務器
  • 2、開始前的準備工作
    • 2.1. Kubernetes集群
    • 2.2. 安裝并運行 kubectl
    • 2.3. Node.js 和 Bun
    • 2.4. (可選)Helm v3
  • 3、如何設置 K8s MCP 服務器
    • 3.1. 克隆存儲庫
    • 3.2. 使用 Bun 安裝依賴項
    • 3.3. 運行 K8s MCP 服務器:
    • 3.4. 使用 MCP Inspector 進行本地測試:
  • 4、保持安全
  • 5、結論

管理 Kubernetes (K8s) 部署可能很困難。但有了人工智能,您就可以更輕松地處理容器,而不會失去控制或影響安全性。這就是 Kubernetes MCP服務器(K8s MCP)的用武之地。
在本文章中,將學習如何使用 K8s MCP 服務器–一個使用模型上下文協議(MCP)讓人工智能與 Kubernetes 集群交互的工具。它能幫助你自動執行任務、獲得洞察力,甚至使用人工智能助手來管理部署。讓我們開始吧!
(專業提示:想要利用人工智能提高開發速度?也可以看看 Apidog MCP 服務器–它可以讓 Cursor 等 AI 驅動的集成開發環境將您的 API 規范用作數據源。這意味著 Agentic AI 可以直接理解、瀏覽您的 API 并與之交互,從而使您的開發工作流程更快、更智能。)

1、什么是 Kubernetes MCP 服務器?

把 Kubernetes想象成云環境的操作系統,現在把K8s MCP服務器想象成一個翻譯器,幫助人工智能安全地理解和管理系統。

1.1、K8s MCP 服務器

  1. 充當人工智能工具與 Kubernetes 之間的安全橋梁。
  2. 使用模型上下文協議(MCP)安全地公開 Kubernetes 操作。
  3. 讓人工智能做以下事情:
  • 列出資源(pod、部署、服務等);
  • 檢查資源詳情
  • 執行命令(擴展、更新、重啟等)。
    在這里插入圖片描述
    最重要的是,它能確保這些操作得到授權并記錄在案,從而保證集群安全。

2、開始前的準備工作

在設置 K8s MCP 服務器之前,請確保您具備以下條件:

2.1. Kubernetes集群

任何類型都可以–本地(如 Minikube 或 Rancher Desktop)或云端(AWS、GCP、Azure 等)。

2.2. 安裝并運行 kubectl

  • 安裝 kubectl 并確保其位于系統路徑中。
  • 檢查是否有有效的 kubeconfig 文件(通常位于 ~/.kube/config)。
  • 運行 kubectl get pods,確認它已正確連接到集群。

2.3. Node.js 和 Bun

本項目使用 Node.js 和 Bun 軟件包管理器。安裝這兩個軟件包。

在這里插入圖片描述

2.4. (可選)Helm v3

如果您的項目使用 Helm,請安裝 Helm v3。你可以從 Helm 的官方網站獲取。

在這里插入圖片描述

3、如何設置 K8s MCP 服務器

3.1. 克隆存儲庫

打開終端,運行以下命令

git clone [repository_url]
cd [project_directory]

這將從 GitHub 下載代碼,并將你移入項目目錄。

3.2. 使用 Bun 安裝依賴項

本項目使用快速 JavaScript 運行時 Bun 作為軟件包管理器。確保已安裝 Bun,然后運行:
bun install
(該命令讀取 package.json 文件并安裝項目所需的所有依賴項。)

3.3. 運行 K8s MCP 服務器:

bun start
這將啟動 K8s MCP 服務器。它會自動連接到你當前配置的 kubectl 上下文。確保與 K8s 集群的連接正常,否則服務器會出現連接問題。
重要注意事項: 由于服務器會自動連接到當前的 kubectl 上下文,因此如果項目中有 Helm 圖表,請確保 Helm 已正確配置。

3.4. 使用 MCP Inspector 進行本地測試:

為了快速測試 k8 的 MCP服務器,建議使用模型上下文協議檢查器(@modelcontextprotocol/inspector)進行本地測試。該工具可幫助您直觀了解 MCP 服務器的功能并與之交互。
請按照終端中的屏幕指示在瀏覽器中訪問檢查器鏈接。這將允許您探索可用的 MCP 資源和測試命令。

在這里插入圖片描述
1)用Claude Desktop測試 K8s MCP 服務器
要將 K8s MCP 與 Claude Desktop(或其他 AI 工具)集成,需要配置 Claude 以便與服務器通信。
找到 Claude Desktop 配置:在 Claude Desktop 的設置中找到 “laude_desktop_config.json ”文件(通常在開發人員或高級部分)。

2)添加 MCP 服務器配置
在 “laude_desktop_config.json ”文件的 mcp 服務器部分添加一個新條目:

{"name": "K8s MCP Server","path": "/absolute/path/to/your/mcp-server-kubernetes/dist/index.js"
}

重要: 將“/path/to/your/mcp-server-kubernetes/dist/index.js ”替換為克隆版本庫中 “dist/index.js ”文件的實際絕對路徑。

3)使用 Claude Desktop 進行測試
重新啟動Claude desktop。現在,你應該能通過 Claude 使用自然語言命令與 Kubernetes 集群交互了。首先讓 Claude 列出你的 pod 或創建一個測試部署,看看與服務器的連接是否正常。如果這些都能正常工作,那么就可以放心地認為其他部分也能正常工作。

示例 1:"能否列出默認命名空間中的 pod?
在這里插入圖片描述
Example 2: “Can you create and nginx pod in the default namespace and name it nginx-pod”
在這里插入圖片描述
Example 3: “Can you delete the nginx pod”
在這里插入圖片描述

4、保持安全

安全至關重要。在允許人工智能訪問重要操作之前:

  • 檢查權限: 了解您當前的 kubectl 上下文或服務賬戶能做什么。
  • 限制范圍: 除非絕對必要,否則避免授予廣泛的權限。
  • 監控操作: 使用日志和審計跟蹤人工智能的操作。

5、結論

通過設置 K8s MCP 服務器,您已經向更智能、人工智能驅動的 Kubernetes 管理邁出了第一步。這為實現更多自動化、更好的洞察力和更輕松的控制打開了大門。但請始終牢記安全性。在將人工智能用于生產關鍵任務之前,請進行全面測試。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/906289.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/906289.shtml
英文地址,請注明出處:http://en.pswp.cn/news/906289.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

計算機網絡-HTTP與HTTPS

文章目錄 計算機網絡網絡模型網絡OSITCP/IP 應用層常用協議HTTP報文HTTP狀態碼HTTP請求類型HTTP握手過程HTTP連接HTTP斷點續傳HTTPSHTTPS握手過程 計算機網絡 網絡模型 為了解決多種設備能夠通過網絡相互通信,解決網絡互聯兼容性問題。 網絡模型是計算機網絡中用于…

Springboot 跨域攔截器配置說明

錯誤代碼 跨域設置 Configuration public class WebConfig implements WebMvcConfigurer {/*** cors 跨域配置*/Overridepublic void addCorsMappings(CorsRegistry registry) {registry.addMapping("/**").allowedMethods("GET", "HEAD", &qu…

受不了github的網絡限制了,我開源了一個圖床工具 gitee-spring-boot-starter

嗨嗨嗨~ 我老馬又又來了!!!上次寫了一篇我開源了一款阿里云OSS的spring-boot-starter,然后買的資源包到期了,后面又想白(開)嫖(源)的路子,首先想到了使用gith…

基于labview的聲音采集、存儲、處理

程序1:基于聲卡的數據采集 程序2:基于聲卡的雙聲道模擬輸出 程序3:聲音信號的采集與存儲 程序4:聲音信號的功率譜分析 程序5:基于labview的DTMF

第一次經歷項目上線

這幾天沒寫csdn,因為忙著項目上線的問題,我這階段改了非常多的前端bug哈哈哈哈,說幾個比較好的bug思想! 這個頁面算是我遇到的比較大的bug,因為我一開始的邏輯都寫好了,詢價就是在點擊快遞公司彈出彈框的時…

基于EFISH-SCB-RK3576/SAIL-RK3576的消防機器人控制器技術方案?

(國產化替代J1900的應急救援智能化解決方案) 一、硬件架構設計? ?極端環境防護系統? ?防爆耐高溫設計?: 采用陶瓷纖維復合裝甲(耐溫1200℃持續1小時),通過GB 26784-2023消防設備防爆認證IP68防護等級…

企業開發工具git的使用:從入門到高效團隊協作

前言:本文介紹了Git的安裝、本地倉庫的創建與配置,以及工作區、暫存區和版本庫的區分。詳細講解了版本回退、撤銷修改等操作,并深入探討了分支管理,包括分支的創建、切換、合并、刪除及沖突解決。此外,還介紹了遠程操作…

Java反射機制詳解:原理、應用與實戰

一、反射機制概述 Java反射(Reflection)是Java語言的一個強大特性,它允許程序在運行時(Runtime)獲取類的信息并操作類或對象的屬性、方法等。反射機制打破了Java的封裝性,但也提供了極大的靈活性。 反射的核心思想:在運行時而非編譯時動態獲…

成功案例丨從草圖到鞍座:用先進的發泡成型仿真技術變革鞍座制造

案例簡介 在鞍座制造中,聚氨酯泡沫成型工藝是關鍵環節,傳統依賴實驗測試的方法耗時且成本高昂。為解決這一問題,意大利自行車鞍座制造商 Selle Royal與Altair合作,采用Altair Inspire PolyFoam軟件進行發泡成型仿真。 該工具幫助團…

隧道結構安全在線監測系統解決方案

一、方案背景 隧道是地下隱蔽工程,會受到潛在、無法預知的地質因素影響。隨著我國公路交通建設的發展,隧道占新建公路里程的比例越來越大。隧道屬于線狀工程,有的規模較大,可長達幾公里或數十公里,往往穿越許多不同環境…

選錯方向太致命,華為HCIE數通和云計算到底怎么選?

現在搞HCIE的兄弟越來越多了,但“數通和云計算,到底考哪個?”這問題,依舊讓不少人頭疼。 一個是華為認證的老牌王牌專業——HCIE數通,穩、系統、崗位多; 一個是新趨勢方向,貼合云原生、數字化…

相機基礎常識

相機基礎常識 相機中顏色濾鏡的作用🎨 1. **捕捉彩色圖像**? 最常見的顏色濾鏡陣列是 **拜耳濾鏡(Bayer Filter)**: 🔍 2. **實現特定的圖像效果或分析功能**? 常見的濾鏡類型包括: 🛠? 3. *…

paddle ocr本地化部署進行文字識別

一、Paddle 簡介 1. 基本概念 Paddle(全稱 PaddlePaddle,飛槳)是百度開發的 開源深度學習平臺,也是中國首個自主研發、功能豐富、技術領先的工業級深度學習平臺。它覆蓋了深度學習從數據準備、模型訓練、模型部署到預測的全流程…

開源AI大模型等“神秘組合”,如何顛覆零售業數字化轉型?

基于開源AI大模型、AI智能名片與S2B2C商城小程序源碼的零售行業數字化轉型新路徑研究 摘要:在業界將企業數字化轉型劃分為管理數字化、工業數字化和營銷數字化三大部分的背景下,國內大型制造企業在ERP與工業4.0洗禮下正邁向智能型發展道路。而零售行業面…

uniapp+vite+cli模板引入tailwindcss

目前vitecli方式用的都是官方提供的模板,vite版本還是4.14版本,較舊,而tailwindcss已經有了4版本,實際發現引入最新版會報錯,因而繼續使用3.3.5版本 pnpm install tailwindcss3.3.5 uni-helper/vite-plugin-uni-tail…

Golang中的runtime.LockOSThread 和 runtime.UnlockOSThread

在runtime中有runtime.LockOSThread 和 runtime.UnlockOSThread 兩個函數,這兩個函數有什么作用呢?我們看一下標準庫中對它們的解釋。 runtime.LockOSThread // LockOSThread wires the calling goroutine to its current operating system thread. // T…

Ubuntu搭建NFS服務器的方法

0 工具 Ubuntu 18.041 Ubuntu搭建NFS服務器的方法 在Ubuntu下搭建NFS(網絡文件系統)服務器可以讓我們像訪問本地文件一樣訪問Ubuntu上的文件,例如可以把開發板的根文件系統放到NFS服務器目錄下方便調試。 1.1 安裝nfs-kernel-server&#…

HarmonyOS Next應用分層架構下組件封裝開發實踐

基于鴻蒙應用分層架構的ArkUI組件封裝實踐 在鴻蒙應用開發中,合理利用 ArkUI 組件進行封裝,可以實現代碼復用,提升開發效率。本文將結合鴻蒙應用分層架構的特點,詳細探討幾個典型的 ArkUI 組件封裝場景及其實現方案。 華為鴻蒙應…

JAVA請求vllm的api服務報錯Unsupported upgrade request、 Invalid HTTP request received.

環境: vllm 0.8.5 java 17 Qwen3-32B-FP8 問題描述: JAVA請求vllm的api服務報錯Unsupported upgrade request、 Invalid HTTP request received. WARNING: Unsupported upgrade request. INFO: - "POST /v1/chat/completions HTTP/1.1&…

舊 docker 版本通過 nvkind 搭建虛擬多節點 gpu 集群的坑

踩坑 參考nvkind教程安裝到Setup這一步,由于docker版本較舊,–cdi.enabled 和 config 參數執行不了 手動修改 /etc/docker/daemon.json 配置文件 "features": {"cdi": true}手動修改 /etc/nvidia-container-runtime/config.toml 配…