09.22
뉴스홈 > 칼럼
[기고] 가상화 기술을 통한 클라우드 및 통합 IT 환경 구현한철현 한국오라클 시스템사업부 상무

   
▲ 한철현 한국오라클 시스템사업부 상무

[컴퓨터월드] 오랜 세월 동안 다양한 변혁을 겪어온 기업 IT 환경이 최근 인프라스트럭처 전반에 걸쳐 하드웨어와 소프트웨어 및 서비스 대응 환경까지 아우르는 변신을 꾀하고 있다. 특히 기업들의 글로벌 전략과 함께 전 세계 사업장의 IT 환경을 통합 운영하고, 지역 거점을 활성화시키려는 수요가 증가하고 있다.

이에 보다 유연한 데이터센터의 필요성이 대두됐고, 일반 사용자 편의 위주로 시작됐던 클라우드 IT 인프라 환경이 기업용 IT 환경까지 확대 적용되기에 이르렀다. 이번 기고를 통해 클라우드 환경뿐 아니라 기업 IT 환경에 있어 핵심 요소로 부각 되고 있는 가상화를 기반으로 한 통합 IT 환경에 대해 살펴보고자 한다.


서버 가상화

가상화 기술은 이미 50여 년 전부터 사용된 용어지만 산업현장에서 실제로 사용되기 시작한 것은 지난 90년대 후반부터다. 가상화 기술은 물리적인 컴퓨팅 환경의 리소스를 소프트웨어적으로 여러 개의 물리적인 컴퓨팅 환경이 작동하는 것처럼 만드는 기술을 의미한다. 따라서 사용자 입장에서는 기대하는 성능 향상을 얻으면서도 기존 물리적 컴퓨팅 환경과 동일한 환경을 유지할 수 있다.

   
▲ <그림 1> 가상화 기술


가상화 기술을 산업현장에 적용하게 된 가장 큰 요인은 투자 대비 효율적인 자원 활용을 실현하기 위함이었다. 가상화 기술을 통해 동시에 여러 가지 서비스를 제공함으로써 물리적 컴퓨터 한대에 한 가지의 서비스만을 운영할 수 있었던 제약을 극복한 것이다. 즉, 여러 대의 물리적 컴퓨터의 역할을 하나의 시스템 내에 통합해 운영 및 관리의 효율성을 함께 꾀할 수 있었다.

오늘날 가상화 기술은 서버, 스토리지, 네트워크, 사용자 단말기까지 활용도가 크게 확대되고 있다. 그로 인해 새로운 데이터센터의 개념인 소프트웨어 정의 데이터센터(Software Defined Data Center)까지 출현하게 됐다. 아울러 최근에는 IT 시장에서 가장 뜨거운 감자로 급 부상한 클라우드 환경을 구현하는데 핵심 기본 요소로 자리매김하고 있다.

가상화 기술은 다양한 분야에 적용되고 있지만 그 중에서도 서버 환경에 대해 좀 더 깊이 있게 알아보자. 서버 가상화 기술은 OS 레벨 가상화인 호스티드(Hosted)와 완전 가상화(Full Virtualization)인 베어메탈(Bare Metal), 그 외에도 반가상화(Para-virtualization)가 있다.

물리적 서버를 호스트 머신(Host Machine), 가상화로 생성 된 서버를 게스트 머신(Guest Machine) 또는 가상 머신(Virtual Machine)이라고 한다. 호스트에서 가상 머신에 리소스를 할당해 주는 방식에 따라 기술적 차이가 있으며, 각각의 특장점 또한 다르다. 따라서 최종적으로 구현하고자 하는 시스템과 성취하고자 하는 목적에 따라 해당 기술을 선택하는 것이 가상화 기술 적용에 있어 매우 중요한 부분이다.

   
▲ <그림 2> 서버 가상화의 두 가지 적용 방식

호스티드 방식은 호스트 머신에 적용된 OS 위에 하이퍼바이저(Hypervisor)라고 불리는 가상 머신 모니터(Virtual Machine Monitor) 기능을 갖춘 가상화 소프트웨어를 설치하고, 별도의 게스트 OS를 설치해 가상화를 구현하는 방식이다.

하드웨어 디바이스(I/O 포함)들은 에뮬레이티드(Emulated) 또는 패스쓰루(Passthrough) 방식으로 가상 머신에 전달되며, 매우 손쉽게 각각 독립된 가상 머신을 구현할 수 있도록 한다. 하지만 호스트 OS, 하이퍼바이저 레이어 및 디바이스 에뮬레이티드 또는 패스쓰루 등의 기능을 구동하기 위한 별도의 리소스 및 가용성 점유 등으로 인한 전체적인 성능 저하가 발생하는 단점이 있다.

그와 같은 I/O 지연(Latency) 등으로 인해 실시간(Real-time) OS 환경을 구현할 수 없다는 한계가 존재한다. 이와 같은 장단점으로 인해 주로 개발 환경, 테스트 환경 또는 레거시(Legacy) 애플리케이션 운영 등의 용도로 사용된다.

베어메탈 방식은 호스티드와 같이 하이퍼바이저 레이어가 존재하지만 호스트 OS 없이 호스트 머신 디바이스(Host Machine Device)와 직접 커뮤니케이션하는 방식으로 가상화를 구현한다. 따라서 하이퍼바이저 자체에서 디바이스와 커뮤니케이션하기 위한 로우 레벨 드라이버(Low-level driver)를 지원해야 한다. 아울러 파티셔닝(Partitioning) 기술을 적용할 경우, 특정 가상 머신에 별도의 디바이스를 독립적으로 직접 어싸인(Assign)해 주는 방식도 지원하고 있다.

이와 같이 가상머신에서 파티셔닝 된 I/O 디바이스에 직접 접근할 경우 하이퍼바이저에서 다양한 플랫폼의 디바이스 드라이버를 지원해야 한다는 점과 호스트 OS 없이 하이퍼바이저를 직접 설치해야 하기 때문에 설치과정이 다소 까다롭다는 것이 단점으로 꼽힌다.

하지만 성능 면에서 훨씬 더 효과적인 결과를 거둘 수 있다는 점과 실시간 OS 환경을 구현할 수 있다는 장점 때문에 베어메탈 방식은 실제 엔터프라이즈 IT 서비스 환경에서 사용되고 있다.

서버 가상화 기술은 IT 인프라 통합을 통해 자원의 효율성과 가용성을 극대화하기 위해 도입되기 시작했다. 수년 전까지 이어지던 IT에 분야에 집중된 투자로 산재된 IT 인프라 중 서버 환경을 통합 운영하고자 한 것이다. 이를 통해 서버와 클라이언트 환경의 급격한 확산 및 다양한 IT 인프라 수요의 폭증에 대비하고, 투자비용 절감 및 보이지 않는 비용(Invisible Cost)에 해당하는 운영비용 절감을 꾀하고자 했다.

하드웨어 인프라 측면의 가상화가 성공적으로 자리를 잡아가고 있다면, 최근에는 가상화 환경에서 운영되거나 가상화를 구축하기 위한 소프트웨어의 라이선스를 어떻게 효과적으로 운영하느냐가 중요한 요소로 부각되기 시작했다.

더욱이 가상화는 최근 최대 화두로 떠오르고 있는 클라우드 환경에서 핵심 요소로 떠오르고 있다. 역으로 클라우드 환경이야말로 가상화의 목적과 특징을 극대화한 IT 운영 환경임은 자명한 사실이다. 그렇다면 과연 클라우드 환경 구축을 위해 검토해야 할 요소에는 어떤 것들이 있으며, 효과적인 구현 방안으로는 무엇이 있는지 알아보도록 하자.


클라우드 환경 구현

우선 클라우드에 대한 정의를 살펴보면, 크게 퍼블릭 클라우드와 프라이빗 클라우드 환경이 있다. 모두 인터넷 기반의 컴퓨팅 기술로 사용자 단말기는 입/출력 역할을 담당하고 해당 정보의 분석 및 처리, 저장, 활용과 관리는 별도의 시설에서 이루어지는 컴퓨팅 시스템이다.

   
▲ <그림 3> 프라이빗 및 퍼블릭 클라우드의 진화

프라이빗 클라우드 환경은 기업이 보유한 데이터센터에서 해당 환경이 구축된 경우이다. 반면 퍼블릭 클라우드는 제3자의 데이터센터에서 해당 컴퓨팅 시스템 환경을 제공받는 경우를 말한다.

퍼블릭 클라우드는 서비스의 범위에 따라 세 가지로 분류된다. 제 3자의 데이터센터에서 소프트웨어 즉, 애플리케이션 사용 환경을 제공 받는 서비스인 SaaS(Software as a Service), 자바(Java)나 데이터베이스 등 플랫폼 사용 환경을 제공받는 서비스인 PaaS(Platform as a Service), 마지막으로 서버 및 스토리지 사용 환경을 제공 받는 서비스인 IaaS(Infrastructure as a Service)가 있다.

클라우드 환경을 구현하기 위해서는 사용자, 조직, 운영 애플리케이션 및 데이터의 구조 등과 같은 IT 운영 전반의 내용 및 구조를 파악해야 할 뿐 아니라 서비스 플로우(Flow), 데이터 플로우, 접근 능력(Accessibility), 사용법(Usage) 등을 총망라해 통합 운영 및 모니터링 할 수 있는 체계를 갖춰야 한다. 따라서 이러한 요소들을 통합해 관리하고, 모니터링 할 수 있는 툴이 가장 중요한 핵심 요소다. 그 중 사용법과 관련해 마케팅 및 사용자 환경 프로비저닝 부분이 다소 생소한 부분이라 할 수 있다.

기존의 서버, 네트워크 및 스토리지 관리 툴과 상호 연계성을 확보하며, 해당 요소를 구현하기 위해 오픈소스(Open source)에서 시작된 오픈스택(Openstack) 프로젝트를 활용할 수 있다. 오픈스택은 일종의 클라우드 운영 시스템(Operating System, OS)이라고 볼 수 있다.

최초 NASA와 렉스페이스(Rackspace)의 공동 프로젝트로 시작한 오픈스택은 이후 여러 기업들이 참여하게 되면서 오픈스택재단으로 발전했고, 현재는 400개 이상의 기업과 만 9천여 명의 개발자가 참여하고 있는 전 세계에서 가장 큰 오픈소스 커뮤니티다.

앞서 언급된 바와 같이 IT 인프라의 다양한 요소를 다루고 있는 만큼 하나의 소프트웨어가 아닌 여러 개의 소프트웨어로 구성돼 있으며, 각 분야별 구성 요소는 다음과 같다.

⦁Compute(Nova): 하이퍼바이저 운영 관리 기능으로 오픈스택에서 핵심 구성 요소
⦁Dashboard(Horizon): 시스템 관리자를 위한 웹(Web) UI
⦁Object Storage(Swift): 스토리지 서비스로 데이터를 Object 단위로 저장하는 방식
⦁Block Storage(Cinder): 스토리지 서비스로 일반적인 HDD 방식으로 Block 단위로 저장하는 방식
⦁Networking(Neutron): IP 주소 및 네트워크을 관리하는 기능
⦁Identity(Keystone): Authentication 과 Authorization 기능
⦁Image Service(Glance): VM 이미지 파일 관리 기능
⦁Telemetry(Ceilometer): 사용자의 사용량을 측정해서 알려주는 기능
⦁Orchestration(Heat): Script 및 Template 기반의 오토 프로비저닝(Auto Provisioning) 기능
⦁Database Service(Trove): 데이터베이스 서비스를 구축할 수 있는 기능

오픈소스는 무료라는 점뿐 아니라 방대한 커뮤니티를 통한 지속적인 업데이트 및 발전 가능성 등을 누릴 수 있음에도 여전히 많은 사람들이 실제 적용에 어려움을 호소하고 있다. 그 이유는 여러 가지가 있겠지만 결론부터 말하면, 결국 수많은 개발인력을 투입해 별도로 개발을 해야 한다는 점일 것이다.

또한 개발을 한다고 하더라도 아직은 미성숙한 클라우드 환경에 대한 이해도 차이로 오픈스택 내의 각 컴포넌트 간 상호 부족한 기능과 상호 호환성의 미확보로 인해 개발을 원활하게 진척시키기가 쉽지 않은 실정이다. 뿐만 아니라 아직까지 클라우드 환경 요소를 공급하는 협력업체간의 협력체계 또한 미흡하다는 점도 무시할 수 없다.

더욱이 퍼블릭 클라우드 환경까지 연계된 하이브리드 환경까지 고려한다면 내부적 불완전 요소를 외부적 불완전 요소와 연계하는 이중고를 넘어서야 하는 난제에도 봉착하게 된다. 이와 같은 이유로 당초 오픈스택을 기반으로 클라우드 환경을 도입하고자 했던 많은 기업들이 깊은 고민에 빠져있다.

오늘날 기업들은 종합적인 비용을 절감하면서 가상화를 통해 통합 환경을 구축하고, 나아가 신개념 데이터센터인 클라우드 환경, 그 중에서도 프라이빗과 퍼블릭 클라우드 환경이 혼용된 하이브리드 클라우드 구축을 위한 클라우드 운영 시스템까지 손쉽게 구축 할 수 있는 방법을 찾고 있다.

이렇듯 복잡하고, 총체적인 기업들의 요구에 대응하기 위해 주요 IT 벤더들도 가상화 기술을 이용한 통합 IT 환경 구현에 열을 올리고 있다. 예를 들어 하드웨어와 소프트웨어가 통합된 엔지니어드 시스템은 기업들이 손쉽게 비용 효율적인 클라우드 데이터센터를 구축할 수 있도록 지원한다. 이 때, 해당 시스템 내에 컴퓨트, 네트워크, 스토리지, 매니지먼트 및 가상화 솔루션이 모두 포함돼 있으며, 이중 컴퓨트 노드의 경우 기업의 IT 운영 규모에 따라 사이즈를 변경할 수 있다면 IT 환경의 성능 및 운영 효율성은 배가된다.

또한 해당 시스템 내에 SDN 기능이 구현돼 있다면 별도의 물리적인 변경 없이 소프트웨어 작업만으로 새로운 네트워크 추가 및 기존 구성 변경 또는 연결 등을 자유자재로 구현할 수 있다. 이를 통해 이더넷(Ethernet) 환경뿐 아니라 스토리지 네트워킹(Storage Networking)까지 포함해 최고의 유연성과 기민성을 얻을 수 있다. 즉, 기업들은 통합 효과뿐 아니라 다양한 유형의 애플리케이션 워크로드에 따른 구성 요소의 변경, 추가 및 제거 등 다양한 변화 요구에 민첩하게 대응할 수 있는 다양성까지 확보할 수 있는 것이다.


프라이빗 클라우드 어플라이언스(Private Cloud Appliance)

오픈 테크놀로지(Open Technology)를 기반으로 통합 솔루션을 제공하는 오라클 프라이빗 클라우드 어플라이언스(Oracle Private Cloud Appliance)는 최적의 성능과 안정적이고, 통합된 가상화 운영환경을 제공함으로써 클라우드 운영 시스템인 오픈스택의 각 컴포넌트들의 대부분의 기능을 지원한다.

또한 일부 오픈스택 컴포넌트와 상호 연동성을 제공하는 툴인 엔터프라이즈 매니지먼트12c(Enterprise Management 12c, EM12c)를 함께 제공한다. 기업들은 EM12c를 활용해 프라이빗 클라우드와 퍼블릭 클라우드 사이의 양방향 서비스를 간단한 조작만으로 옮겨 다닐 수 있어 실질적인 하이브리드 클라우드를 구현할 수 있다.

프라이빗 클라우드 어플라이언스는 오라클 솔라리스(Oracle Solaris)와 리눅스(Linux)뿐 아니라 다양한 리눅스 배포판과 윈도우 서버 운영 시스템(Windows Server Operating System)까지 운영할 수 있으며, 프라이빗 클라우드 어플라이언스의 모든 컴포넌트는 통합 관리 툴을 통해 관리할 수 있다.

뿐만 아니라 프라이빗 클라우드 어플라이언스와 함께 제공되는 EM12c를 통해 전체 인프라를 정책에 따라 자동화, 표준화할 수 있어 IaaS 환경을 매우 손쉽게 구현 할 수 있다. 필요 시에는 오픈스택과 연계해 이미 개발중인 컴포넌트와도 연동이 가능해 투자 보호 효과도 누릴 수 있다. 나아가 하드 파티셔닝(Hard Partitioning)에 해당하는 트러스티드 파티션(Trusted Partition) 구성에 따른 소프트웨어 라이선스 또한 하드웨어 소켓(Socket) 단위가 아닌 가상머신에 할당된 코어(Core)수에 해당하는 라이선스만으로 운영이 가능하다.

프라이빗 클라우드 어플라이언스의 보다 구체적인 구조 및 구성 모듈은 다음과 같다.

⦁사전 구축 시스템(Pre-Build System)으로 최소의 설치 과정만으로 즉시 사용가능
⦁인테그레이션(Integration)에 수반되는 리스크(Risk) 자체를 제거한 시스템
⦁사전 정의 된 템플릿을 활용해 인테그레이티드 애플리케이션 프로비저닝(Integrated Application Provisioning) 가능
⦁소프트웨어 정의 네트워크를 포함한 최적의 가상화 시스템
⦁고객 환경 및 니즈에 따라 통합 ‘가상화’ 클라우드 전환 도구로 활용 가능


   
▲ <그림 4> 프라이빗 클라우드 어플라이언스


가상화 매니지먼트 솔루션

보다 효과적이고, 효율적인 가상화 환경을 구현하기 위해서는 가상화 매니지먼트(Management)를 위한 툴이 필요하다. 가상화 매니지먼트 툴은 가상화를 구현하기 위한 제어뿐 아니라, 운영 중 관리 및 모니터링 기능을 모두 제공할 수 있어야 한다. 또한 자사의 프라이빗 클라우드 시스템을 위한 단일 툴로서 중앙 집중적인 관리 및 제어도 가능해야 한다.

   
▲ <그림 5> 오라클 VM 매니저

오라클의 가상화 매니지먼트 툴인 VM 매니저(Oracle VM Manager)는 IaaS 모듈과 프라이빗 클라우드 어플라이언스와 함께 제공해 기업들이 쉽고, 빠르게 클라우드 환경을 구축 및 운영 할 수도 있도록 지원한다. 또한 다수의 프라이빗 클라우드 시스템을 단일 관리 툴로 제어할 수도 있다. 무엇보다도 중요한 기능은 EM12c를 통해 퍼블릭 클라우드와 프라이빗 클라우드 환경을 매우 손쉽게 오갈 수 있다는 점이다.

정리하자면, 비즈니스 복잡성이 나날이 심화되면서 기업들은 기존 비즈니스 영역의 안정성뿐 아니라 새로운 서비스 및 기능까지 쉽고 빠르게 지원할 수 있는 통합 IT환경을 필요로 하고 있다. 하드웨어와 소프트웨어가 긴밀하게 통합된 엔지니어드 시스템을 통해 서버 통합 가상화 환경을 구현한다면 IT 환경의 복잡성은 줄이는 동시에 운영 효율성을 대폭 향상시킬 수 있다.

또한 가상화 기술을 효과적으로 활용할 경우, 하드웨어와 소프트웨어의 모든 도입 및 운영 측면에서 최적의 데이터센터 코어 환경 구축이 가능할 뿐 아니라 나아가 프라이빗 클라우드 IaaS 환경을 구현함으로써 디지털 디스럽션(Digital Disruption) 시대에 부응하는 민첩한 변화 대응력까지 두루 갖출 수 있을 것이다.

인기기사 순위
(우)08503 서울특별시 금천구 가산디지털1로 181 (가산 W CENTER) 1713~1715호
TEL : 02-2039-6160  FAX : 02-2039-6163  사업자등록번호:106-86-40304
개인정보/청소년보호책임자:김선오  등록번호:서울 아 00418  등록일자:2007.08  발행인:김용석  편집인:김선오