IT인프라 복잡도 증가에 APM 시장 ‘돌풍’
상태바
IT인프라 복잡도 증가에 APM 시장 ‘돌풍’
  • 김나연 기자
  • 승인 2009.01.09 00:00
  • 댓글 0
이 기사를 공유합니다

애플리케이션 성능 관리(APM)
기업의 비즈니스와 IT인프라의 복잡도가 증가하면서 애플리케이션 장애 및 서비스 중단으로 인해 어려움을 겪거나 경쟁력이 저하되는 경우가 많아지고 있다. 이에 따라 애플리케이션 장애를 사전에 예방하거나 신속히 복구하고, 애플리케이션을 최적의 상태로 유지하기 위한 애플리케이션 성능 관리(APM) 솔루션에 대한 관심이 어느 때보다 높아지고 있다.

APM은 모든 트랜잭션에 대한 모니터링을 수행하고, 이를 기반으로 사용자 관점에서 애플리케이션 응답 시간을 측정하고 성능 저하의 원인을 찾아내며, 최적의 성능을 유지할 수 있도록 유지·관리함으로써 기업의 비즈니스 경쟁력을 최상의 상태로 유지하도록 도와준다. 또한 애플리케이션 성능관리 제품들도 포인트 투 포인트 솔루션 단위에서 벗어나 전체 애플리케이션 트랜잭션을 관리하는 포괄적인 성능관리 솔루션으로 진화하면서 시장 활성화를 가속화시키고 있다.

APM은 기업의 필수 IT 인프라로 자리를 잡아가는 가운데 특히 전사적인 비즈니스 서비스 관점(BSM)에서 애플리케이션 성능관리에 접근하는 움직임이 늘어났다.

전사적 비즈니스 관점으로 시각 확대
더욱 복잡해져가는 IT환경 속에서 기업은 신속·정확하고 지속가능한 비즈니스를 지원하기 위해 서버나 애플리케이션의 다운 상태가 생기지 않도록 막대한 투자와 노력을 아끼지 않고 있다. 따라서 기업은  IT인프라, IT서비스의 안정성 확보를 위해 최종 사용자(End User)에서부터 시작해 서버단의 트랜잭션 처리 과정까지 전체를 모니터링하면서 성능 관리에 부단한 노력을 기울이고 있는 상황이다.

이러한 엔드 투 엔드 모니터링은 실제로는 웹 구간, 애플리케이션 구간, DB구간에 이르는 트랜잭션까지를 묶어 모니터링 하는 것으로 설명되고, 최종 사용자가 느끼는 체감적 성능 또한 결코 빠져서는 안 될 핵심적 요건으로 부각됐다.

국내 애플리케이션 성능관리 시장은 HP, 컴퓨웨어, CA, 퀘스트소프트웨어 등 글로벌 업체들과 티맥스, 제니퍼소프트, 케이와이즈 등 국내 업체들이 치열한 경쟁을 펼치고 있다. 애플리케이션 성능관리 솔루션이 포인트 솔루션 단위의 성능관리 차원에서 전체 애플리케이션을 포괄하는 ‘통합 성능관리 솔루션’으로 진화하면서 IT서비스 관리 및 비즈니스 서비스 관리의 핵심 모듈로 자리 잡아가면서 경쟁의 강도가 심해지고 있다.

BSM 관점으로 접근법 확대
시장 초기에는 외국계 업체들의 영향력이 강했으나 현재는 제니퍼소프트를 필두로 국내 업체들이 시장을 주도하고 있는 상황이다. 제니퍼소프트, 티맥스 등은 뛰어난 모니터링 기능과 WAS 분야에서의 경쟁력을 앞세워 올해 APM 시장 점유율을 주도하기도 했다. 이에 대해 외국계 업체들은 ITSM, BSM 등과의 연계를 강조하면서 애플리케이션 성능관리를 전사 차원으로 확대, 비즈니스 관점으로 접근해야 한다며 맞섰다.

그 대표적인 업체중 하나인 HP는 BSM을 IT의 전체 라이프사이클 가운데 운영 단계의 큰 틀을 이루는 개념에서 바라보고 있다. HP는 단순히 APM을 넘어 비즈니스 서비스 관리(BSM) 솔루션으로 ITSM의 프로세스와 긴밀히 연계하고 기존 SMS/NMS 와 연계한 통합 모니터링 솔루션 구성하고 있다.

한국HP 소프트웨어사업부의 양진욱 부장은 “HP는 ITSM과 BSM이라는 두 축을 중심으로 운영의 최적화 구축을 위해 그간 축적해 온 베스트 프랙티스 기반의 ‘제품-프로세스-사람’을 통한 솔루션을 제공하고 있다”고 설명했다.

퀘스트코리아 최광호 이사는 “APM 시장은 국내벤더와 외산벤더의 시장이 양분화 현상이 두드러지고 있다. 국내 제품(티맥스 소프트의 제우스 등)은 WAS 성능관리에서 실시간 분석 중심으로, 외산벤더는 엔드 유저 모니터링을 새로운 화두로 하는 애플리케이션 성능 관리라는 개념에 충실한 모습이다”고 설명했다.

최 이사는 “전반적으로 APM이라는 용어에 혼선과 ITSM 영역인 BSM에 대한 부분적인 수용이 최근 이 시장에서 관건이 되고 있다. 좀 더 비즈니스 서비스 중심의 통합 솔루션이라는 메시지가 외산솔루션의 주요 메시지로 전달되고 있으며, 국내 벤더는 국내 개발 솔루션을 기반으로 하거나 실시간 및 트랜잭션 추적 영역에 대한 부분을 강조해 차세대 시장을 기반으로한 금융권 및 공공 등의 시장을 주요 타깃으로 할 수 있다”고 설명했다.

초기 애플리케이션 성능관리 제품들은 데이터베이스 성능관리나, 애플리케이션 트랜잭션 중간 중간의 포인트 솔루션으로 한정돼 인식되는 경우가 많았다. 하지만 과거와 달리 데이터베이스와 WAS(Web Application Server), 최종 사용자 기반까지 성능관리 영역이 확대되면서 시장이 확대되기 시작했다.

각 포인트에만 국한된 모니터링이 아니라, 애플리케이션 성능 및 품질에 미치는 인프라와 연계된 정보와 어떤 부분에 문제가 있는지를 파악할 수 있는 정보, 그리고 이를 토대로 애플리케이션의 성능 문제를 해결할 수 있는 방안까지 통합돼 제시되는 제품들이 등장해 APM 시장을 진화시킨 것.

한국CA 와일리 사업부 신창현 부장은 “한국 시장에서 고객들이 요구하던 사항 중 가장 의미있게 느껴지는 부문은 고객들이 단순히 APM만을 원하는 것이 아니라 시스템 관리, 네트워크 관리, DB 관리 등 제반 IT 인프라 관리를 통합해 비즈니스에 제공되는 IT 서비스로 맵핑시켜 관리하고자 하는 ‘서비스 가용성’적인 접근을 원한다는 것”이라며 “이는 비단 국내 고객만이 아닌 세계적인 변화이다”고 설명했다.

엔드유저관점 모니터링 ‘확산’
올해 APM 시장에서는 유저(User)라는 개념이 이 시장의 중요한 기준 축이 되었다. 유저에 대한 성능과 서비스를 어떻게 제공할지 체계를 갖춰나가야 한다는 것. 엔드유저 익스피어리언스 모니터링을 통해 최종 사용자가 어떤 체험을 하고 있는지, 서비스 사용에 지장을 받고 있지는 않은지를 파악해 내는 것이 애플리케이션 성능관리에서 중요한 부분으로 부각됐다. 

컴퓨웨어의 밴티지(Vantage)는 모든 사용자들의 페이지 히트에 관한 각종 지표들을 기록하고 애플리케이션별로, 서버별로, URL별로, 사용자의 지역 혹은 ISP별로 제공한다. 이러한 지표는 사용도와 관련해 페이지수, 유저수, 전체 히트수, 네트워크 전송량 등이 포함되고 성능과 관련해 느린 페이지수, 느린 페이지를 경험한 사용자 수, 페이지 로드 시간, 페이지 사이즈 등의 정보가 포함되고 가용성에 대해서는 멈춘 페이지 수와 에러(TCP 및 Http) 발생 수를 알려 준다. 물론 모든 사용자가 경험한 데이터에는 엔드-투-엔드 성능 정보가 포함돼 개별 사용자 별로 문제에 대해 신속한 조치를 가능하게 한다.

CA는 지난해 11월 ‘CA 와일리(Wily) APM’ 신제품을 발표했다. ‘CA 와일리 인트로스콥 r8(CA Wily Introscope r8)’과 ‘CEM(Customer Experience Management) 4.2’를 포함하는 CA 와일리 APM은 복잡하고 큰 규모의 분산 SOA 및 가상화 환경에서 온라인 고객 경험과 관련 웹 애플리케이션을 관리하는 데 최적화됐다. 애플리케이션 성능이 저하된 SOA 인프라스트럭처 내의 일부 컴포넌트를 정확히 파악해 추가로 발생되는 개발 비용, IT 또는 비즈니스에 대한 신뢰도 저하, 고객 불만족, 수익 손실 등을 미연에 방지할 수 있다.

CA 와일리 인트로스콥 r8은 복잡한 자바(Java) 및 닷넷 웹 애플리케이션, 애플리케이션 서버, ESB, 프로세스 서버, 기타 SOA 인프라스트럭처 컴포넌트를 365일 24시간 체제로 모니터링 한다. 이러한 기능은 IT 조직이 중요한 웹 애플리케이션 및 웹 서비스가 비즈니스와 성과 목표를 충족시킬 수 있도록 지원해 준다.

퀘스트소프트웨어는 ‘포그라이트(Foglight)’라는 새로운 브랜드를 통해 애플리케이션 매니지먼트(AM) 시장에 본격적으로 뛰어들었다. 퀘스트 역시 엔드 유저 모니터링을 포함한 프로액티브 통합 모니터링 솔루션이라는 점을 강조하면서 포그라이트를 알리고 있다.

퀘스트코리아 최광호 이사는 “IT 환경이 발전됨에 따라 갑작스런 장애가 발생하기 보다는 사전에 징후를 감지할 수 있는 부분이 많아지고, 또한 이러한 사전 예방이야 말로 기업의 매출과 이미지에 직접적인 영향을 미친다”며 “문제를 해결하는 것도 중요하지만 사전에 얼마나 예방하는가의 중요성은 누구나 알고 있는 것이라고 생각한다”고 밝혔다.






APM 전문가 기고
성능관리 최종 목표, ‘최적화’ 위한 필수요소
김태전 // 한국CA 부장·taejeon.kim@ca.com

요즘 같은 불경기일수록 생각나는 단어가 ‘최적화’이다. 가정에서나 기업에서나 새로운 것을 도입하기 보다는 최적화를 통해 기존에 가지고 있는 것에 대한 가치를 높이는 것이 필요하다. 가정에서 사용하는 자동차 연비를 최적화하여 높인다거나, 기업에서 사용하는 서버의 성능을 최적화하는 일련의 행위들이 이에 해당된다. 이번 글에서는 필자가 여러 해 동안 수많은 기업에서 경험했던 애플리케이션 성능 최적화의 경험과 애플리케이션 성능 관리(APM) 솔루션 도입에 따른 고려 사항, 그리고 나아가 향후 전사적 IT 서비스 관리에서의 APM 역할에 대해 살펴본다.

성능 관리의 필요성
개발 시점에서부터 애플리케이션에 대한 성능 관리가 제대로 이뤄진다면, 시스템 오픈 이후에 발생되는 장애는 절반 이하로 줄어들 것이며, 성능 또한 상당부분 예측된 수치 이내에서 나타나게 될 것이다. 성능 관리는 애플리케이션 라이프 사이클 전반에 걸쳐서 ‘최적화’를 위한 필수적인 요소이며, 운영자로 하여금 예측 가능하게 해주고 이슈를 빠르게 해결할 수 있게 해주는 열쇠가 된다.

◆ 개발자의 소스 변경에 의한 성능 저하
어제까지 잘 사용하던 애플리케이션이 갑자기 성능 저하를 보인다면 이러한 경우 대부분은 소스 또는 구성파일의 변경에 의한 성능 이상이 발생한 경우다. 그러나 개발자 및 운영자를 대상으로 변경사항에 대한 조사를 할 경우 대부분은 변경 사항이 없다고 한다. 대부분의 개발자들은 본인이 수정한 부분이 극히 미미하다고 생각하며 수정이 결제과정 없이 이뤄졌다면 더욱이 오픈하지 않는 경향이 있다. 물론 기업 내에 형상 관리나 버전 관리를 잘 사용하고 있다면 이러한 문제는 발생하지 않겠지만, 과연 얼마나 많은 기업이 모든 애플리케이션에 대해 제대로 된 형상 관리를 하고 있을 것인가?

◆ 잘못된 개발 패턴에 의한 성능 저하
한 기업에서 개발 방법론에 따른 모든 애플리케이션을 컴포넌트화해 작게 만들고 개발자들은 기 생성된 컴포넌트를 재활용하고 있었다. 그런데 개발자가 본인이 만든 컴포넌트가 아닌 다른 개발자가 만든 컴포넌트를 사용하다 보니, 해당 컴포넌트의 내부 로직을 잘 알 수도 없는 상태에서 본인의 편의를 위해 필요 시 마다 과다하게 컴포넌트를 호출해 과다한 호출에 의해 전체적인 성능 저하가 발생됐다. 흔히 애플리케이션이 느려지면 주요 로직이나 SQL 쿼리문을 보게 되고 로그를 남기게 된다. 여기서 문제가 발견되지 않을 경우 수많은 컴포넌트를 모두 검증할 수가 없게 돼 시간은 계속 지나가기 마련이다. 1회 호출 시간이 0.1초도 안될지라도 100번 호출하게 되면 문제가 될 것은 뻔하다.

◆ 메모리 누수에 의한 장애
자바(Java) 애플리케이션은 정해진 메모리를 사용하도록 돼있다. 따라서 메모리를 얼마나 잘 사용하는지는 매우 중요한 일이다. 그러나 개발 과정에서 프로그래밍의 편리상 또는 로직의 구현상에서 메모리 사용의 최적화를 생각하지 않게 되는 경우가 많다. 이러한 메모리의 과다 사용은 WAS에서의 메모리 누수를 발생시키게 되고 결국에는 애플리케이션 장애로 이어진다. 현재 나와 있는 대부분의 성능 관리 툴에서는 메모리에 대한 스냅샷 정도만을 제공해주기 때문에 조금씩 메모리를 잠식해가는 메모리 누수 현상에 대해 추적하기가 쉽지 않다. 물론 일부 APM 솔루션에서는 메모리 추적기능도 제공한다.

APM 솔루션의 역할
위와 같은 사례는 APM 솔루션이 없었던, 즉 대부분의 문제해결을 엔지니어의 경험이나 감각에 의해서 해결해야만 했던 시절의 일이었다. 이제는 APM 솔루션 도입을 통해 WAS 경험이 없는 운영자라고 하더라도 문제를 빠르게 감지하고 해결할 수 있게 됐다. 그렇다고 이러한 문제 해결만이 APM 솔루션의 역할이라고 생각하면 안되며, APM 솔루션의 진정한 역할은 ‘최적화’라는 것을 절대 잊어서는 안 된다. 기업 내 애플리케이션 최적화는 진정한 의미의 성능 관리의 목적이며 기업 내 IT 가치(Value)를 높이는 방법이다.

실례로 어떤 기업에서는 새로 오픈한 시스템이 성능을 제대로 발휘하지 못하자 서버를 더 늘릴 계획을 세웠다. 그러나 담당자는 APM 솔루션을 검토하고 도입하고 많은 부분에서의 최적화를 통해 서버의 추가 구입 없이 더 많은 사용자들에게 서비스를 제공 할 수 있게 됐다. 이는 APM 솔루션 투자를 통해 서버의 불필요한 추가 구매를 하지 않음과 동시에 효율적으로 IT예산을 사용했던 좋은 사례다.

APM 솔루션의 도입만으로 ‘최적화’가 되는 것인가? 물론 그렇지 않다. APM 솔루션은 단지 ‘툴(Tool)’ 이라기보다는 기업의 ‘인프라’인 것이다. 전사적 IT서비스 관리 솔루션을 도입하는 경우, 대부분은 방법론에 의거해 구축하게 된다. 이와 같이 APM 솔루션 도입에도 방법론이 있고 수준이 있으며 이러한 접근을 통해 ‘최적화’가 가능해지는 것이다.

국내 APM의 현재
많은 기업의 APM 담당자들을 만나 해당 기업에서의 APM 솔루션의 활용도와 기여도에 대해 의견을 나누다 보면, 그 활용하는 수준이 매우 낮고 대부분은 장애나 에러가 발생했을 때 이를 빨리 찾는 데만 집중되어 있음을 알게 된다. 따라서 새로운 시스템이 오픈 될 때 잠시 장애를 찾기 위해서만 사용하고 이후에는 거의 활용을 하지 않고 있는 것이 현실이다. 이는 앞에서 설명한 성숙도 모델의 가장 낮은 수준이며 오로지 장애복구시간(MTTR: Mean Time To Repair) 만을 생각하는 기초 단계인 것이다.

이러한 장애 및 에러 중심의 활용도는 APM 솔루션의 본연의 기능인 ‘최적화’를 제대로 활용하지 못하고 있는 것이며, 이는 APM 솔루션을 단순한 모니터링 툴 정도로만 인식하고 있기 때문이다.

APM 솔루션은 용어 그대로 성능 관리를 위한 솔루션이어야 하며, 물론 성능 관리라 함은 성능뿐만 아니라 장애도 포함되는 것이다. 그러나 국내 기업에서 사용하는 수준은 단지 장애 관리(에러 감지)에만 국한 되어 있는 것이 현실이다. 장애 관리만으로 애플리케이션에서 발생하는 많은 장애와 에러를 찾고 개선할 수는 있겠지만, ‘최적화’에 필요한 APM 솔루션 본연의 기능인 성능 관리는 제대로 할 수가 없다.

성능 관리는 가용성(Availability), 성능(Performance) 그리고 신뢰성(Reliability)으로 진화하고 있으며, 3가지 모두가 충족돼야만 진정한 성능 관리 솔루션이라 할 수 있다. 그러나 국내 상황에서는 성능 관리보다는 신뢰성에서 얘기하는 장애 관리에만 집중되는 것이 문제다. 이는 국내 IT 기술이 급속도로 발전하게 되면서 수많은 애플리케이션들이 구축되고, 이로 인해 제대로 검증되지 않은 애플리케이션에 의한 수많은 장애가 발생하게 된 것과 관련이 깊다. 이러한 현상은 국내 APM 시장을 장애 관리 중심의 시장으로 오도시킨 계기로 본다.

IT 서비스 관리로서의 APM
최근 들어 많은 기업에서 전사적 IT서비스 관리 솔루션을 도입하고 기존의 APM 솔루션과의 서비스 수준 또는 서비스 성능 관련 정보에 대한 연계를 중요시 하고 있다. 기존 IT 서비스 관리는 대부분 기업 인프라(서버, 네트워크 등)에 중점 돼 있다면, 이제는 사용자 중심으로 변해가고 있다. 따라서 사용자 성능 또는 애플리케이션 성능이 IT 서비스 관리의 핵심이 되고 있어 APM 솔루션도 이제는 전사적 IT 서비스 관리를 고려한 아키텍처로 구성돼야 하며, 다양한 관리 솔루션들과의 원활한 데이터 통합을 위한 인터페이스를 제공해야 한다.

그러나 앞에서 설명했던 것과 같이 국내 APM 시장은 장애 관리에 너무 치우쳐 있었기 때문에 IT 서비스 관리 솔루션과의 연계에 많은 걸림돌이 되고 있다. IT서비스 관리가 구축된 일부 기업내의 서비스 관리 흐름을 보면 APM 솔루션이 별도로 구축돼 운영 되는 경우가 많다. 따라서 국내 환경에서의 IT 서비스 관리와 APM 솔루션의 간극을 줄이지 못한다면 완전한 IT 서비스 관리 구축은 힘들다.

성능 관리의 최종 목표는 ‘최적화’다. ‘최적화’는 단순한 장애나 에러를 찾아 주는 것이 아니라, 기업에서 발생되는 다양한 성능 이슈에 대하여 사전 예방 및 미래 상황을 예측할 수 있게 해주어야 한다. 이러한 전사적 성능 관리 프로세스의 구축은 기업 내 IT 가치를 높이고 나아가 IT투자에 대한 ROI를 명확하게 해 IT 부서의 위상을 높인다.

이미 APM 솔루션을 도입했다면, 과연 ‘최적화’를 위해 어떻게 해야 할지 고민해야 한다. 아직 APM 솔루션을 도입하지 않았다면, 우리 기업환경에서 성능 ‘최적화’를 위한 성능 관리 솔루션이 어떠한 것인지 신중하게 생각해보고, 향후 IT서비스 관리와의 통합 운영을 위한 진정한 APM 솔루션 구축을 고려해야 한다.

댓글삭제
삭제한 댓글은 다시 복구할 수 없습니다.
그래도 삭제하시겠습니까?
댓글 0
댓글쓰기
계정을 선택하시면 로그인·계정인증을 통해
댓글을 남기실 수 있습니다.