제1편 “오픈소스SW 이해” [ 관련기사 바로가기: IT 미래를 혁신할 오픈소스SW, 그것이 알고 싶다! (1편) ]에서 오픈소스SW에 대한 기본적인 소개를 했는데, 오픈소스SW가 IT를 혁신하고 있다고 느끼셨나요? 오픈소스SW를 사용하여 우리가 많이 사용하는 카카오톡과 같은 스마트폰 앱, Facebook과 같은 SNS 서비스 등의 다양한 IT 시스템을 적은 비용으로 빠르게 개발하여 서비스할 수 있다는 것도 알게 되셨죠?
제2편 “기업의 인프라로 진화하고 있는 오픈소스SW”에서는 기업 내에서의 오픈소스SW의 활용에 대한 내용입니다. 기업에서 오픈소스SW의 활용은 Linux, WS(Web Server)를 시작으로 최근에는 WAS(Web Application Server), DBMS, 모바일, 빅데이터 분석, 클라우드, 사물통신 등으로 급속도로 확대되고 있고, 물리적 IT 인프라 기반이던 네트워크, 데이터센터도 오픈소스SW가 중심이 되는 SDN(Software Defined Network), SDDC(Software Defined Data Center)로 진화 발전하고 있습니다.
▲ 기업 IT 인프라의 발전 방향
지금부터 기업의 IT 인프라로 진화하고 있는 오픈소스SW에 대해 자세히 소개하겠습니다.
제1편: 오픈소스SW 이해
제2편: 기업의 인프라로 진화하고 있는 오픈소스SW
제3편: 기업의 핵심 데이터를 책임지는 오픈소스 DBMS 기술
제4편: 기하급수적으로 늘어나는 빅데이터 분석을 위한 오픈소스SW 기술
제5편: 오픈소스SW 차세대 트렌드
최근까지도 기업에서는 보안 강화, 비즈니스 요구사항, 안정적인 서비스 제공을 위해 자체개발SW나 상용SW를 사용하는 것이 당연하다고 생각해 왔습니다. 그에 반해, 상용SW의 라이선스 및 유지 보수 비용은 매년 물가 상승률에 맞춰 지속적으로 상승하고 있기 때문에 기업의 부담이 가중되고 있습니다.
상용SW의 라이선스 비용은 수백만 원에서 수 십억 원 수준이며 유지 보수 비용도 라이선스 비용의10~22%에 이릅니다. 이처럼 기업의 부담은 늘어가고 있는 반면 이미 기업 시스템에 적용된 IT 시스템은 시간이 지날수록 기업 IT 인프라로 Lock-In되어 상용SW 벤더에 종속되는 경향이 강해지고 있습니다. 지금까지는 안정적인 대안 SW가 거의 없었기 때문에 상용SW에 의존할 수밖에 없는 상황이었습니다.
▲ 상용SW의 IT 비용 구조
IT 인프라 원가 절감을 위해 경제적으로 어려움을 겪는 중소기업 위주로 시작한 오픈소스SW 활용은 글로벌 기업인 구글, 아마존, 국내 대기업인 삼성, LG 등의 적극적인 참여와 지원으로 확대되고 있습니다. 개발자들이 오픈소스SW 커뮤니티에 적극적으로 참여하면서 오픈소스SW의 안정성이 높아졌고, 가장 큰 문제점이었던 기술지원의 문제도 개발자 커뮤니티나 기술지원 회사가 많아지면서 부담이 많이 줄었습니다.
기업에서 오픈소스SW를 사용해야 하는 이유는 세 가지 정도로 요약할 수 있습니다.
첫째, TCO 관점에서 80%~90% 이상 절감이 가능합니다. 최근 기업의 가장 큰 고민이 막대한 IT 시스템 구매 및 유지 보수 비용입니다. 상용DBMS를 예로 들면 대기업의 경우 매년 Oracle DBMS 라이선스와 유지 보수 비용으로 수 백억 원 이상 지불하는데 80% 이상 절감됩니다.
둘째, 필요한 솔루션, 서비스를 빠르게 개발할 수 있습니다. 기업 간 경쟁이 가속화되는 환경에서 Agile한 개발은 기업 경쟁력 강화를 위한 필수조건입니다. 기업에서 개발자들은 이미 만들어진 오픈소스SW를 활용하거나 소스 코드 알고리즘을 재사용 하여 개발 기간을 단축할 수 있습니다. 오픈소스SW가 확산되면서 안정적이고 기능도 우수한 프로젝트들이 많이 공개되고 있는데 이를 기반으로 더 좋은 서비스들이 빠르게 많이 나오게 될 것입니다.
셋째, 소스가 공개되어 SW의 알고리즘 및 내부 구조까지 볼 수 있습니다. 상용SW 벤더 솔루션은 바이너리 형태로 제공되어 문제 발생 시 근본 원인을 찾기 위해서는 벤더의 엔지니어에 많이 의존할 수밖에 없습니다. 오픈소스SW는 벤더 솔루션의 블랙박스 영역을 화이트박스로 만들 수 있을 뿐 아니라, 개발자들은 소스 코드를 이용하여 역량을 강화할 수 있고 기업은 필요한 용도로 수정하여 사용이 가능하고 장애가 발생했을 경우에도 지금은 벤더에 의존해야만 하는 문제점을 내부 인력으로 소스 코드 레벨에서 명확한 근본 원인을 찾을 수 있습니다.
비용절감, Agile한 개발 및 장애에 유연한 대응 가능한 오픈소스SW! 매력적이지 않습니까?
아무리 작은 기업도 IT 인프라의 도움 없이는 운영할 수 없습니다. 기업에서 필요로 하는 IT 인프라는 데이터센터, 서버, 스토리지, 네트워크 등의 HW 인프라, 서버에 들어가는 OS, DBMS, WAS, WS, Application 및 개발자를 위한 개발도구, 운영자를 위한 모니터링 시스템 등 다양한 SW가 필요합니다.
▲ 기업 IT 인프라 구성
IT 인프라로 활용하는 오픈소스SW는 서버 OS로 굳건히 자리를 잡은 Linux 외에도 WS/WAS의 대표 이름으로 기억되는 Apache/Tomcat/JBOSS, DBMS 분야에서는 PostgreSQL, MariaDB 및 국내 대표 오픈소스SW인CUBRID, 그리고 Java 개발자에게 필수적인 Spring, Struts 프레임워크와 통합개발 환경인 Eclipse, 소스형상관리를 위한 SVN, Git 등이 많이 사용되고 있습니다.
▲ 서버 SW 구성
오픈소스SW의 사용이 증가하면서 기업의 IT인프라도 상용SW 중심에서 오픈소스SW 중심으로 진화하고 있습니다. IT 인프라의 중심인 데이터센터, 네트워크도 HW 기반에서 SW 기반으로 변화하고 있습니다. 최근 이슈가 되는 SDN, SDDC는 오픈소스SW 기반 IT 인프라로 패러다임을 완전히 바꿀 것입니다.
빅데이터, 클라우드, 사물통신, 모바일, SNS 등의 새로운 서비스로 인해 네트워크 트래픽은 기하급수적으로 증가하고 있고 고정된 네트워크가 감당하기 어려운 시점이 도래하였습니다. 지금까지 사용하던 네트워크 장비는 일관된 정책 적용 및 자동 확장이 어려운 구조적 한계도 있고, 네트워크 프로토콜이 변경되었을 때 모든 장비를 교체해야 하는 약점도 가지고 있습니다.
이에 대한 대안으로 중앙에서 모든 벤더의 네트워크 장비를 SW를 통해 일괄적으로 제어 가능한 SDN 기술이 주목받고 있습니다. SDN은 네트워크 장비로부터 Control과 Data Packet의 Flow를 분리한 소프트웨어 기반 네트워크 Controller입니다.
이미 구글이나 아마존이 SDN 개념을 적용해 자신들이 원하는 소프트웨어를 네트워크 인프라에 적용해 사용하고 있는 상황입니다. 구글은 특정 벤더에 종속된 네트워크 장비 문제 및 내부 트래픽 스케줄링 제어 과정에서의 트래픽 엔지니어링의 어려움 인식하고 2010년부터 2012년까지 SDN의 핵심기술인 OpenFlow를 도입한 지스케일(G-Scale) 프로젝트를 통해 전 세계에 흩어져있는 자사 데이터센터 백본 구간을 전부 SDN기반 라우터와 스위치로 구축했습니다. 특정 네트워크 업체의 제품이 아닌 필요한 기능들만 담아낸 자체 개발 장비를 사용해 비용 절감뿐 아니라 기존에 40~50% 수준인 네트워크 자원 활용 및 효율성을 90% 이상으로 끌어올렸습니다.
▲ SDN 아키텍처
네트워크뿐만 아니라 최근에는 소프트웨어 기반 서버, 소프트웨어 기반 스토리지인 SDS(Software Defined Server/Storage) 영역에서도 오픈소스SW를 활용하고자 상용 솔루션 기업들이 움직이고 있습니다. EMC와 IBM, VM웨어 등이 다양한 접근 방식을 통해 오픈소스SW와 결합하기 위해 노력하고 있고 OpenStack 기반 오브젝트 스토리지인 ‘Swift’와 블록 스토리지 ‘Cinder’ 등이 활약을 펼칠 것입니다.
SDDC는 IT 인프라의 혁신입니다. 지금까지 HW 중심의 인프라가 SW 중심의 인프라로 패러다임이 바뀌고 SW 기반으로 데이터센터 관리가 자동화됩니다.
SDDC는 데이터센터 내의 모든 제어를 SW 기반으로 해결하는 것으로 그 대상으로는 서버, 스토리지, 네트워크, 보안장비 등 물리적인 HW 장비가 모두 포함됩니다. HW 기반에서는 새로운 정책의 변경, 업그레이드 등을 위해 수천 대 이상의 물리적 장비에 직접 접속하고 작업했어야 했는데 SW 기반으로 바뀌면 중앙에서 한 번의 클릭으로 모든 정책과 제어가 가능합니다.
SDN 개념을 시작으로 SDS, SDDC로 진화 발전하고 있고 그 중심에는 가상화와 클라우드 기술이 있습니다.이미 안정성이 검증된 OpenStack과 CloudStack 기술은 오픈소스SW 기반으로 SDDC를 완성할 것입니다.
기업 입장에서 오픈소스SW 활용은 선택이 아닌 필수입니다. IT 인프라는 한번 기업에 적용하면 쉽게 다른 것으로 변경하기 힘듭니다. 아무런 준비 없이 오픈소스SW를 적용했을 경우 시스템의 품질, 운영, 기술 지원 및 장애 등의 어려움이 있을 수 있습니다. 현재는 과도기 단계인 상용SW에서 오픈소스SW로 넘어가기 전단계로 기업 내부에서 신규로 오픈소스SW를 적용하거나, 기존 인프라를 전환하기 위해서는 다음과 같은 준비가 필요합니다.
▲ 기업의 IT 인프라로서 오픈소스SW 적용 단계
오픈소스SW가 기업환경에 적합한 안정성과 성능을 보유하고 있는지 PoC(Proof of Concept)를 통해 검증하고, 장애 등의 문제가 발생했을 때 대응이 가능한지 사전 검증이 필요합니다.
내부 인력 양성은 오픈소스SW를 기업에 적용하기 위해 가장 중요한 요소입니다. 개발 인력, 운영 인력이 양성되면 기업에서 오픈소스SW 적용, 유지 보수 및 장애에 대한 부담이 줄어듭니다.
문제가 발생했을 때 내부 인력 및 파트너사를 통해 기술 지원이 가능한지, 이를 위한 기술 지원 체계를 만들어야 합니다. 현재는 기술 지원의 이슈 때문에 Red Hat, PPAS 같은 “상용 오픈소스SW”를 많이 사용하고 있습니다. 오픈소스SW 인력이 기업 내부에서 내재화되면 “커뮤니티 오픈소스SW”를 활용한 솔루션 및 서비스 개발이 더욱 가속화될 것입니다.
기업 내 오픈소스SW를 활용할 수 있는 인프라를 구성하는 것은 아주 중요합니다. GitHub와 같은 SW 중앙Repository 구성을 통해 표준으로 선정된 오픈소스SW뿐만 아니라, 기업 내부에서 자체 개발된 SW가 오픈 되고, 다양한 부서에서 참여하여 공유 가능한 인프라를 만들어야 합니다. 대부분의 기업에서는 다른 부서에서 개발한 SW가 서로 공유되지 않아, 같은 기능의 SW를 중복 개발하는 문제가 많습니다. 재사용 가능한 환경의 인프라는 기업의 비용 절감 및 경쟁력 강화를 제고할 것입니다.
오픈소스SW는 라이선스 의무사항을 준수하고 이에 대한 지속적 확인이 필요합니다. 회사 내에 라이선스,컴플라이언스 관리 및 오픈소스SW 확산을 위한 전담 조직이 별도로 구성되어 기술 지원, 표준화, 프로세스 수립 및 교육 등을 수행해야 합니다.
마지막으로 가장 중요한 것은 기업 문화의 혁신입니다. IT 서비스 기업의 가장 큰 고민은 새로운 기술을 받아들이고 적용했을 때 발생할 수 있는 장애의 두려움입니다. 시간이 조금 걸리더라도 인력을 양성하고 기술 지원 체계를 만들면서 차근차근 준비해 나가면 오픈소스SW 기반의 새로운 기업 문화가 정착될 것입니다.
▲ 오픈소스SW 적용을 위한 기업의 준비사항
기업에서 어떤 오픈소스SW를 활용하는지, 앞으로 오픈소스SW로 인해 기업의 IT 인프라는 어떻게 바뀔 것인지, 기업에서는 무엇을 준비해야 하는지 좀 이해하셨나요? “기업의 인프라로 진화하고 있는 오픈소스SW”에 대한 소개는 여기까지입니다. 다음 편에 다시 만나도록 하겠습니다.
아참!!! 기업에서 오픈소스SW 적용을 가속화 하는 중심에 무엇이 있는지 아시나요?
저는 “데이터”라고 생각합니다. 데이터 중심의 세상이 다가오고 있는 거죠. 다음 편인 “기업의 핵심 데이터를 책임지는 오픈소스 DBMS 기술”에서는 기존 RDBMS 시장을 대체하는 오픈소스SW DBMS, 상용 DBMS전환을 위한 기업의 노력, 최근 IT업계의 화두인 빅데이터 처리를 위한 NoSQL DBMS까지 데이터 중심의 세상에서 필요한 오픈소스SW DBMS 기술에 대해 다루겠습니다.
<참고자료>
http://www.oss.kr/, 공개SW포털, 정보통신산업연구원
http://ko.wikipedia.org/, 위키피디아
https://www.opennetworking.org/, ONF
http://www.it.co.kr/news/article.html?no=2792659, U2L 시장에 접근하는 HP와 IBM의 자세, 미디어잇