什麼是 Amazon EKS MCP 伺服器?
Amazon EKS MCP 伺服器提供一個標準化的 API 介面,讓驅動大型語言模型 (LLM) 的代理和自動化工具無縫地管理 AWS 彈性 Kubernetes 服務 (EKS) 集群和 Kubernetes 資源,透過模型上下文協議 (MCP)。它將 AWS 特定的複雜性和 Kubernetes 操作抽象化,後面配有易於發現的工具,讓雲原生管理對代碼助手和互動應用程式都能輕鬆運用。
如何配置
-
前提條件
- 確保安裝了 Python 3.10 或更高版本(建議透過 uv 安裝)。
- 設定 AWS 憑證(透過配置檔或環境變數),並獲得足夠的權限來管理 EKS、VPC、IAM、CloudFormation 和相關服務。
-
安裝伺服器
- 在你的 MCP 客戶端設置中添加以下配置(例如
mcp.json
、cline_mcp_settings.json
):{ "awslabs.eks-mcp-server": { "command": "uvx", "args": ["awslabs.eks-mcp-server@latest"], "env": { "AWS_PROFILE": "your-aws-profile", "AWS_REGION": "us-east-1", "FASTMCP_LOG_LEVEL": "ERROR" } } }
- 根據你的 AWS 環境調整
AWS_PROFILE
和AWS_REGION
。
- 在你的 MCP 客戶端設置中添加以下配置(例如
-
權限和安全性
- IAM 憑證必須允許完整或範圍內的 EKS 行政管理、VPC、CloudFormation 和 Kubernetes API 存取。
- 如有需要,可以透過環境變數或工具參數配置只讀模式和敏感數據控制(詳見伺服器文檔以獲取高級設置)。
-
啟動伺服器
- MCP 客戶端或協調者(例如 Cline、Cursor、Windsurf)將按照你的配置啟動 EKS MCP 伺服器。
如何使用
-
發現工具
- 使用你的 MCP 啟用客戶端列出可用的 EKS MCP 工具(通常透過
tools/list
或客戶端命令面板)。 - 工具是類似函數的命令,如
create_eks_cluster
、apply_k8s_manifest
等。
- 使用你的 MCP 啟用客戶端列出可用的 EKS MCP 工具(通常透過
-
調用工具
- 使用所需參數調用所需的工具(可以在對話中互動、透過代碼助手或自動流程)。
- 範例:「在 us-east-1 地區建立一個名為 'test-cluster' 的新 EKS 集群,使用 EKS MCP 伺服器。」
- 客戶端將提示你輸入工具參數,驗證權限/批准,並執行請求的操作。
-
監控與反饋
- 使用工具如
get_pod_logs
或get_cloudwatch_metrics
來分析工作負載、故障排除應用程式以及監控集群——直接在你的 AI 助手或應用中接收結果。
- 使用工具如
-
安全控制
- 如你的工作流程要求更高控制,則可透過啟用只讀模式或限制敏感操作來限制操作。
-
與其他 MCP 伺服器結合使用
- 通過利用 EKS MCP 與 VPC、IAM、CI/CD、數據庫或成本分析工具協同操作,來組織端到端的雲工作流程。
主要特點
- EKS 集群管理:創建、配置、更新和刪除 Amazon EKS 集群,包括完整的 VPC 和網絡設置、CloudFormation 協調,及滾動升級。
- Kubernetes 資源生命周期:使用清楚定義的工具端點應用、更新、列出或刪除 Kubernetes 清單和資源。
- 應用部署:生成並部署容器化工作負載的清單,並內建參數化和最佳實踐。
- 運營支持:訪問實時和歷史日誌、事件和集群健康指標,包括直接的 CloudWatch 集成。
- 安全與權限:支持 IAM 基於的身份驗證/授權、敏感數據訪問控制及可選的只讀操作。
- 可自定義模式:透過配置或環境變數微調伺服器設置(例如日誌、訪問級別、自動批准),以滿足你的工作流程和合規要求。
使用案例
- 自動化 EKS 集群配置:讓 AI 編碼助手作為 DevOps 工作流或 CI/CD 管道的一部分來啟動或拆除整個 EKS 集群。
- 聲明式基礎設施更新:使用提示驅動的界面生成並應用 Kubernetes 資源清單,快速迭代應用。
- 多階段應用部署:最小的手動介入完成微服務或網頁應用的部署、擴展和回滾。
- 透明故障排除:以自然語言或互動筆記本環境檢索 Pod 日誌、事件流和集群/狀態指標。
- 訓練、示範和沙盒:為測試、示範和教育用途提供短暫集群或命名空間——簡單拆除以控制成本。
- 安全意識操作:採用只讀或受限模式來處理 QA、審核或檢查場景—確保對敏感生產資源的保護。
常見問題
Q1: 我可以使用 EKS MCP 伺服器管理跨多個 AWS 帳戶或區域的集群嗎?
可以,你可以配置伺服器使用不同的 AWS 配置檔和區域。每個伺服器實例皆使用指定憑證/環境變數的權限和上下文運作。
Q2: 伺服器如何處理敏感操作,如刪除集群或修改 IAM 權限?
默認情況下,操作需要明確調用及用戶批准(除非啟用了自動批准)。敏感操作可以受到限制,或需要額外參數。為安全起見,也提供只讀模式。
Q3: 如果我的 AWS 憑證過期或權限不足會怎麼樣?
伺服器將向你的客戶端回報權限錯誤。為確保操作不間斷,請確認憑證有效,且你的 IAM 角色或用戶擁有所有必要的 EKS、Kubernetes 及相關 AWS API 權限。
Q4: 我可以為不同的環境運行多個 EKS MCP 伺服器實例嗎?
當然可以。每個伺服器都可以為不同的 AWS 環境(開發、測試、生產)進行獨立配置,並擁有不同的配置檔/區域。
Q5: 伺服器支持自定義 Kubernetes 資源定義 (CRD) 嗎?
是的,只要提供有效的清單,伺服器就可以使用相關工具端點應用、更新或刪除自定義 K8s 資源。