Amazon Web Services 한국 블로그
AI 코딩을 위한 Amazon ECS, Amazon EKS 및 AWS 서버리스 MCP 서버 출시
오늘은 Amazon Elastic Container Service(Amazon ECS), Amazon Elastic Kubernetes Service(Amazon EKS), AWS 서버리스를 위한 Model Context Protocol(MCP) 서버를 소개합니다. 이제 AWS Labs GitHub 리포지토리에서 모두 사용할 수 있습니다. 이러한 오픈소스 솔루션은 사전 학습된 지식을 넘어서는 실시간 상황별 응답을 통해 AI 개발 어시스턴트의 기능을 확장합니다. AI 어시스턴트 내의 대규모 언어 모델(LLM)은 공개 문서를 활용하지만 MCP 서버는 일반적인 배포 오류를 방지하고 보다 정확한 서비스 상호 작용을 제공하는 데 도움이 되는 최신 컨텍스트 및 서비스별 지침을 제공합니다.
이러한 오픈 소스 솔루션을 사용하면 구축 및 배포 프로세스 중에 Amazon Web Services(AWS) 기능 및 구성에 대한 최신 지식을 활용하여 애플리케이션을 더 빠르게 개발할 수 있습니다. 통합 개발 환경(IDE)에서 코드를 작성하든, 프로덕션 문제를 디버깅하든, 이러한 MCP 서버는 Amazon ECS, Amazon EKS 및 AWS 서버리스 기능에 대한 심층적인 이해를 갖춘 AI 코드 어시스턴트를 지원하여 코드에서 프로덕션으로의 여정을 가속화합니다. 명령줄의 Amazon Q Developer(CLI)를 포함하여 널리 사용되는 AI 지원 IDE와 함께 작동하므로 자연어 명령을 사용하여 애플리케이션을 구축하고 배포할 수 있습니다.
- Amazon ECS MCP 서버는 로드 밸런서, 네트워킹, 오토 스케일링, 모니터링, Amazon ECS 작업 정의 및 서비스를 비롯한 모든 관련 AWS 리소스를 구성하여 애플리케이션을 몇 분 내에 컨테이너화하고 Amazon ECS에 배포합니다. 자연어 명령을 사용하면 클러스터 작업을 관리하고, 오토 스케일링 전략을 구현하고, 실시간 문제 해결 기능을 사용하여 배포 문제를 신속하게 식별하고 해결할 수 있습니다.
- Amazon EKS MCP 서버는 AI 어시스턴트에 특정 EKS 환경에 대한 최신 컨텍스트 정보를 제공합니다. 최신 EKS 기능, 지식 기반 및 클러스터 상태 정보에 액세스할 수 있습니다. 이를 통해 초기 설정부터 프로덕션 배포까지 애플리케이션 수명 주기 전체에서 더 정확하고 맞춤화된 지침을 AI 코드 어시스턴트에 제공합니다.
- AWS 서버리스 MCP 서버는 AI 코딩 어시스턴트에 서버리스 패턴, 모범 사례 및 AWS 서비스에 대한 포괄적인 지식을 제공하여 서버리스 개발 경험을 개선합니다. AWS Serverless Application Model 명령줄 인터페이스(AWS SAM CLI) 통합을 사용하면 검증된 아키텍처 패턴을 구현하면서 이벤트를 처리하고 인프라를 배포할 수 있습니다. 이렇게 통합하면 애플리케이션 개발 프로세스 전반에서 기능 수명 주기, 서비스 통합 및 운영 요구 사항이 간소화됩니다. 또한 서버는 코드 결정, AWS Lambda 관련 모범 사례, AWS Lambda 이벤트 소스 매핑을 위한 이벤트 스키마로서의 인프라에 대한 컨텍스트 지침을 제공합니다.
이제 실제 작동 모습을 살펴보겠습니다.
AWS MCP 서버를 처음 사용하는 경우 AWS Labs GitHub 리포지토리의 설치 및 설정 안내서에서 설치 지침을 참조하세요. 설치가 완료되면 다음 MCP 서버 구성을 로컬 설정에 추가하세요.
명령줄용 Amazon Q를 설치하고 ~/.aws/amazonq/mcp.json
에 구성을 추가합니다. 이미 Amazon Q CLI 사용자인 경우 구성만 추가하세요.
{
"mcpServers": {
"awslabs.aws-serverless-mcp": {
"command": "uvx",
"timeout": 60,
"args": ["awslabs.aws_serverless_mcp_server@latest"],
},
"awslabs.ecs-mcp-server": {
"disabled": false,
"command": "uv",
"timeout": 60,
"args": ["awslabs.ecs-mcp-server@latest"],
},
"awslabs.eks-mcp-server": {
"disabled": false,
"timeout": 60,
"command": "uv",
"args": ["awslabs.eks-mcp-server@latest"],
}
}
}
이 데모에서는 Amazon Q CLI를 사용하여 Amazon Nova 모델 쿡북 리포지토리의 02_using_converse_api.ipynb
를 샘플 코드로 사용하여 비디오를 이해하는 애플리케이션을 만들 것입니다. 이를 위해 다음과 같은 프롬프트를 보냅니다.
메타데이터를 자동으로 추출하고 S3 버킷에 업로드된 이미지 및 비디오의 콘텐츠를 이해하고 해당 정보를 데이터베이스에 저장하는 백엔드 애플리케이션을 만들고 싶습니다. 그리고 서버리스 시스템을 사용하여 처리하고 싶습니다. 인프라가 처음부터 끝까지 작동하는 데 필요한 코드와 명령 또는 단계를 포함하여 필요한 모든 것을 생성할 수 있나요? - 이미지 및 비디오 이해를 위한 예제 코드로 02_using_converse_api.ipynb를 사용하세요.
Amazon Q CLI는 MCP 서버 awslabs.aws-serverless-mcp-server
를 포함하여 필요한 도구를 식별합니다. AWS 서버리스 MCP 서버는 단일 상호 작용을 통해 견고한 아키텍처를 구축하기 위한 모든 요구 사항과 모범 사례를 결정합니다.
애플리케이션을 구축하고 테스트하는 Amazon Q CLI에 요청했지만 오류가 발생했습니다. Amazon Q CLI는 사용 가능한 도구를 사용하여 문제를 신속하게 해결했습니다. Amazon DynamoDB 테이블에서 생성된 레코드를 확인하고 dog2.jpeg 파일로 애플리케이션을 테스트하여 성공을 검증했습니다.
비디오 처리 기능을 향상시키기 위해 미디어 분석 애플리케이션을 컨테이너화된 아키텍처로 마이그레이션하기로 결정했습니다. 이 프롬프트를 사용했습니다.
미디어 분석 애플리케이션과 같은 간단한 애플리케이션을 만들어 주셨으면 합니다. 하지만 서버리스가 아닌 컨테이너화된 애플리케이션이어야 합니다. 새 CDK 스택에 구축하도록 도와주세요.
Amazon Q Developer가 애플리케이션 구축을 시작합니다. 이 시간을 활용하여 커피를 마셨어요. 커피를 손에 들고 책상으로 돌아왔을 때 신청서가 준비되어 있는 것을 보고 깜짝 놀랐습니다. 모든 것이 최신 표준에 부합하는지 확인하기 위해 다음과 같이 질문했습니다.
awslabsecs_mcp_server 도구를 사용하여 코드와 모든 앱을 검토하세요.
Amazon Q Developer CLI는 모든 개선 사항과 결론에 대한 요약을 제공합니다.
필요한 Amazon Q Developer CLI에 모든 변경을 요청하고, 준비가 되면 자연어를 사용하여 내 계정에 배포하도록 요청합니다.
몇 분 후 S3 버킷부터 필요한 모든 네트워킹에 이르는 완전한 컨테이너식 애플리케이션이 있음을 검토합니다.
Amazon Q Developer CLI에 앱을 테스트하도록 요청하고 the-sea.mp4 비디오 파일을 전송했는데 타임아웃 오류가 발생했습니다. 그래서 Amazon Q CLI는 awslabsecs_mcp_server
도구의 fetch_task_logs
를 검토하고 오류를 식별한 다음 수정하기로 결정했습니다.
새로 배포한 후 다시 시도했는데 애플리케이션에서 비디오 파일을 성공적으로 처리했습니다.
Amazon DynamoDB 테이블에서 레코드를 볼 수 있습니다.
Amazon EKS MCP 서버를 테스트하기 위해 auction-website-main 폴더에 웹 앱용 코드가 있습니다. 강력한 웹 앱을 만들고 싶어서 Amazon Q CLI에 다음과 같은 프롬프트를 표시하도록 요청했습니다.
auction-website-main 폴더에 있는 기존 코드를 사용하여 웹 애플리케이션을 생성합니다. 이 애플리케이션은 확장될 것이므로 새 EKS 클러스터에서 만들고 싶습니다.
Docker 파일이 생성되면, Amazon Q CLI가 awslabseks_mcp_server
의 generate_app_manifests
를 애플리케이션을 위해 Kubernetes 매니페스트를 생성하기 위한 신뢰할 수 있는 도구로 식별합니다.
그런 다음 manage_eks_staks
도구를 사용하여 새 EKS 클러스터를 생성합니다.
앱이 준비되면 Amazon Q CLI에서 앱을 배포하고 생성된 내용을 요약해서 보여 줍니다.
콘솔에서 업데이트된 상태를 확인할 수 있습니다:
몇 분 후 search_eks_Trueshoot_guide
도구를 사용하여 몇 가지 문제를 해결하면 애플리케이션을 사용할 수 있습니다.
이제 Amazon Q CLI를 통해 자연어 명령만 사용하여 Kitties 마켓플레이스 웹 앱이 Amazon EKS에 배포되었습니다.
지금 시작하기
AWS Labs GitHub 리포지토리를 방문하여 이러한 AWS MCP 서버 사용을 시작하고 여기에서 AI 기반 개발을 개선하세요. 기존 AWS Lambda 함수를 코드 수정 없이 AI 액세스 가능 도구로 변환하는 AWS Lambda 함수를 실행하기 위한 구현 가이드, 예제 구성 및 추가 전문 서버와 함께, Amazon Bedrock 지식 기반에 원활하게 액세스할 수 있게 해주는 Amazon Bedrock Knowledge Bases Retrieval MCP 서버가 리포지토리에 포함되어 있습니다. 리포지토리에 있는 다른 AWS 전문 서버에는 문서, 예제 구성 및 구현 가이드가 포함되어 있어 더 빠르고 안정적으로 애플리케이션을 구축할 수 있습니다.
AWS 서버리스 및 컨테이너용 MCP 서버와 이를 통해 AI 지원 애플리케이션 개발을 혁신하는 방법을 자세히 알아보려면 AWS 서버리스 MCP 서버 소개: 최신 애플리케이션 개발을 위한 AI 기반 개발, Amazon ECS MCP 서버를 사용한 AI 기반 컨테이너 배포 자동화, Amazon EKS MCP 서버를 사용한 애플리케이션 개발 가속화 심층 블로그를 참조하세요.
– Eli