시대가 바뀌어도 변하지 않는 것, APM을 통한 가시성 확보의 중요성
APM(Application Performance Management) 없는 엔터프라이즈 컴퓨팅 환경은 상상하기 어렵습니다. APM은 웹 기반 엔터프라이즈 애플리케이션 구축과 운영에 있어 사용자 경험 보장에 꼭 필요한 솔루션인데요. 이는 APM이 가장 확실한 웹 기반 애플리케이션 성능 모니터링, 관리 수단이기 때문입니다. 그렇다면 최근 빠르게 클라우드 네이티브를 향하는 엔터프라이즈 컴퓨팅의 변화 속에서 APM은 어떤 역할을 할까요? 기술 트렌드가 바뀌어도 여전히 그 가치를 인정받고 있는 APM에 대해 알아보겠습니다.
APM의 정의는 간단합니다. 사용자와 비즈니스 측면에서 현재 서비스 중인 애플리케이션을 모니터링하고 관리하는 체계죠. 그리고 이 체계를 마련하고 이어가기 위해 쓰는 것이 APM 솔루션입니다. 엔터프라이즈 컴퓨팅 환경 변화에 따라 APM 솔루션이 진화한 방향을 보면 클라우드 시대의 모습이 그려집니다.
1세대 APM이 등장한 때는 90년대 후반입니다. Precise, wily, Mercury, Quest가 초기 솔루션의 개척자였죠. 1세대는 3티어 환경의 애플리케이션 모니터링이 주요 활용 목적이었습니다. APM의 가치에 대한 공감대가 커지면서 인수합병 열풍이 불었는데요. 이후 Symantec, CA, HP 등의 이름이 본격적으로 APM 시장에 등장하며 2세대가 시작됐습니다.
2세대 솔루션 역시 운영체제, 웹 애플리케이션 서버, 데이터베이스의 모니터링과 관리라는 기본 기능은 1세대와 다르지 않았습니다. 다만, 복잡한 엔터프라이즈 환경, 고객마다 다른 요구 사항을 수용할 수 있도록 오픈 소스를 포함해 여러 기업의 운영체제와 웹 애플리케이션 서버, 데이터베이스를 지원하고 다양한 애플리케이션 프레임워크와 호환성을 폭넓게 보장했습니다.
활용 목적도 세대 간 차이가 있었는데요. 1세대는 통합 성능 모니터링이 목표였다면 2세대 솔루션의 운영 목표는 가용성 보장, 신속한 장애 대응, 사용자 경험 개선까지 확대됐습니다.
클라우드 시대를 위한 준비
그렇다면 2세대의 뒤를 잇는 현대화된 APM은 어떤 요구에 맞춰 진화 중일까요? 3세대라 할 수 있는 최신 APM은 기업 컴퓨팅 환경이 클라우드 친화적으로 바뀌는 흐름에 맞춰 발전하고 있습니다.
애플리케이션 측면에서 보자면 가상화된 인프라를 넘어 컨테이너 환경까지 수용하는 쪽으로 모니터링과 관리를 세분화해 나아가고 있는데요. 많은 기업이 클라우드 전환 목표로 삼고 있는 마이크로서비스 아키텍처(MSA) 환경은 추상화 수준이 전통적인 모노리틱 아키텍처보다 높고 서비스 단위도 훨씬 작게 나뉩니다. 따라서, 성능 모니터링과 관리의 복잡성이 높을 수밖에 없죠. 3세대는 전통적인 APM의 기능과 역할에 클라우드 전환에 따른 현장의 고민을 해결할 수 있는 요소를 더하는 방식으로 발전하고 있습니다.
달라진 사용자 경험에 대한 기대
한편, 3세대로 넘어오면서 사용자 경험의 중요성은 점차 커지고 있습니다. 1세대와 2세대 초기만 하더라도 최종 사용자 환경은 웹만 신경 쓰면 됐는데요. 지금은 상황이 다릅니다. 웹과 함께 모바일도 챙겨야 하고 앞으로 엣지 컴퓨팅이라는 새로운 유형의 서비스 이용 대상까지 고려해야 하죠.
이런 이유로 3세대 APM 도입을 검토할 때 많은 조직이 엔드투엔드 모니터링의 범위를 봅니다. 흔히 말하는 모니터링 구간이 어느 정도까지 확장되는지를 살피는 것인데요. 1, 2세대 APM은 운영체제, 웹 애플리케이션 서버, 데이터베이스 구간을 집중적으로 모니터링했습니다. 반면, 3세대는 사용자 응답 시간까지 모니터링 구간에 넣습니다. 최종 사용자 응답 시간까지 관리하는 겁니다.
레거시와 클라우드를 아우르는 가시성
그렇다면 클라우드 전환을 가속하는 현재 엔터프라이즈 컴퓨팅 환경에서 APM은 어떤 가치를 제공할까요? 사실 APM의 핵심 가치는 지금껏 변한 적이 없습니다. APM은 모든 세대에 걸쳐 ‘서비스 중심의 가시성 확보’라는 가치를 제공해왔습니다. 변한 것은 엔터프라이즈 컴퓨팅 기술의 패러다임일 뿐이죠. APM은 기술 발전을 수용하는 가운데 핵심 가치를 지속해온 솔루션입니다.
APM이 제공하는 가시성은 크게 비즈니스, 애플리케이션, 미들웨어, 인프라로 나눠 볼 수 있습니다.
비즈니스의 경우 서비스와 사용자 측면에서 바라본 가시성입니다. 비즈니스 담당자는 서비스 이상 여부, 중요 비즈니스 트랜잭션, 사용자 응답 시간 같은 지표를 통해 사용자 경험에 나쁜 영향을 주는 요인을 살피고 관리합니다.
애플리케이션 담당자는 APM이 제공하는 가시성을 바탕으로 각종 오류나 지연을 일으키는 원인 구간 및 코드를 찾아 문제를 해결합니다. 각종 장애나 지연의 원인이 코드가 아닌 경우 미들웨어의 CPU나 메모리 상태나 액티브 스레드 현황이나 서버, 스토리지 같은 인프라 요소를 살펴봅니다. 이후 미들웨어와 인프라 쪽 문제일 경우 담당자와 협의해 해결책을 마련합니다. 각 담당자 간 협업은 APM을 통해 확보한 가시성 덕에 매끄럽게 작업이 이뤄지게 됩니다.
APM이 제공하는 가시성은 크게 세 가지 측면에서 혜택을 제공합니다.
첫 번째는 IT 서비스 품질 가시성 확보입니다. 이를 통해 기업은 장애 발생에 대한 단순 지원이 아니라 서비스 중심의 성능 관제로 품질을 보장할 수 있습니다.
두 번째는 장애 예측과 대응입니다. 지속적인 모니터링을 하는 가운데 위험을 사전에 감지하고, 이를 관리자에게 통보해 예측 기반 운영을 지원합니다. 더불어 장애 발생 시 애플리케이션 수준에서 즉각적으로 원인을 분석하고 해결할 수 있어 서비스 복구 시간이 매우 짧아집니다.
세 번째는 전략 수립 지원과 TCO 절감입니다. APM을 이용하면 객관적인 성능 데이터를 확보할 수 있는데요. 이는 확장 관련 신규 IT 투자 계획에 매우 유용한 자료입니다. 더불어 APM은 애플리케이션 최적화를 통해 자원 사용률을 줄일 수 있습니다. 이는 곧 TCO 절감 효과로 이어져 기업 IT 예산에서 큰 비중을 차지하는 운영 비중을 낮출 수 있습니다.
살펴본 바와 같이 APM은 엔터프라이즈 컴퓨팅 기술 발전에 적응하며 진화하고 있습니다. 2022년 현재 기업 IT 환경의 복잡성이 높아지면서 서비스의 안정적인 운영에 대한 어려움이 발생하고 있는데요. 클라우드 시대에 접어들면서 APM의 활용 가치는 더 커지고 있습니다. 이어지는 포스팅에서는 클라우드 시대를 위한 차세대 APM의 기술적 특징을 LG CNS의 APM 솔루션인 TunA를 통해 살펴보겠습니다.
글 ㅣ 솔루션사업개발담당 시스템솔루션사업팀 김경남 책임