2015.04.17

컨테이너의 부상과 변화하는 가상화 환경

Brandon Butler | Network World
2년 전, 프랭크 맥크리리는 민감한 의료 데이터를 클라우드에 저장하는 기업을 상대로 하는 앱타이블(Aptible)을 창업했다. 맥크리리는 CTO로서 컨테이너가 회사 운영에 핵심적인 역할을 하게 될 것으로 판단했다.

맥크리리는 “단순히 가상머신 상에서 서비스를 실행하는 것은 바람직하지 않다. 컨테이너 없이 운영하는 것은 상상할 수 없다”고 말했다.

컨테이너 광풍이 클라우드 컴퓨팅과 가상화 업계 전반을 휩쓸고 있다. 개발자들이 먼저 간편하게 애플리케이션 코드를 패키징하는 방법의 장점을 인지했고, 그 다음에는 아마존 웹 서비스, 레드햇, IBM과 VM웨어 등의 주요 IT 업체들도 컨테이너 대열에 합류했다.

여기서 한 가지 질문이 떠오른다. 컨테이너의 부상이 과연 가상화와 가상머신의 종말을 의미하는 것인가?

구조적인 분열
컨테이너 기술을 대대적으로 사용하는 클라우드 서비스 업체인 조이언트(Joyent)의 CTO 브라이언 캔트릴은 “지금 구조적인 분열이 일어나고 있다”며, “VM이 물리 기계를 상대로 했던 일을 이제 컨테이너가 VM을 상대로 하고 있다”고 말했다.

컨테이너는 새로운 기술이 아니다. 초기 컨테이너는 수십 년 전에 이미 오픈소스 리눅스 코드로 존재했다. 그러나 애플리케이션을 구축하고 실행하기 위한 방편으로서 많은 개발자들의 주목을 받기 시작한 것은 작년부터다. 컨테이너는 특정 코드, 애플리케이션 또는 프로세스를 격리한다. 이렇게 함으로써 컨테이너의 내용물을 집어넣을 수 있는, 관리하기 편한(여러 호스트 사이로 내용물을 옮기는 것도 포함) 일종의 상자를 제공한다.

하나의 서버를 여러 운영체제로 분할하는 가상머신을 연상할 수 있지만, 컨테이너는 OS 위에서 실행되므로 VM과 달리 생성 시 부팅을 위한 별도의 OS가 필요 없다. 간단히 설명하자면 컨테이너는 운영 체제를 가상화하여 VM에 비해 더 가벼운 애플리케이션 패키지를 제공한다.

따라서 캔트릴은 컨테이너를 베어 메탈 서버, 즉 하이퍼바이저와 가상 머신이 없는 서버에서 실행하는 것이 가장 좋다고 말한다. 캔트릴은 “VM은 컨테이너 환경에서는 아무 의미가 없다”면서, 조이언트가 컨테이너에서 클라우드를 구동하는 스마트OS(SmartOS) 운영체제를 구축했음을 강조했다.

그렇다면 컨테이너의 부상이 곧 VM의 종말이 될까?

451 리서치 그룹의 제이 라이맨은 “그렇게 생각하는 사람이 브라이언 혼자만은 아닐 것”이라고 말했다. 그러나 VM에 대해 사망 선고를 내리기엔 이르다는 입장이다. 라이맨은 “현실적으로 VM은 현재 엔터프라이즈 IT 환경에서 아주 중요한 부분이며, 가까운 시일 내에 다른 기술이 VM을 대체하거나 없애는 일은 없을 것”이라고 말했다.

컨테이너가 일부 상황에서 유용하지만 결코 만병통치약은 아니라는 것이다. 잘 알려진 전문가이자 클라우드 테크놀로지 파트너(Cloud Technology Partners)의 컨설턴트인 데이비드 린시컴은 “컨테이너를 클라우드 개발자가 활용할 수 있는 여러 무기 중 하나라고 생각해야 한다. 잘 맞는 상황도 있지만 모든 상황에 다 적합하진 않다”고 지적했다.

관건은 언제, 어디서 컨테이너를 사용하느냐다.

가장 잘 맞는 곳
앱타이블의 맥크리리는 민감한 의료 데이터를 위한 호스팅 플랫폼으로서 컨테이너가 가장 적합하다고 생각한다. 2013년에 설립되어 1년 후부터 제품을 판매하기 시작한 앱타이블은 아마존 웹 서비스의 EC2 서비스를 사용하며, 클라우드 기반 가상 머신 위에서 도커 컨테이너 이미지를 실행한다. 앱타이블은 민감한 의료 정보를 다루므로 각 고객용으로 컨테이너를 실행하는 별도의 가상 프라이빗 클라우드를 만들었다.

앱타이블이 컨테이너를 사용함으로써 가상머신만 사용하는 경우에 비해 얻는 이점은 관리가 훨씬 더 쉽다는 것이다. 무엇보다 컨테이너는 앱타이블이 관리하는 모든 데이터에 대한 일관적인 설계 아키텍처를 제공한다. 즉, 모든 데이터가 컨테이너에 저장된다. 고객 또는 앱타이블이 어떤 데이터를 업데이트해야 하는 경우 1초 내에 새 컨테이너를 만들어 실행할 수 있다. 반면 VM은 부팅되는 데 1분 정도가 소요된다.

유연성도 컨테이너의 장점이다. 앱타이블은 하나의 가상머신에 여러 컨테이너를 분산시키거나, 필요하다면 여러 VM에 걸쳐 대용량 컨테이너 하나를 분산시킬 수 있다. 앱타이블에게 중요한 점은 모든 데이터와 앱이 똑 같은 모양새를 유지한다면 서비스를 관리하기가 훨씬 더 쉬워진다는 것이다. 깔끔하게 컨테이너로 패키징되기 때문이다. 이것이 일종의 최소 공통 분모 역할을 한다.

앱타이블에게는 이 아키텍처가 효과적이지만 일관적인 서비스를 확보하는 것이 현실적으로 가능하지 않은 경우도 존재한다. 가트너의 애널리스트 리디아 레옹은 컨테이너가 부상하더라도 여러 운영체제와 다양한 보안 제어가 포함된 이기종 환경의 사용자는 여전히 VM 중심의 아키텍처를 사용하게 될 가능성이 높다고 말했다. 컨테이너는 모두 동일한 OS에서 실행되어야 한다. 예를 들어 리눅스와 윈도우의 혼합은 불가능하다. 그러나 대기업 환경에 가상 서버와 베어 메탈 물리 호스트가 섞여 있고 두 가지 모두에 컨테이너가 혼합될 이유는 없다.

컨테이너 서비스 본격화
컨테이너를 처음 사용하려면 무엇을 해야 할까? 클라우드와 가상화 시장의 업체들이 대대적으로 컨테이너 시장에 뛰어들었다. 오픈소스 컨테이너 프로젝트이자 회사 이름이기도 한 도커는 최근의 컨테이너 동향을 이끄는 핵심적인 주체다. 구글 쿠베르네티스(Kubernetes)와 같이 여러 컨테이너를 관리하는 데 도움이 되는 다른 오픈소스 프로젝트 역시 인기를 높여가고 있다.

IaaS 시장 선두업체인 아마존 웹 서비스는 지난 가을 아마존 일래스틱 컨테이너 서비스(ECS)를 발표했으며, 이번 달부터 판매를 시작했다. AWS 고객이 컨테이너를 가동하면 이후 ECS가 스케일링을 담당하면서 컨테이너 관리를 위한 중앙 관리 포털을 제공한다.

이번 달 마이크로소프트는 윈도우에서 실행되는 컨테이너를 지원하는 새로운 “나노” 운영체제를 출시했다.

다른 기업들 역시 컨테이너를 지원하게 될 것이다. 예를 들어 가상화 소프트웨어 분야의 강자 VM웨어도 컨테이너 지원을 시작한다고 발표했다. VM웨어의 클라우드 사업부 임원인 매튜 로지는 VM 내에서 컨테이너를 실행하면 사용자는 익숙한 보안과 관리 컨트롤을 그대로 유지하면서 새로운 기술을 사용할 수 있다고 말했다. 베어 메탈에서 바로 컨테이너를 실행하려면 네트워크 프로비저닝과 보안 연결이 필요한데, 이는 VM이 VM웨어 소프트웨어와 같은 관리 시스템 내에서 처리할 수 있는 부분이다. editor@itworld.co.kr


2015.04.17

컨테이너의 부상과 변화하는 가상화 환경

Brandon Butler | Network World
2년 전, 프랭크 맥크리리는 민감한 의료 데이터를 클라우드에 저장하는 기업을 상대로 하는 앱타이블(Aptible)을 창업했다. 맥크리리는 CTO로서 컨테이너가 회사 운영에 핵심적인 역할을 하게 될 것으로 판단했다.

맥크리리는 “단순히 가상머신 상에서 서비스를 실행하는 것은 바람직하지 않다. 컨테이너 없이 운영하는 것은 상상할 수 없다”고 말했다.

컨테이너 광풍이 클라우드 컴퓨팅과 가상화 업계 전반을 휩쓸고 있다. 개발자들이 먼저 간편하게 애플리케이션 코드를 패키징하는 방법의 장점을 인지했고, 그 다음에는 아마존 웹 서비스, 레드햇, IBM과 VM웨어 등의 주요 IT 업체들도 컨테이너 대열에 합류했다.

여기서 한 가지 질문이 떠오른다. 컨테이너의 부상이 과연 가상화와 가상머신의 종말을 의미하는 것인가?

구조적인 분열
컨테이너 기술을 대대적으로 사용하는 클라우드 서비스 업체인 조이언트(Joyent)의 CTO 브라이언 캔트릴은 “지금 구조적인 분열이 일어나고 있다”며, “VM이 물리 기계를 상대로 했던 일을 이제 컨테이너가 VM을 상대로 하고 있다”고 말했다.

컨테이너는 새로운 기술이 아니다. 초기 컨테이너는 수십 년 전에 이미 오픈소스 리눅스 코드로 존재했다. 그러나 애플리케이션을 구축하고 실행하기 위한 방편으로서 많은 개발자들의 주목을 받기 시작한 것은 작년부터다. 컨테이너는 특정 코드, 애플리케이션 또는 프로세스를 격리한다. 이렇게 함으로써 컨테이너의 내용물을 집어넣을 수 있는, 관리하기 편한(여러 호스트 사이로 내용물을 옮기는 것도 포함) 일종의 상자를 제공한다.

하나의 서버를 여러 운영체제로 분할하는 가상머신을 연상할 수 있지만, 컨테이너는 OS 위에서 실행되므로 VM과 달리 생성 시 부팅을 위한 별도의 OS가 필요 없다. 간단히 설명하자면 컨테이너는 운영 체제를 가상화하여 VM에 비해 더 가벼운 애플리케이션 패키지를 제공한다.

따라서 캔트릴은 컨테이너를 베어 메탈 서버, 즉 하이퍼바이저와 가상 머신이 없는 서버에서 실행하는 것이 가장 좋다고 말한다. 캔트릴은 “VM은 컨테이너 환경에서는 아무 의미가 없다”면서, 조이언트가 컨테이너에서 클라우드를 구동하는 스마트OS(SmartOS) 운영체제를 구축했음을 강조했다.

그렇다면 컨테이너의 부상이 곧 VM의 종말이 될까?

451 리서치 그룹의 제이 라이맨은 “그렇게 생각하는 사람이 브라이언 혼자만은 아닐 것”이라고 말했다. 그러나 VM에 대해 사망 선고를 내리기엔 이르다는 입장이다. 라이맨은 “현실적으로 VM은 현재 엔터프라이즈 IT 환경에서 아주 중요한 부분이며, 가까운 시일 내에 다른 기술이 VM을 대체하거나 없애는 일은 없을 것”이라고 말했다.

컨테이너가 일부 상황에서 유용하지만 결코 만병통치약은 아니라는 것이다. 잘 알려진 전문가이자 클라우드 테크놀로지 파트너(Cloud Technology Partners)의 컨설턴트인 데이비드 린시컴은 “컨테이너를 클라우드 개발자가 활용할 수 있는 여러 무기 중 하나라고 생각해야 한다. 잘 맞는 상황도 있지만 모든 상황에 다 적합하진 않다”고 지적했다.

관건은 언제, 어디서 컨테이너를 사용하느냐다.

가장 잘 맞는 곳
앱타이블의 맥크리리는 민감한 의료 데이터를 위한 호스팅 플랫폼으로서 컨테이너가 가장 적합하다고 생각한다. 2013년에 설립되어 1년 후부터 제품을 판매하기 시작한 앱타이블은 아마존 웹 서비스의 EC2 서비스를 사용하며, 클라우드 기반 가상 머신 위에서 도커 컨테이너 이미지를 실행한다. 앱타이블은 민감한 의료 정보를 다루므로 각 고객용으로 컨테이너를 실행하는 별도의 가상 프라이빗 클라우드를 만들었다.

앱타이블이 컨테이너를 사용함으로써 가상머신만 사용하는 경우에 비해 얻는 이점은 관리가 훨씬 더 쉽다는 것이다. 무엇보다 컨테이너는 앱타이블이 관리하는 모든 데이터에 대한 일관적인 설계 아키텍처를 제공한다. 즉, 모든 데이터가 컨테이너에 저장된다. 고객 또는 앱타이블이 어떤 데이터를 업데이트해야 하는 경우 1초 내에 새 컨테이너를 만들어 실행할 수 있다. 반면 VM은 부팅되는 데 1분 정도가 소요된다.

유연성도 컨테이너의 장점이다. 앱타이블은 하나의 가상머신에 여러 컨테이너를 분산시키거나, 필요하다면 여러 VM에 걸쳐 대용량 컨테이너 하나를 분산시킬 수 있다. 앱타이블에게 중요한 점은 모든 데이터와 앱이 똑 같은 모양새를 유지한다면 서비스를 관리하기가 훨씬 더 쉬워진다는 것이다. 깔끔하게 컨테이너로 패키징되기 때문이다. 이것이 일종의 최소 공통 분모 역할을 한다.

앱타이블에게는 이 아키텍처가 효과적이지만 일관적인 서비스를 확보하는 것이 현실적으로 가능하지 않은 경우도 존재한다. 가트너의 애널리스트 리디아 레옹은 컨테이너가 부상하더라도 여러 운영체제와 다양한 보안 제어가 포함된 이기종 환경의 사용자는 여전히 VM 중심의 아키텍처를 사용하게 될 가능성이 높다고 말했다. 컨테이너는 모두 동일한 OS에서 실행되어야 한다. 예를 들어 리눅스와 윈도우의 혼합은 불가능하다. 그러나 대기업 환경에 가상 서버와 베어 메탈 물리 호스트가 섞여 있고 두 가지 모두에 컨테이너가 혼합될 이유는 없다.

컨테이너 서비스 본격화
컨테이너를 처음 사용하려면 무엇을 해야 할까? 클라우드와 가상화 시장의 업체들이 대대적으로 컨테이너 시장에 뛰어들었다. 오픈소스 컨테이너 프로젝트이자 회사 이름이기도 한 도커는 최근의 컨테이너 동향을 이끄는 핵심적인 주체다. 구글 쿠베르네티스(Kubernetes)와 같이 여러 컨테이너를 관리하는 데 도움이 되는 다른 오픈소스 프로젝트 역시 인기를 높여가고 있다.

IaaS 시장 선두업체인 아마존 웹 서비스는 지난 가을 아마존 일래스틱 컨테이너 서비스(ECS)를 발표했으며, 이번 달부터 판매를 시작했다. AWS 고객이 컨테이너를 가동하면 이후 ECS가 스케일링을 담당하면서 컨테이너 관리를 위한 중앙 관리 포털을 제공한다.

이번 달 마이크로소프트는 윈도우에서 실행되는 컨테이너를 지원하는 새로운 “나노” 운영체제를 출시했다.

다른 기업들 역시 컨테이너를 지원하게 될 것이다. 예를 들어 가상화 소프트웨어 분야의 강자 VM웨어도 컨테이너 지원을 시작한다고 발표했다. VM웨어의 클라우드 사업부 임원인 매튜 로지는 VM 내에서 컨테이너를 실행하면 사용자는 익숙한 보안과 관리 컨트롤을 그대로 유지하면서 새로운 기술을 사용할 수 있다고 말했다. 베어 메탈에서 바로 컨테이너를 실행하려면 네트워크 프로비저닝과 보안 연결이 필요한데, 이는 VM이 VM웨어 소프트웨어와 같은 관리 시스템 내에서 처리할 수 있는 부분이다. editor@itworld.co.kr


X