본문 바로가기

Business Board

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

 

씨에프정보통신 영업부는 앞으로 3회에 걸쳐 클라우드 모니터링에 관한 인포시스社(美기술/영업 컨설팅그룹)가 내놓은 클라우드 퍼포먼스 모니터링 리포트 자료를 소개하고자 하며 이를 통해 클라우드 컴퓨팅 환경의 이해와 향후 발전방향을 가늠할 수 있을 것이며 이를 참고로 당사가 추구하는 클라우드 모니터링의 현주소와 향후 대응 전략에 대해 소개하는 장을 마련해 보고자 한다.

 

l  개요

유지보수 측면에서의 모니터링(관제)은 필수적인 요소라는 점에 이의를 제기할 사람은 없을 것이다. 그러나 우리가 클라우드 환경 모니터링을 이야기할 때는 일반적인 legacy나 가상화 환경 모니터링과는 다른 각도에서 접근해 볼 필요가 있다.

다양한 모니터링 툴들이 속속 개발되고 있는 추세이긴 하나 현재까지는 클라우드 모니터링에 있어 표준 모델이 존재하지 않는 것이 현실이다. 클라우드가 지닌 성장 잠재력을 감안했을 때 이와 같은 표준이 정립되는 것이 무엇보다 중요한 이슈라고 할 수 있다.

클라우드의 간략한 소개와 더불어 그것이 갖는 아키텍쳐와 성능 및 장애를 감시/감지하는 모니터링이 어떻게 기존의 모니터링 모델과 차이가 있는 지와 어떠한 종류가 존재하는에 대해 논해보고자 한다. 또한 클라우드 모니터링에 관한 가이드라인을 아울러 제시해보고자 한다.

 

1.    클라우드 컴퓨팅이란 무엇인가?

클라우드 컴퓨팅을 간단히 정의하자면 원격 컴퓨팅또는 장소와 상관없이 사용자 요구에 따라 다이나믹한 리소스의 공유와 활용이 가능한 컴퓨팅 환경정도가 적절하지 않을까 싶다.

클라우드 컴퓨팅은 우선 인터넷 네트워크 인프라를 기반으로 한다. 이를 통해 사용자를 보조하는 수단을 소비재의 형태로 전달하는 모델을 갖추고 있으며 이는 대체로 동적으로 볼륨을 확장/축소할 수 있는 가상화 리소스의 형태를 취하게 된다. 웹기반 툴 또는 어플리케이션을 사용자가 웹브라우저 등을 이용하여 마치 자신의 기기에 설치된 듯 접속/엑세스하여 활용하는 형태를 말하는 것이다. 다만, 클라우드 컴퓨팅 환경 내 모든 것은 서비스화되는 것이다.

많은 조직들이 클라우드로 이동하는 주된 목적은 비용절감과 동적 리소스의 확보이다. 크라우드 서비스 제공자가 모든 인프라를 관장하므로 특히 중소기업의 경우 IT인프라 유지비용에 대한 부담을 크게 줄일 수 있다. 또한 확장성과 유연성 그리고 쓴 만큼만 비용을 지불하면 되는 합리성 등이 기업들로부터 각광받는 기술로 인식되고 있는 이유다. 물론 모든 기술이 그러하듯 클라우드 또한 보안과 신뢰성 면에서 소비자에게 100% 신뢰를 주고 있지 못하는 것 또한 사실이며 극복해야 할 숙제이다.

클라우드의 종류는 크게 3가지로 분류된다.

-      공용 클라우드 (Public Cloud)

표준 클라우드 모델에 기반하고 있으며 서비스 제공자가 스토리지, 어플리케이션과 같은 리소스를 제작하고 인터넷을 통해 일반 사용자들이 활용할 수 있게끔 제공되는 서비스를 말한다. 종량제 또는 무료로 제공되는 형태를 취하는 경우가 많다.

공용 클라우드의 장점으로는;

u  사용자는 하드웨어, 어플리케이션 네트워크 유지비용을 상대적으로 적게 부담하게 되며 초기 셋업이 손쉬운 점.

u  개인/조직의 필요한 만큼만으로 축소/확장이 용이한 점.

u  쓴 만큼만 비용을 지불하면 되므로 낭비되는 리소스를 최소할 수 있다는 점.

(; 아마존사의 Elastic Compute Cloud (EC2), IBM사의 Blue Cloud, Sun Cloud, Google AppEngine, Windows Azure Services Platform .)

 

-      사설 클라우드 (Private Cloud)

내부 클라우드 또는 기업형 클라우드라고도 불리우는 사설 클라우드는 정해진 기업 또는 조직 내 제한되고 방화벽 내에 위치한 선택된 일부 사용자에 국한하여 제공되는 클라우드의 형를 말한다.

 

-      하이브리드 클라우드 (Hybrid Cloud)

공용과 사설클라우드를 혼용하는 클라우드로서, 특정 기업이 그들의 리소스 일부는 인하우스(in-house)로 나머지는 외부적으로 제공/관리하는 를 취한다. 일반적 컴퓨팅 용도로는 EC2와 같은 공용 클라우드를 활용하고 고객정보와 같은 중요 데이터는 자체 데이터 센터에 보관/관리하는 모델을 예로 들 수 있다.

 

2.    클라우드 아키텍쳐

   클라우드는 프론트엔드(Front-End)와 백엔드(Back-End)의 두 가지 핵심적인 콤포넌트로 구성이 되는데 프론트엔드는 클라이어은트단을 이야기하는 것으로 클라우드에서 호스트하는 어플리케이션의 사용자 즉, 클라우드를 엑세스하는 어플리케이션에서부터 클라이언트의 네트워크까지의 범위를 의미한다. 백엔드는 클라우드 그 자체를 의미하며 일련의 다양한 용도의 서버, 스토리지 그리고 네트워크가 이에 해당된다. 이론적으로 클라우드라는 것은 모든 형태의 컴퓨터 프로그램을 수용할 수 있는 전용서버들을 가동하고 수용할 수 있어야 한다는 결론이 나온다.

   중앙서버는 모든 시스템을 관리하고 트래픽 및 클라인트 요청을 모니터링 하면서 안정성을 보장/지속하는 역할을 수행한다. 또한 일련의 규칙과 미들웨어로 하여금 네트워크로 상호 연결된 컴퓨터끼리 통신이 원활히 되게끔 하는 역할을 한다. (..part #2에서 계속됨)

자료출처: (: Vineetha V., Technology Architect, Engineering Services, Infosys)