2014.06.12

도커 101 : 가장 중요한 질문 8가지

Brandon Buttler | Network World
이번 주 도커(Docker)가 IT 업계의 뜨거운 주제로 급부상했다. 도커가 무엇에 쓰는 물건인지 또는 기업 환경에 어떤 의미가 있는지 기본적인 사항을 살펴 본다.

1. 도대체 무엇인가?
도커는 오픈소스 프로젝트이자 리눅스 컨테이너에 초점을 맞춘 신생업체의 이름이다. 여기서 컨테이너(Container)란 여러 개의 애플리케이션을 단일 호스트에서 구동하기 위한 개념이다. 컴퓨팅 가상화와 유사하지만, 컴퓨팅 가상화가 여러 개의 운영체제를 생성하기 위해 서버를 가상화하는 것과는 달리 컨테이너는 본질적으로 운영체제를 가상화해 단일 호스트에서 다중 워크로드를 구동할 수 있는 좀 더 가벼운 대안을 제시한다.

2. 왜 이렇게 반응이 뜨거운가?
개발업체 도커는 1.0 버전을 출시하며 도커콘(DockerCon)이란 행사를 개최했다. 도커의 설립자이자 CTO인 솔로몬 하이크스는 오픈소스 도커 프로젝트가 그 동안 275만 건의 다운로드가 이루어졌고, 460명 이상의 기여자가 정식 버전 발표에 도움을 줬다고 밝혔다. 도커는 그 동안 자사 제품을 지원할 협력업체를 구축해 왔으며, 서비스 업체들은 도커 서비스를 제공하기 위해 이 대열에 합류하고 있다.



3. 컨테이너는 새로운 개념인가?
컨테이너, 구체적으로는 리눅스 컨테이너는 완전히 새로운 개념은 아니다. 오라클이나 HP, IBM 등의 대형 업체들은 10여 년 전부터 컨테이너를 사용해 왔다. 그렇지만 최근 몇 년 동안 오픈소스 프로젝트 도커가 그 대안으로, 또는 가상화의 보완책으로 인기를 얻은 것이다. 도커 프로젝트와 관련된 지원을 제공하는 시장이 있다는 것을 파악한 한 업체가 설립되고, 이후 회사 이름을 도커로 바꾸었다. 지난 1월 도커는 그레이록 파트너스 주도로 1500만 달러 상당의 시리즈 B 투자를 받았다. 특히 레드햇은 로커에 적지 않은 투자를 해 왔다.

4. 어떻게 작동하는 것인가?
로커 오픈소스 프로젝트에는 두 가지 측면이 있다. cgoups 또는 컨트롤 그룹은 워크로드가 필요로 하는 컴퓨트와 메모리, 디스크 I/O를 정의한다. 그리고 namesakes는 각각의 워크로드를 구분하고 격리하는 역할을 한다.

도커 상용 제품에는 두 가지 주요 요소가 포함되어 있다. 핵심 소프트웨어 플랫폼인 도커 엔진은 사용자가 컨테이너를 생성하고 사용할 수 있도록 해 준다. 그리고 도커 허브는 SaaS 기반의 서비스로 도커 서비스를 생성하고 공유할 수 있도록 해 준다. 도커는 1.0 버전과 도커 허브의 출시로 1만 4000개 이상의 애플리케이션이 자사 컨테이너를 사용할 수 있다고 밝혔다.

5. 컨테이너 때문에 가상머신이 필요 없어지는 것인가?
유명 블로거 스콧 로위는 “다른 한편으로 컨테이너는 격리 효과는 적지만 호스트의 커널과 운영체제 인스턴스의 특정 부분을 공유하기 때문에 과부하가 적다”라고 설명했다. 컨테이너는 단일 운영체제를 사용하는 환경에서는 매력적인 선택이지만, 여러 운영체제를 구동해야 할 필요가 있는 환경에서는 가상머신과 하이퍼바이저가 유용한 방안이다. 가상머신이 필요 없어지는 것은 아니지만, 특정 애플리케이션을 구동하는 데 있어서는 컨테이너가 가상화보다 더 나은 방법이 될 수 있다.

6. 컨테이너는 어디에 주로 사용하는가?
컨테이너가 제공하는 이점 중 하나는 이식성이다. 컨테이너는 가상머신이나 베어메탈 서버 상에서 구동할 수 있다. 자체 인프라에서도 구동할 수 있고, 클라우드 상에서 구동할 수도 있다. 이는 소프트웨어 개발과 관련된 초기에 컨테이너가 가장 많이 사용되는 영역 중 하나가 될 것이다. 프로그래머들은 애플리케이션을 작성해 이를 컨테이너에 담고, 애플리케이션 자체는 컨테이너에 담겨진 상태로 다양한 환경으로 옮겨질 수 있다.

7. 비용은 얼마나 드는가?
도커는 오픈소스 프로젝트로 깃허브에서 무료로 다운로드할 수 있다. 업체 도커가 제공하는 제품은 사설로 호스팅되는 컨테이너 저장소를 제공하는데, 비용은 컨테이너 하나당 1달러 정도이다.

8. 다른 업체들도 참여하고 있는가?
도커가 관심을 모으면서 많은 IT 업체들이 눈독을 들이고 있다. 물론 도커는 자체적인 협력관계도 구축하고 있다. 도커 상용 버전은 도커의 지원과 함께 다양한 소프트웨어 플랫폼과의 통합도 제공된다. 여기에는 레드햇이나 수세, 우분투 등의 리눅스 배포판과 퍼펫이나 안시블, 젠킨스 등의 서비스도 포함되어 있다.

다른 서비스 업체들은 도커를 자사 플랫폼 상에서 이용할 수 있도록 하고 있다. 예를 들어, 랙스페이스 CTO 존 엔게이츠는 블로그 포스트를 통해 처음에 랙스페이스는 도커에 큰 관심을 가지지 않았지만, 고객들이 도커를 사용하면서 랙스페이스에 지원을 요청해 도커 커뮤니티로 끌려 들어갔다고 말했다. 또 이제 랙스페이스는 자세를 바꿨다며, 컨테이너화를 차세대 가상화라고 평가했다.

랙스페이스는 새로운 애플리케이션을 다양한 환경에서 테스트하고 배치하는 데 도커를 사용하고 있다. 심지어 네트워킹에도 도커를 사용하고 있는데, 소프트웨어 기반 로드밸런서의 멀티테넌시 구현이 가능하기 때문이다. 하지만 엔게이츠는 도커가 가져온 가장 큰 충격은 컨테이너가 여러 환경에 걸친 워크로드 이식성의 시대를 열었다는 점이라고 말한다. 엔게이츠는 “도커는 클라우드 간에 워크로드를 주고받을 수 있도록 해 주는 추상화를 제공한다. 두 클라우드가 모두 오픈스택 클라우드일 필요도 없다. 운영체제 수준 가상화는 애플리케이션을 기반 인프라를 가리지 않도록 만들어 준다. 도커는 클라우드 컴퓨팅을 위한 현물 시장을 가능하게 하고, 사용자가 필요에 가장 잘 맞는 솔루션을 찾을 수 있도록 해 줄 것”이라고 강조했다.  editor@itworld.co.kr


2014.06.12

도커 101 : 가장 중요한 질문 8가지

Brandon Buttler | Network World
이번 주 도커(Docker)가 IT 업계의 뜨거운 주제로 급부상했다. 도커가 무엇에 쓰는 물건인지 또는 기업 환경에 어떤 의미가 있는지 기본적인 사항을 살펴 본다.

1. 도대체 무엇인가?
도커는 오픈소스 프로젝트이자 리눅스 컨테이너에 초점을 맞춘 신생업체의 이름이다. 여기서 컨테이너(Container)란 여러 개의 애플리케이션을 단일 호스트에서 구동하기 위한 개념이다. 컴퓨팅 가상화와 유사하지만, 컴퓨팅 가상화가 여러 개의 운영체제를 생성하기 위해 서버를 가상화하는 것과는 달리 컨테이너는 본질적으로 운영체제를 가상화해 단일 호스트에서 다중 워크로드를 구동할 수 있는 좀 더 가벼운 대안을 제시한다.

2. 왜 이렇게 반응이 뜨거운가?
개발업체 도커는 1.0 버전을 출시하며 도커콘(DockerCon)이란 행사를 개최했다. 도커의 설립자이자 CTO인 솔로몬 하이크스는 오픈소스 도커 프로젝트가 그 동안 275만 건의 다운로드가 이루어졌고, 460명 이상의 기여자가 정식 버전 발표에 도움을 줬다고 밝혔다. 도커는 그 동안 자사 제품을 지원할 협력업체를 구축해 왔으며, 서비스 업체들은 도커 서비스를 제공하기 위해 이 대열에 합류하고 있다.



3. 컨테이너는 새로운 개념인가?
컨테이너, 구체적으로는 리눅스 컨테이너는 완전히 새로운 개념은 아니다. 오라클이나 HP, IBM 등의 대형 업체들은 10여 년 전부터 컨테이너를 사용해 왔다. 그렇지만 최근 몇 년 동안 오픈소스 프로젝트 도커가 그 대안으로, 또는 가상화의 보완책으로 인기를 얻은 것이다. 도커 프로젝트와 관련된 지원을 제공하는 시장이 있다는 것을 파악한 한 업체가 설립되고, 이후 회사 이름을 도커로 바꾸었다. 지난 1월 도커는 그레이록 파트너스 주도로 1500만 달러 상당의 시리즈 B 투자를 받았다. 특히 레드햇은 로커에 적지 않은 투자를 해 왔다.

4. 어떻게 작동하는 것인가?
로커 오픈소스 프로젝트에는 두 가지 측면이 있다. cgoups 또는 컨트롤 그룹은 워크로드가 필요로 하는 컴퓨트와 메모리, 디스크 I/O를 정의한다. 그리고 namesakes는 각각의 워크로드를 구분하고 격리하는 역할을 한다.

도커 상용 제품에는 두 가지 주요 요소가 포함되어 있다. 핵심 소프트웨어 플랫폼인 도커 엔진은 사용자가 컨테이너를 생성하고 사용할 수 있도록 해 준다. 그리고 도커 허브는 SaaS 기반의 서비스로 도커 서비스를 생성하고 공유할 수 있도록 해 준다. 도커는 1.0 버전과 도커 허브의 출시로 1만 4000개 이상의 애플리케이션이 자사 컨테이너를 사용할 수 있다고 밝혔다.

5. 컨테이너 때문에 가상머신이 필요 없어지는 것인가?
유명 블로거 스콧 로위는 “다른 한편으로 컨테이너는 격리 효과는 적지만 호스트의 커널과 운영체제 인스턴스의 특정 부분을 공유하기 때문에 과부하가 적다”라고 설명했다. 컨테이너는 단일 운영체제를 사용하는 환경에서는 매력적인 선택이지만, 여러 운영체제를 구동해야 할 필요가 있는 환경에서는 가상머신과 하이퍼바이저가 유용한 방안이다. 가상머신이 필요 없어지는 것은 아니지만, 특정 애플리케이션을 구동하는 데 있어서는 컨테이너가 가상화보다 더 나은 방법이 될 수 있다.

6. 컨테이너는 어디에 주로 사용하는가?
컨테이너가 제공하는 이점 중 하나는 이식성이다. 컨테이너는 가상머신이나 베어메탈 서버 상에서 구동할 수 있다. 자체 인프라에서도 구동할 수 있고, 클라우드 상에서 구동할 수도 있다. 이는 소프트웨어 개발과 관련된 초기에 컨테이너가 가장 많이 사용되는 영역 중 하나가 될 것이다. 프로그래머들은 애플리케이션을 작성해 이를 컨테이너에 담고, 애플리케이션 자체는 컨테이너에 담겨진 상태로 다양한 환경으로 옮겨질 수 있다.

7. 비용은 얼마나 드는가?
도커는 오픈소스 프로젝트로 깃허브에서 무료로 다운로드할 수 있다. 업체 도커가 제공하는 제품은 사설로 호스팅되는 컨테이너 저장소를 제공하는데, 비용은 컨테이너 하나당 1달러 정도이다.

8. 다른 업체들도 참여하고 있는가?
도커가 관심을 모으면서 많은 IT 업체들이 눈독을 들이고 있다. 물론 도커는 자체적인 협력관계도 구축하고 있다. 도커 상용 버전은 도커의 지원과 함께 다양한 소프트웨어 플랫폼과의 통합도 제공된다. 여기에는 레드햇이나 수세, 우분투 등의 리눅스 배포판과 퍼펫이나 안시블, 젠킨스 등의 서비스도 포함되어 있다.

다른 서비스 업체들은 도커를 자사 플랫폼 상에서 이용할 수 있도록 하고 있다. 예를 들어, 랙스페이스 CTO 존 엔게이츠는 블로그 포스트를 통해 처음에 랙스페이스는 도커에 큰 관심을 가지지 않았지만, 고객들이 도커를 사용하면서 랙스페이스에 지원을 요청해 도커 커뮤니티로 끌려 들어갔다고 말했다. 또 이제 랙스페이스는 자세를 바꿨다며, 컨테이너화를 차세대 가상화라고 평가했다.

랙스페이스는 새로운 애플리케이션을 다양한 환경에서 테스트하고 배치하는 데 도커를 사용하고 있다. 심지어 네트워킹에도 도커를 사용하고 있는데, 소프트웨어 기반 로드밸런서의 멀티테넌시 구현이 가능하기 때문이다. 하지만 엔게이츠는 도커가 가져온 가장 큰 충격은 컨테이너가 여러 환경에 걸친 워크로드 이식성의 시대를 열었다는 점이라고 말한다. 엔게이츠는 “도커는 클라우드 간에 워크로드를 주고받을 수 있도록 해 주는 추상화를 제공한다. 두 클라우드가 모두 오픈스택 클라우드일 필요도 없다. 운영체제 수준 가상화는 애플리케이션을 기반 인프라를 가리지 않도록 만들어 준다. 도커는 클라우드 컴퓨팅을 위한 현물 시장을 가능하게 하고, 사용자가 필요에 가장 잘 맞는 솔루션을 찾을 수 있도록 해 줄 것”이라고 강조했다.  editor@itworld.co.kr


X