News

Kiro CLI + ArgoCD MCP:终端GitOps管理新范式

Kiro CLI + ArgoCD MCP:终端GitOps管理新范式

传统的ArgoCD应用管理通常需要手动编写Application YAML、配置同步策略,并在命令行界面(CLI)和用户界面(UI)之间频繁切换,效率不高。现在,通过结合Kiro CLI和ArgoCD MCP服务器,开发者可以直接在终端使用自然语言完成所有这些操作,例如创建应用、同步应用、检查健康状态和查看资源树。

回顾GitOps出现之前,Kubernetes的部署工作流主要是手动操作。开发者需要手工编写Deployment、Service、ConfigMap等YAML文件,然后通过kubectl apply命令进行部署。这种方式的问题在于,需要手动验证资源是否在正确的命名空间运行,而且经常忘记将Manifests提交到Git仓库。在不同环境重复部署时,集群状态和代码仓库很容易出现不同步的情况。

一些团队尝试使用Helm Charts进行模板化,这虽然有所帮助,但并未彻底解决“配置漂移”问题。另一些团队构建了自定义的CI/CD流水线,在代码合并时运行kubectl apply,但这种推拉式(push-based)方法仍然不够健壮。

随后,GitOps模式的出现彻底改变了这种局面。它不再是向集群推送更改,而是将期望的集群状态声明在Git仓库中,然后由一个控制器自动从Git中拉取并应用这些更改。ArgoCD是这一模式最流行的实现之一,它持续监控Git仓库,将其与集群中运行的实际状态进行比较,并自动协调差异,从而解决了集群状态一致性问题。

虽然GitOps解决了集群状态管理的核心问题,但日常操作,如编写Application Manifests、配置同步策略以及在UI中导航,仍然存在痛点。而Kiro CLI和ArgoCD MCP服务器所代表的“代理式”(agentic)方法,正是为了解决这些管理挑战而生。

通过这一集成方案,用户将能够把Kiro CLI连接到他们的ArgoCD实例,利用自然语言直接在终端创建、同步和监控ArgoCD应用。这将极大地简化工作流程,并能自动化生成带有自动同步和健康检查功能的Application Manifests。

搭建指南

在开始之前,请确保满足以下先决条件:

  • 一个已安装ArgoCD的EKS集群(或任何Kubernetes集群)
  • 一个ArgoCD API Token
  • 已安装Kiro CLI
  • Node.js v18+

如果您的集群尚未安装ArgoCD,最快捷的方式是在EKS上执行以下命令:

kubectl create namespace argocd
kubectl apply -n argocd -f https://raw.githubusercontent.com/argoproj/argo-cd/stable/manifests/install.yaml

然后,通过端口转发在本地访问ArgoCD UI:

kubectl port-forward svc/argocd-server -n argocd 8080:443

获取ArgoCD API Token

MCP服务器需要API Token才能向ArgoCD进行身份验证。您可以从ArgoCD UI获取:

  • 进入“Settings” → “Accounts” → “admin”
  • 点击“Tokens”下的“Generate New”
  • 复制生成的Token,下一步会用到

或者通过CLI获取:

argocd account generate-token --account admin

连接Kiro CLI到ArgoCD

获取Token后,下一步就是配置Kiro CLI连接到ArgoCD MCP服务器。

↗ 阅读原文