티스토리 뷰

안녕하세요~!!


요즘들어 OpenStack의 인기가 급상승하고 있다는 생각을 종종 하곤 합니다. 

OpenStack에 관심이 없던 회사도 오픈스택이 대체 뭐야? 뭐가 어떻길래 오픈스택~ 오픈스택~ 하는거야? 라는 반응을 보입니다. 오픈스택하면 거들떠보지도 않았던 VMWare와 시스코까지 오픈스택을 지원하겠다고 발표를 했습니다.


오픈스택은 무엇일까요? 오픈스택은 일종의 미들웨어와 같은 역할을 합니다. 운영체제와 시스템 사이에서 사용자에게는 자원을 할당해주고 운영체제 하단에서는 가상자원 및 물리자원을 관리하는 역할을 합니다.  


대부분의 사람들은 오픈스택이 가상자원을 지원하는 하이퍼바이저나 네트워크를 담당하는 가상 스위치, 데이터를 저장하기 위한 스토리지, 그 외에 데이터베이스 및 이미지를 모두 설치하고 관리해 준다고 생각합니다. 그래서 그 모든것들이 오픈스택이라고 생각합니다. 물론 오픈스택 설치 가이드를 보면 기본적인 것들을 설치하는 방법이 포함되어 있긴 하지만, 오픈스택의 범위에 들어가지는 않습니다. 


요즘 개발하는 대부분의 시스템들은 Open API라는 것을 제공하는데, Open API는 특정 자원을 열람해 보거나 사용하기 위한 기능을 API로 제공하고 있습니다. 아주 아주 예전에는 DB끼리 연동하여 자원을 가져다 썼지만 지금은 API를 오픈하여 파라메터만 넘겨주면 내가 원하는 데이터를 받아볼 수 있습니다. 


오픈스택의 모든 서비스들은 이렇게 API를 제공합니다. API를 이용해 자원을 확인할 수 있고, 확인된 자원의 상세정보를 확인할 수 있습니다. 또한 자원을 요청할 수도 있습니다. 거기에 사용자들이 쉽게 사용할 수 있도록 웹 UI까지 지원합니다.


그렇기 때문에 오픈스택을 기반으로 하는 소프트웨어를 자유자재로 개발할 수 있는것입니다.




또한 오픈스택은 Java에서 추상화 클래스 혹은 인터페이스와 비슷하다고 생각할 수 있습니다. 인터페이스에서 구현할 기능명을 명시해 놓고 실제 구현을 하는 부분에서는 그 어떤것이 와도 되는것처럼 오픈스택 역시 사용자에게 서비스되는 모습은 같지만, 실제로 서비스 되는 밑단에는 하나가 아닌 수많은 회사의 장비와 시스템이 와도 오픈스택을 사용할 수 있는것 처럼 말입니다. 


이런 개방 구조로 오픈스택을 설계하고 개발하였기 때문에 많은 회사들이 오픈스택에 관심을 갖기 시작했고, 오픈스택을 지원하기 시작했습니다. 오픈스택을 지원하는 회사들이 늘어나고, 오픈스택에서 지원하는 서비스의 수가 늘어나다 보니, 다양한 고객층의 요구사항을 충족할 수 있으며, 대형 벤더 회사들의 홍보 및 오픈소스 활동이 활발해 졌습니다.


아래 보이는 그림은 오픈스택 각각의 서비스에 지원되는 드라이버를 한눈에 볼 수 있도록 그림으로 표현해 본 것입니다. Neutron 같은 경우에는 SDN 개념이 들어오면서 SDN을 지원하는 네트워크 장비를 비롯해 다양한 컨트롤러들이 등장하기 시작했습니다. 스토리지 같은 경우에는 스토리지를 생산하는 대부분의 업체들이 오픈스택과 연동될 수 있도록 스토리지 API를 제공합니다. Nova도 여러 하이퍼바이저를 지원합니다. 오브젝트 스토리지 서비스인 Swift는 어떤가요? 단독으로 구성될 수 있으며, AWS의 S3 API와 연동도 됩니다. Swift API는 그대로 사용하되 밑단의 스토리지 부분은 다른 스토리지를 사용할 수도 있습니다. Keystone은 또 어떤가요? 사용자 정보를 관리하고 위한 MySql을 사용하는데, 보안성을 높이기 위하여 LDAP도 사용할 수 있습니다. 게다가 근래에는 빅데이터의 핵심 기술인 Hadoop과 mongoDB까지 흡수를 하였습니다.


오픈스택은 이런 수많은 장점들 때문에 많은 회사에서 지원하고 있으며, 활용 사례 또한 증가하고 있습니다. 사례가 많다는 뜻은 오픈스택이 이제 어느정도 안정이 되었다는 의미이기도 합니다. 처음에는 불안정하여 사용하기 힘들었으나, 계속되는 업데이트 과정을 통해 매우 비교적 안정이 되어 현재는 Private 클라우드 시스템은 물론 Public 클라우드 시스템으로도 손색이 없을 정도 입니다.



또한 오픈스택의 가장 큰 인기비결은 바로 오픈스택이 오픈소스라는 점입니다. 그래서 누구나 소스를 가져다 사용할 수 있으며, 누구나 참여해 개발을 할 수 있다는 점입니다. 이렇게 큰 시스템을 혼자서 개발해야 한다고 상상을 해 봅시다. 개발 기간도 기간이지만, 기술력이며 개발인원까지 정말 어마어마하여 엄두가 나질 않습니다. 그런데 오픈소스이기에 이미 대부분의 서비스가 개발이 되어 있기 때문에 이를 활용해서 다른 서비스를 추가 개발할 수 있다는 점입니다. 


그렇기 때문에 OpenStack이 떠오르는 이유가 아닐까? 하고 조심스럽게 생각해 봅니다.

최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
«   2024/03   »
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31
글 보관함