Amazon Web Services 한국 블로그
Amazon CloudWatch Internet Monitor 미리 보기 – 인터넷 성능에 대한 종단 간 가시성 제공
몇 번쯤 모니터링 대시보드에는 정상적인 상황으로 표시되는 시간에 앱이 ‘slow’(느림) 또는 사용할 수 없는 상태라고 신고하는 고객 티켓을 받으셨나요? 이러한 고객 신고를 진단하는 데 시간은 얼마나 걸렸나요?
인터넷에 연결된 애플리케이션을 모니터링할 때 과제 중 하나가 AWS 외부에서 데이터를 수집하여 지리적으로 멀리 떨어진 여러 인터넷 제공업체에 연결된 고객에게 애플리케이션이 어떻게 작동하는지 현실적으로 파악하는 것이라고 말씀하셨습니다. 인터넷 트래픽이 인프라에 도달하기 전에 데이터를 캡처하고 모니터링하는 것은 어렵거나 비용이 많이 듭니다.
인터넷 문제가 애플리케이션 성능과 가용성에 어떻게 영향을 미칠 수 있는지에 대한 가시성을 제공하는 새로운 CloudWatch 기능인 Amazon CloudWatch Internet Monitor의 미리보기를 공개합니다. 인터넷 문제를 진단하는 데 걸리는 시간을 며칠에서 몇 분으로 줄일 수 있습니다.
Internet Monitor에서는 글로벌 네트워킹 환경에서 캡처하는 연결 데이터를 사용하여 인터넷 트래픽의 성능과 가용성의 기준선을 계산합니다. 이 데이터는 AWS에서 자체 인터넷 가동 시간과 가용성을 모니터링하는 데 사용하는 데이터와 동일합니다. Internet Monitor로 다양한 지리적 위치와 네트워크에서 최종 사용자에게 발생하는 인터넷 환경의 문제를 인식할 수 있습니다.
애플리케이션 코드를 계측할 필요가 없습니다. AWS Management Console의 CloudWatch 섹션에서 서비스를 활성화하고 즉시 사용할 수 있습니다.
실제 작동 모습 살펴보기
Internet Monitor를 시작하는 방법은 간단합니다. 고객과 AWS 리소스 간 네트워크 경로를 모니터링하고 싶다고 가정하겠습니다. AWS Management Console을 열고 CloudWatch로 이동합니다. 왼쪽 탐색 메뉴에서 Internet Monitor를 선택합니다. 그런 다음에 Create monitor(모니터 생성)를 선택합니다.
Create monitor(모니터 생성) 페이지에서 Monitor name(모니터 이름)을 입력하고 Add resources(리소스 추가)를 선택하여 모니터링할 리소스를 선택합니다. 이 데모에서는 고객 대면 애플리케이션을 호스팅하는 VPC와 CloudFront 배포를 선택합니다.
선택한 내용을 검토할 기회가 있습니다. 그런 다음에 Create monitor(모니터 생성)를 선택합니다.
그 순간부터 Internet Monitor에서는 자동으로 애플리케이션의 리소스 로그에 따라 데이터를 수집하기 시작합니다. VPC Flow Logs, CloudFront 로그 또는 기타 로그 유형을 활성화하거나 비용을 지불할 필요가 없습니다.
잠시 후 애플리케이션이 느리게 작동한다는 고객 불만이 수신됩니다. Internet Monitor를 다시 열고 앞서 생성한 모니터(Monitor_example)를 선택하고 애플리케이션에서 발생하는 인터넷 성능 문제를 즉시 참조합니다.
Health scores(상태 점수) 그래프에 글로벌 트래픽의 성능과 가용성 정보가 표시됩니다. AWS에는 다양한 네트워크 제공업체와 서비스의 지리적 위치 간 네트워크 트래픽에 대한 인터넷 성능과 가용성에 대한 과거 데이터가 상당히 많이 있습니다. 데이터에 통계 분석을 적용하면 계산된 예상 기준과 비교하여 애플리케이션의 성능과 가용성이 언제 하락했는지 감지할 수 있습니다. 이러한 하락을 더 쉽게 참조할 수 있도록 예상 성능 점수와 가용성 점수 형태로 해당 정보를 알려줍니다.
페이지 아래쪽으로 약간 스크롤합니다. Internet traffic overview(인터넷 트래픽 개요) 맵에 모니터링되는 모든 위치의 전체 이벤트 상태가 표시됩니다. Health events(상태 이벤트) 테이블의 세부 정보를 살펴봅니다. 총 트래픽 영향을 기준으로 정렬하여 전 세계에서 발생하는 다른 이벤트를 강조 표시합니다. 미국 네바다주 라스베이거스의 성능 문제가 애플리케이션 트래픽에 가장 큰 영향을 미치는 것으로 나타납니다.
이제 문제를 식별했더니 과거 데이터가 궁금합니다. 이전에 이런 적이 있었을까요?
Historical Explorer 탭을 선택하여 추세를 이해하고 이 위치 및 네트워크 제공업체와 관련된 이전 데이터를 참조합니다. 과거 최대 18개월까지 사용자 지정된 기간의 성능 점수, 가용성 점수, 전송된 바이트 수, 왕복 시간과 같은 집계된 지표를 p50, p90 및 p95 백분위수로 볼 수 있습니다.
오늘의 인시던트가 첫 번째 인시던트가 아니라는 것을 알 수 있습니다. 이 특정 클라이언트 위치와 네트워크 제공업체에서는 최근 몇 개월 동안 여러 가지 문제가 발생했습니다.
이제 컨텍스트를 이해했으니 문제를 완화할 수 있는 조치가 궁금합니다.
Traffic insights(트래픽 인사이트) 탭으로 전환합니다. 전체 트래픽 데이터와 총 트래픽(바이트 단위)을 기준으로 모니터링 중인 상위 클라이언트 위치가 표시됩니다. 분명히 미국 네바다주 라스베이거스가 상위 클라이언트 위치 중 하나입니다.
미국 네바다주 라스베이거스의 트래픽 세부 정보가 표시되도록 그래프를 선택합니다. Lowest Time To First Byte (TTFB)(최저 첫 번째 바이트까지의 시간(TTFB)) 열에 모든 상위 클라이언트 위치 및 네트워크 조합에 대한 AWS 서비스와 AWS 리전 설정 권장 사항이 표시됩니다. 테이블의 Predicted Time To First Byte(예측된 첫 번째 바이트까지의 시간)에는 제안된 아키텍처 변경을 수행할 경우의 잠재적인 영향이 표시됩니다.
이 예의 Internet Monitor에서는 현재 EC2에서 배포하는 트래픽을 CloudFront에서 배포하도록 하고 us-east-2와 더불어 us-east-1의 EC2 인스턴스를 통해 일부 추가 트래픽을 제공할 수 있도록 하라고 제안합니다.
오늘 이용 가능
Internet Monitor는 다음과 같이 현재 20개 AWS 리전에서 공개 미리보기로 제공됩니다.
- 미주: 미국 동부(오하이오), 미국 동부(버지니아 북부), 미국 서부(캘리포니아 북부), 미국 서부(오레곤), 캐나다(중부), 남아메리카(상파울루).
- 아시아 태평양: 아시아 태평양(홍콩), 아시아 태평양(뭄바이), 아시아 태평양(서울), 아시아 태평양(싱가포르), 아시아 태평양(시드니), 아시아 태평양(도쿄).
- 유럽, 중동 및 아프리카: 아프리카(케이프타운), 유럽(프랑크푸르트), 유럽(아일랜드), 유럽(런던), 유럽(밀라노), 유럽(파리), 유럽(스톡홀름), 중동(바레인)
AWS CloudFormation 지원은 현재 제공되지 않으며 곧 추가될 예정입니다.
미리보기 기간에는 서비스와 관련된 비용이 없습니다. Internet Monitor에서는 지표와 로그를 CloudWatch에 판매한다는 점을 유의하세요. 이러한 추가 CloudWatch 로그와 CloudWatch 지표에는 비용이 부과됩니다.
스타트업 또는 대기업을 불문하고 CloudWatch Internet Monitor는 애플리케이션 성능과 가용성에 대한 사전 대책을 마련하는 데 도움이 됩니다. 지금 사용해보세요!