Amazon ECS에서 애플리케이션 활성화
이 섹션에 설명된 사용자 지정 설정 단계를 사용하여 Amazon ECS에서 CloudWatch Application Signals를 활성화합니다.
Amazon ECS에서 실행되는 애플리케이션의 경우 CloudWatch 에이전트와 AWS Distro for OpenTelemetry를 직접 설치하고 구성합니다. 사용자 지정 Application Signals 설정으로 활성화된 이러한 아키텍처에서는 Application Signals가 서비스 이름이나 서비스가 실행되는 호스트 또는 클러스터를 자동으로 검색하지 않습니다. 사용자 지정 설정 중에 이러한 이름을 지정해야 하며, 지정하는 이름은 Application Signals 대시보드에 표시됩니다.
사용자 지정 설정을 사용하여 Amazon ECS에서 Application Signals를 활성화합니다.
이 사용자 지정 설정 지침을 사용하여 Amazon ECS의 애플리케이션을 CloudWatch Application Signals에 온보딩합니다. CloudWatch 에이전트와 AWS Distro for OpenTelemetry를 직접 설치하고 구성합니다.
Amazon ECS에 Application Signals를 배포하는 방법에는 두 가지가 있습니다. 환경에 가장 적합한 것을 선택하세요.
사이드카 전략을 사용한 배포 - 클러스터의 각 태스크 정의에 CloudWatch 에이전트 사이드카 컨테이너를 추가합니다.
장점:
ec2및Fargate시작 유형을 모두 지원합니다.환경 변수를 설정할 때
localhost를 항상 IP 주소로 사용할 수 있습니다.
단점:
클러스터에서 실행되는 각 서비스 태스크에 대해 CloudWatch 에이전트 사이드카 컨테이너를 설정해야 합니다.
awsvpc네트워크 모드만 지원됩니다.
대몬 전략을 사용하여 배포 - 클러스터에 CloudWatch 에이전트 태스크를 한 번만 추가하면 Amazon ECS 대몬 예약 전략이 필요에 따라 배포합니다. 이는 각 인스턴스가 트레이스 및 지표를 지속적으로 수신하도록 하여 에이전트가 각 애플리케이션 태스크 정의와 함께 사이드카로 실행할 필요 없이 중앙 집중식 가시성을 제공합니다.
장점:
클러스터에서 CloudWatch 에이전트에 대한 대몬 서비스를 한 번만 설정하면 됩니다.
단점:
Fargate 시작 유형을 지원하지 않습니다.
awsvpc또는bridge네트워크 모드를 사용하는 경우 환경 변수에서 각 컨테이너 인스턴스의 프라이빗 IP 주소를 수동으로 지정해야 합니다.
두 모드는 Amazon ECS 클러스터에서 Application Signals가 서비스의 이름을 자동으로 검색하지 않습니다. 사용자 지정 설정 중 서비스 이름을 지정해야 하며 해당 이름은 Application Signals 대시보드에 표시됩니다.
Model Context Protocol(MCP)을 사용하여 Amazon ECS에서 Application Signals 활성화
CloudWatch Application Signals Model Context Protocol(MCP) 서버를 사용하면 대화형 AI 상호 작용을 통해 Amazon ECS 클러스터에서 Application Signals를 활성화할 수 있습니다. 이렇게 하면 Application Signals 모니터링을 설정하기 위한 자연어 인터페이스가 제공됩니다.
MCP 서버는 사용자의 요구 사항을 파악하고 적합한 구성을 생성하여 활성화 프로세스를 자동화합니다. 사용자는 수동으로 콘솔 단계를 따르거나 CDK 코드를 작성하는 대신, 활성화하려는 항목을 설명하기만 하면 됩니다.
사전 조건
MCP 서버를 사용하여 Application Signals를 활성화하기 전에 다음 요소를 갖추고 있는지 확인합니다.
MCP를 지원하는 개발 환경(예: Kiro, Claude Desktop, MCP 확장이 포함된 VSCode 또는 기타 MCP 호환 도구)
IDE에 구성된 CloudWatch Application Signals MCP 서버. 자세한 설정 지침은 CloudWatch Application Signals MCP 서버 설명서
를 참조하세요.
MCP 서버 사용
IDE에서 CloudWatch Application Signals MCP 서버를 구성하면 자연어 프롬프트를 사용하여 활성화 지침을 요청할 수 있습니다. 코딩 어시스턴트가 프로젝트 구조에서 컨텍스트를 추론할 수 있긴 하지만, 프롬프트에 구체적인 세부 정보를 제공하면 더 정확하고 연관성 높은 가이드를 받을 수 있습니다. 애플리케이션 언어, Amazon ECS 클러스터 이름, 배포 전략(사이드카 또는 대몬), 인프라 및 애플리케이션 코드의 절대 경로 등과 같은 정보를 포함하세요.
모범 사례 프롬프트(구체적이고 완전함):
"Enable Application Signals for my Python service running on ECS. My app code is in /home/user/flask-api and IaC is in /home/user/flask-api/terraform" "I want to add observability to my Node.js application on ECS cluster 'production-cluster' using sidecar deployment. The application code is at /Users/dev/checkout-service and the task definitions are at /Users/dev/checkout-service/ecs" "Help me instrument my Java Spring Boot application on ECS with Application Signals using daemon strategy. Application directory: /opt/apps/payment-api CDK infrastructure: /opt/apps/payment-api/cdk"
효과가 떨어지는 프롬프트:
"Enable monitoring for my app" → Missing: platform, language, paths "Enable Application Signals. My code is in ./src and IaC is in ./infrastructure" → Problem: Relative paths instead of absolute paths "Enable Application Signals for my ECS service at /home/user/myapp" → Missing: programming language, deployment strategy
빠른 템플릿:
"Enable Application Signals for my [LANGUAGE] service on ECS. Deployment strategy: [sidecar/daemon] App code: [ABSOLUTE_PATH_TO_APP] IaC code: [ABSOLUTE_PATH_TO_IAC]"
MCP 서버 사용의 이점
CloudWatch Application Signals MCP 서버를 사용하면 다음과 같은 몇 가지 장점이 제공됩니다.
자연어 인터페이스: 명령이나 구성 구문을 외우지 않고도 활성화하려는 내용을 설명할 수 있습니다.
컨텍스트를 인식하는 가이드: MCP 서버는 사용자의 특정 환경을 이해하고 맞춤형 권장 사항을 제공합니다.
오류 감소: 자동화된 구성 생성으로 수동 입력 오류를 최소화합니다.
더 빠른 설정: 의도한 개념에서 구현까지 더 빠르게 실현합니다.
학습 도구: 생성된 구성을 확인하고 Application Signals의 작동 방식을 이해합니다.
추가 리소스
CloudWatch Application Signals MCP 서버 구성 및 사용에 대한 자세한 내용은 MCP 서버 설명서