본문 바로가기

IT TREND

히타치 밴타라의 컨테이너 접근법



구글, 트위터와 같은 인터넷 기업들은 기존 서비스와는 전혀 다른 차원의 유연성과 확장성을 제공한다. 그리고 그 비밀은 컨테이너에 있다. 지메일에서부터 유튜브, 검색 등 구글의 모든 것은 컨테이너를 기반으로 서비스된다. 지난 10여년 간 컨테이너 컨셉은 리눅스를 중심으로 지속되어 왔지만, 지난 2014년 DotCloud가 비즈니스 요건을 만족시키기 시작하면서 도커(Docker) 프로젝트를 이어갔고, 그 결과 개발자들이 컨테이너를 활용하여 애플리케이션을 패키징하는 과정이 간소화됐다. 동시에 구글은 쿠베르네테스(Kubernetes) 프로젝트의 오픈소스를 공개했고, 트위터는 UC버클리와 함께 메소스(Mesos) 프로젝트를 시작했다. 현재 거의 모든 퍼블릭 클라우드 플랫폼이 스케줄러 혹은 오케스트레이터의 형태로 쿠베르네테스(Kubernetes) 및 메소스(Mesos)를 지원하고 있으며, 컨테이너 이미지이자 런타임 도구로서 도커(Docker)를 활용하고 있다.



컨테이너에 대한 소개

컨테이너화(Containerization)는 OS레벨 가상화로, 하나의 베어메탈(Baremetal) 혹은 가상머신(Virtual Machine, VM) 운영체제 호스트에 분산 애플리케이션을 구축하는 형태이다. 컨테이너 기반의 가상화는 시장에서 최근 가장 혁신적인 가상화 기술로 인식되고 있다. 전통적인 가상머신에서 OS를 포함한 전체 디바이스를 추상화시킴으로써 한 단계 진화한 차세대 기술인 컨테이너는 아래의 도식과 같이 애플리케이션과 애플리케이션에 필요한 종속 요소들로만 구성되어 있다.




컨테이너와 가상머신의 가장 큰 차이점은 가상머신은 애플리케이션과 더불어 운영체제도 각각 설치되어야 한다는 것이다. 예를 들어, 3개의 VM을 운영하는 물리적인 머신에는 하이퍼바이저와 3개의 운영체제가 설치되어야 하는 것이다. 하지만 도커(Docker)를 이용하여 3개의 컨테이너 애플리케이션 운영하는 경우 하나의 운영체제만으로 읽기 작업을 수행할 수 있다. 이후 각각의 컨테이너에서 쓰기 작업을 수행하므로 컨테이너는 가상머신 보다 훨씬 더 작은 리소스만을 소비하게 된다.


컨테이너는 애플리케이션과 기타 종속적인 요소들, 라이브러리, 바이너리, 실행에 필요한 구성파일들이 하나의 패키지로 구성되어 있어 다른 컴퓨팅 환경으로 이동되어서도 안정적으로 실행시킬 수 있다. 개발자의 노트북에서 테스트 환경으로 이동이 가능하며 혹은 스테이지 환경에서 운영 환경으로, 데이터센터의 물리적인 장비에서 프라이빗 및 퍼블릭 클라우드 상의 가상머신으로 이동이 가능하다.


컨테이너의 또 다른 혜택은 ‘경량화’된 기술이라는 점이다. 전통적인 가상머신과 달리 한 대의 서버에서 여러 개의 컨테이너를 지원할 수 있으며, 필요 시에 빠르게 구동하고, 필요하지 않을 때에는 리소스 활용을 위해 중단시킬 수 있다. 개발자들은 다른 애플리케이션에 영향을 주지 않은 채 컨테이너를 하나의 ‘샌드박스’로 활용하여 코드를 테스트할 수 있으며, 이를 통해 리소스 탄력성이 확보된 DevOps 환경을 구축할 수 있다. 모놀리식(Monolithic) 애플리케이션은 마이크로 서비스로 개발되어 컨테이너에서 실행 가능하며, 이러한 접근법은 획기적인 민첩성, 확장성, 안정성을 보장한다.




컨테이너, 데이터 폭증에 대한 해답을 제시하다

히타치 밴타라(Hitachi Vantara)의 한 필자는 최근 블로그를 통해 금융 서비스 기업들이 데이터 폭증에 대한 이슈를 해결하기 위해 컨테이너를 도입해야 한다는 주장을 펼친 바 있다. 그는 FINRA를 사례로 들며, 매일 370억 개의 트랜잭션과 연간 900여 개의 내부 거래가 발생하며, 1500여 곳 이상의 회사들이 징계 조치에 대한 배상금을 청구하고 있는 상황을 설명했다. 해당 글에는 “단 시간 내에 가로질러야 하는 데이터 소스의 양이 어마어마한 규모에 이르렀다. 트랜잭션이 한 없이 늘어나는 상황에서 쿼리 작업에 수 시간이 소요되었고, 컨테이너가 없었다면 데이터 소스를 빠르게 취합하는 것도, 그 이후 결과를 확보하는 것도 불가능했을 것이다. 과거의 VM 시스템은 현재의 문제를 해결하기 어려웠으며, 확장에도 한계가 있었다”고 기술되어 있다.




히타치 밴타라, 컨테이터 얼리어답터로 트렌드를 주도하다

히타치 밴타라(Hitachi Vantara)는 소프트웨어 제품군에 컨테이너 기술을 적용함으로써, 민첩성을 높이는 동시에 고객들이 컨테이너를 간편하게 구축할 수 있도록 지원할 수 있게 됐다. 2015년 7월 Unified Compute Platform은 Kubernetes 1.0 런칭의 일부로 공개되었고, 이는 Kubernetes 오케스트레이션을 적용한 첫번째 엔터프라이즈 인프라 플랫폼의 사례였다. 그리고 지난 달인 2017년 10월, 클라우드 태생의 애플리케이션에 대해 퍼블릭 클라우드 리소스 의존도를 줄일 수 있도록 돕는 Hitachi Enterprise Cloud Container Platform을 발표했다. 이 아키텍처는 Hitachi 인프라와 Mesosphere DC/OS가 통합되어 PaaS 형태의 사용자 인터페이스, 컨테이너 엔진, 스케줄링, 오케스트레이션, 워크플로우를 제공한다. 사전 엔지니어링 환경을 통해 개발자들은 앱 개발에 집중할 수 있으며, 강력한 산업 서비스 레벨의 옵션을 통해 애플리케이션이 운영 환경에 적용되고 확장이 가능하도록 지원한다. Hitachi는 이와 함께 DevOps 및 컨테이너 지원을 위한 매니지드 서비스를 선보임으로써, Hitachi Enterprise Cloud 파트너들이 VMware 및 Mesosphere와 협력하여 하이브리드 클라우드 관리 툴을 제공하고, 퍼블릭 클라우드 대신 종량제(Pay-as-you-go) 방식으로 클라우드를 사용할 수 있도록 지원하고 있다.



스토리지 단의 경우, Hitachi Storage Advisor에서 도커(Docker)를 설치 형태로 활용할 수 있도록 컨테이너를 사용하고 있다. Hitachi Storage Plugin for Containers(HSPC)는 데이터베이스와 같이 네트워크 연결 상태를 추적할 수 있는 애플리케이션으로, 컨테이너의 수명주기가 종료된 후에도 데이터를 지속할 수 있다. 내장된 고가용성 기능을 통해 Docker Swarm과 같은 오케이스트레이터를 지원하며, Kubernetes가 클러스터 내의 호스트 사이에서 스토리지 작업을 자동으로 오케스트레이션하도록 설정된다. 또한 스토리지 플러그인을 통해 Hitachi VSP G시리즈와 F시리즈가 제공하는 자동화, 고가용성, 무중단 복제, 원격 관리 및 분석 등의 기능을 사용할 수 있다. 앞으로도 지속적으로 소프트웨어에 컨테이너 지원이 추가될 예정이다.



지난해 펜타호(Pentaho)는 도커(Docker)에 대한 지원을 발표한 바 있다. 이를 통해 개발자들은 빅데이터 애플리케이션을 개발 후, 도커(Docker)와 펜타호 서버를 통해 배포할 수 있게 됐다. 운영체제와 관계 없이 애플리케이션은 설계한 대로 구동되고, 새로운 애플리케이션 개발에 드는 시간과 디버깅, 포팅에 드는 시간을 절감할 수 있는 이점이 있다. 도커(Docker)를 지원하는 버전의 펜타호(Pentaho)는 GitHub에서 다운로드 받을 수 있다.




히타치 밴타라 제품의 기반이 되는 컨테이너

최근 히타치 밴타라(Hitachi Vantara) 제품에는 광범위한 영역에 컨테이너가 적용됐다. Hitachi Content Intelligence, Pentaho 8 Worker Nodes, Lumada는 모두 동일한 플랫폼을 사용해 서비스 기반 애플리케이션의 빠른 개발을 지원하며, Docker, Mesos, Marathon과 같은 기술을 이용하여 엔터프라이즈 애플리케이션에 대한 컨테이너의 관리, 통신, 보안, 모니터링을 지원한다. 



Hitachi Content Intelligence(HCI)는 산재된 데이터를 연결하고 취합하여 이를 처리함으로써 인사이트를 제공한다. 히타치(Hitachi)는 업계에서 유일하게 클라우드 파일 게이트웨이, 엔터프라이즈 파일 공유 및 동기화 솔루션, 빅데이터 분석 시스템 간의 매끄러운(Seamless) 통합을 지원하는 오브젝트 스토리지 벤더이다. 






Pentaho 8은 최근 발표된 제품으로, 모니터링, 수명 주기 관리, 액티브-액티브 HA(High Availability)를 지원하기 위해 동일한 컨테이너 플랫폼을 사용하는 Worker Nodes가 추가된 버전이다. 과거에는 ETL 디자이너가 슬레이브 서버를 사전에 직접 정의하고, 각각의 실행 플로우를 컨트롤 하는 과정이 필요했다. 이번 버전을 통해 이제는 Pentaho Server를 설치한 후 Pentaho Worker 노드 클러스터에 연결하여 구성하는 것이 가능해졌다. 따라서 물리, 가상, 클라우드 환경에서 지속적인 배포가 가능하며, 스케일 및 로드 밸런싱 서비스를 지원하여 윈도 피크 및 시간의 한계를 극복하고, 필요에 따라 리소스를 할당할 수 있다. 





Lumada는 지능적이고, 안전하며, 유연한 컴포저블 IoT 플랫폼으로, 엣지, 코어, 애널리틱스, 스튜디오 등 4개의 주요 구성 요소로 이루어져 있다. Lumada Foundry는 이러한 요소들을 지원하는 기반 레이어로, 온프레미스 및 클라우드 환경의 산업별 소프트웨어에 대한 배포, 유지보수, 업그레이드, 스케일 등을 지원한다. Lumada Foundry는 마이크로 서비스 아키텍처를 기반으로 Docker, Mesos, Marathon 등과 같은 컨테이너 에코시스템 기술을 활용하고 있다. 





결론

스케줄러와 오케스트레이션을 위한 오픈소스 툴인 컨테이너는 새로운 수준의 가상화 기술로서 IoT 시대에 직면하게 되는 데이터 폭증에 대비할 수 있는 민첩성과 확장성을 제공한다. Hitachi Vantara는 컨테이너에 막대한 투자를 지속함으로써 자체 운영에 대한 민첩성을 높이고, 고객들의 운영 환경에도 컨테이너 도입을 늘리고자 할 계획이다. 하기의 IDC 자료에서 확인할 수 있듯, 모던 IT 환경에 대한 수요가 높아질 수록 컨테이너는 2020년까지 빠르게 확산될 것으로 전망된다.




히타치 밴타라(Hitachi Vantara)의 V는 가상화에 대한 히타치 고유의 기술력과 노하우를 상징한다. OS 레벨 가상화를 통해 이를 발전시켜 나아갈 것이며, 최근에 시도된 Hitachi Content Intelligence, Pentaho 8 Worker 노드, Lumada Foundry 등의 사례를 통해 오브젝트 스토리지, 분석, IoT에 대한 민첩성과 확장성의 지평을 넓힌 것과 같이 앞으로도 다양한 혁신이 등장할 것이다.