본문 바로가기

Business Board/대외홍보

[기획연재 part 2] - 클라우드 성능 모니터링

    

    3 . 기존 서버 모니터링과 퍼포먼스 모니터링의 근본적 차이와 그 이유는 무언인가.

클라우드 내에는 다양한 종류의 콤퍼넌트들이 존재하기 때문에 특정 컴포넌트에 집중적으로 퍼포먼스를 관리하는 기존 방식으로는 전체적이고 포괄적인 시야가 요구되는 클라우드 환경에 대응할 수 없다.

물리적이고 버츄얼한 인프라 요소 각각에 대한 독립적 관리 보다 우선순위화 되어야 하는 것이 바로 비즈니스 서비스를 고객으로 전달하는 퍼포먼스가 효과적으로 이뤄지고 있는지를 관리하는 부분일 것이다. Service Level Agreement (SLA) 가 클라우드 환경에 있어 매우 중요해지는 이유가 여기에 있다. 클라우드 고객은 비용을 지불하면서 언제 어디서든 동일한 서비스 및 품질을 요구하므로 클라우드 모니터링은 결과적으로 이와 같은 소비자로의 서비스의 전달 체계의 모니터링에 초점을 맞춰야 한다. 클라우드는 큰 틀에서 보면 가상화 리소스에 기반하고 있다고 해도 과언이 아니다, 많은 가상화 벤더들은 이러한 환경에 맞춰 방대한 량의 리소스 사용 통계치를 수집하는 가상화 관리/모니터링 솔루션을 제공 하고 있으나 클라우드 환경 전체에 대한 퍼포먼스를 한눈에 파악할 수 있는 관리/모니터링 툴에 대응하지는 못하고 있는 게 현실이다.

예를 들어, Vmware Vcenter/Vsphere 제품의 경우 버추얼 머신과 ESX/ESXi 호스트에 대한 기본 리소스 사용량 정보는 받을 수 있으나 막상 해당 플랫폼 위에서 돌아가고 제공되는 비즈니스 어플리케이션 자체의 성능에 대한 모니터링은 파악할 수가 없게끔 되어 있다.

가상화가 아닌 물리적 인프라는 리소스 사용량을 근거로 성능 모니터링이 상대적으로 용이한데 반해 버추얼 컴포넌트는 다이나믹하고 공유되는 리소스 할당 속성으로 인해 관제하기가 복잡해진다. 우선 클라우드 모니터링 솔루션은 특정 어플리케이션이 구동중인 VM을 일일이 다이나믹하게 식별해야 하고 페러미터를 수집할 수 있어야 한다. 또한 클라우드 사용자와 제공자 사이에 정해진 이용정책은 각기 다르고 그에 따라 어플리케이션에 리소스가 배분되는 변화무쌍한 클라우드/가상화 환경의 모니터링은 이전의 것보다 훨씬 구체적이고 효율적이며 전체환경을 한눈에 파악할 수 있는 직관적인 기능을 동시에 갖추고 있어야 한다.

다시 종합하자면, 결국 가장 타당하고 합리적인 클라우드 모니터링 모델은 클라우드가 과연 고객의 요구를 현재 시스템이 보유한 리소스와 성능으로 충족시킬 수 있느냐 없느냐를 모니터링의 기준으로 삼아야 함과 동시에 개별적으로 구동중인 어플리케이션별 성능감시가 효과적으로 이뤄지는 것을 의미할 것이다.

 

    4. 클라우드 성능 모니터링

클라우드 모니터링은 크게 두 카테고리로 나눌 수 있는데 하나는 서비스 제공자 관점에서의 모니터링과 소비자 즉, 고객의 관점에서 바라본 모니터링이 있다.

A.     인프라 성능 모니터링- 클라우드 서비스 제공자가 가장 관심을 가지고 리포팅을 원하는 분야로서 인프라를 구성하는 각 요소들 (버츄얼머신, 스토리지, 네트워크 등)을 대상으로 하며 클 라우드 환경내에서 이들 개별 콤포넌트에 대한 퍼포먼스 모니터링 만으로는 전반적인 클라우드 성능을 관제하는 데에는 분명 한계가 있다. 그리하여 최근 새로운 접근방법으로 각광을 받고 연구의 대상이 되는 것이 바로 인프라응답시간(Infra Response Time)’ 이다. IRT는 버추얼/클라우드 환경 내에서 특정 워크로드(workload) , 어플리케이션이 작업 요청을 받고 이를 수행하고 완료하는데 소요되는 시간의 합으로 정의된다. 예를 들어 단순히 2개의 VM간 데이터 교환 프로세스가 될 수도, 스토리지 어레이를 경유하여 저장되는 DB 트랜잭션과 같은 복잡한 프로세스가 될 수 도 있다.

가장 일반적인 개별 컴포넌트 간의 데이터 흐름은 그림과 같다.

버추얼/클라우드 환경 인프라 성능 모니터링의 핵심을 요구사항을 요약하면 다음과 같다.

l  환경 내 모든 어플리케이션을 지원할 수 있어야 하며 개별 어플리케이션 아키텍쳐와는 독립적으로 이들을 식별하고 성능을 분석할 수 있어야 한다.

l  주어진 특정 시간대에 어느 어플리케이션이 버츄얼/물리적 리소스를 사용했는지에 관한 정보를 다이나믹하게 식별할 수 있어야 한다.

l  IRT를 산출하는데 있어 버추얼 환경 전제 영역이 대상이 되어야 한다.

l  환경 내 신규 어플리케이션 및 인프라 증설에 대비해야 하며 이들이 설치될 시에 자동으로 이들을 인식하고 IRT를 산출할 수 있어야 한다.

l  VMware, Hypre-V와 같은 다중 플랫폼을 지원할 수 있어야 한다.

인프라응답시간(IRT)은 핵심 측정단위로서 아래 나열된 다양한 측정값들과 더불어 고려되어야 한다.

l  CPU 사용량; (모든 CPU에 대한. CPU,

l  디스크 사용량; (전체사용량, 사용공간, 프리스페이스)

l  디스크 대기시간(Latency)

l  사용중인 퍼센티지

l  Ready인 퍼센티지

l  메모리; (사용중인 퍼센티지, swap activity )

l  네트워크 (bytes in/out)

l  호스트 시스템 상태

l  호스트 시스템 리소스 사용량

l  버추얼 머신 Config 셋팅

l  버추얼 머신 상태

호스트와 VM 모니터링을 위한 샘플 파라미터 테이블

다음 편에는 어플리케이션 성능 감시와 클라우드 서비스 제공자의 관심 파라미터 및 성능 데이터 수집을 끝으로 연재를 종료합니다.”

많은 관심 부탁드립니다!