Kubernetes MCP服务器

在VS Code Remote – WSL中设置和运行Kubernetes MCP服务器,用于管理Kubernetes集群和与AI驱动的平台工具交互。

  • by msdeepak052
  • 本地部署
  • 更新于
在 GitHub 查看 msdeepak052/Kubernetes-MCP-Server

使用说明

Kubernetes MCP内置VS代码远程–WSL

🧩 先决条件(您已经拥有大多数)

  • Windows 10/11
  • WSL随Ubuntu一起安装
  • kubectl, aws, minikube 已在WSL工作
  • Windows上安装的VS代码

🟢 步骤1——安装 远程–WSL 扩展

  1. 打开 VS代码(Windows)
  2. 首选 扩展 (Ctrl + Shift + X)
  3. 搜索:
WSL
  1. 安装它
  2. 重新启动VS代码一次

🟢 第二步——打开VS代码 WSL内部

  1. 出版社:

    Ctrl + Shift + P
    
  2. 运行:

    Remote-WSL: New Window
    
  3. A. 新的VS代码窗口打开

  4. 左下角必须显示以下内容:

    WSL: Ubuntu
    

⚠️ 如果你仍然看到 >< 或者什么都没有→ 你不在WSL。


🟢 第3步——在WSL中打开您的项目

在 WSL VS代码窗口:

  1. File → Open Folder

  2. 选择以下文件夹:

    /home/deepak/
    

    例子:

    /home/deepak/work/k8s
    
  3. 点击 好的

  4. 如果提示→ “相信作者”→ 是


🟢 第4步——确认你真的在WSL

VS Code内部的开放式终端:

Terminal → New Terminal

运行:

whoami
pwd

预期:

deepak
/home/deepak/...

然后:

kubectl config get-contexts

您应该看到:

  • EKS 集群
  • minicube
  • docker桌面

✅ 这证实了MCP将看到相同的kubeconfig。


🟢 步骤5——(重要)设置安全默认上下文

如果你想进行本地测试:

kubectl config use-context minikube

如果你想要心电图:

kubectl config use-context arn:aws:eks:ap-south-1:339712902352:cluster/deepak-eks

验证:

kubectl get ns

🟢 步骤6——在WSL中安装Node.js(MCP需要)

里面 WSL VS代码终端:

node -v

如果未找到命令,请安装Node LTS:

curl -fsSL https://deb.nodesource.com/setup_lts.x | sudo -E bash -
sudo apt install -y nodejs

验证:

node -v
npm -v
npx -v

🟢 步骤7——配置MCP Kubernetes服务器(WSL)

从下面安装MCP服务器

MCP服务器

打开 设置JSON 在 WSL VS代码:

Ctrl + Shift + P
→ Preferences: Open Settings (JSON)

检查

{
  "mcpServers": {
    "kubernetes": {
      "command": "npx",
      "args": [
        "-y",
        "@kubernetes/mcp-server",
        "--log-level",
        "4"
      ]
    }
  }
}

保存文件。


🟢 步骤8——启动Kubernetes MCP服务器

  1. Ctrl + Shift + P

  2. 运行:

    MCP: List Server
    
  3. 选择:

    kubernetes
    

    启动服务器


🟢 步骤9——确认成功

在MCP日志中,您应该看到:

Connection state: Running
Waiting for server to respond to initialize
Connection state: Ready

🟢 第10步——最终健全性测试

在VS代码聊天中/确保副驾驶通过代理连接:

尝试:

List all namespaces

或者:

Show nodes in the current cluster

你应该得到 实际Kubernetes输出.


🔒 可选(强烈推荐用于EKS)

只读模式(对prod安全):

"--read-only"

禁用破坏性工具:

"--disable-destructive"

例子:

"args": [
  "-y",
  "@kubernetes/mcp-server",
  "--read-only",
  "--disable-destructive"
]

🧠 为什么这种设置是正确的

  • MCP在哪里运行 kubectl+证书 生活

  • 没有Windows↔ WSL文件系统黑客攻击

  • 适用于:

    • EKS
    • minicube
    • 多个集群
  • 这就是人工智能驱动的平台工具的运行方式