'멀티테넌시', 클라우드 도입시 중요도는?

일반입력 :2012/07/30 11:21    수정: 2012/08/13 11:05

기업들이 신기술을 도입해 내부 인프라와 통합하려면 기존 아키텍처와 조율을 거쳐야 한다. 운용해온 시스템과 새로운 기술을 연결하려면 적절히 수정할 필요가 있어서다. 그런데 퍼블릭클라우드는 수정의 자유로움이 덜하단 인식이 있다. 이에 대해 업체들은 자사 제품이 '멀티테넌시'를 지원한다고 주장해왔다. 사용자 환경에 맞춰 조율할 여지가 충분하다는 뜻이다.

이전부터 멀티테넌시 지원은 소프트웨어(SW) 업체들의 상식이었다. 남는 의문은 퍼블릭클라우드 업체들이 멀티테넌시를 강조하며 요구하는 대가가 적절하냐는 것이다. 이와 관련해 미국 지디넷이 29일(현지시각) 필 웨인라이트 유로클라우드 부사장의 '멀티테넌시 업체들은 바가지를 씌우고 있나'라는 제목의 칼럼을 게재해 눈길을 끈다. 유로클라우드는 유럽연합(EU) 전지역을 아우르는 클라우드 연결망 구축을 추진하는 독립 비영리 조직이다.

웨인라이트는 가장 중요한 게 업체들이 멀티테넌시가 된다 안된다 주장하는게 아니라 구매자 관점에서 그들의 주요 의제가 뭐냐는 점이라고 지적했다. 그는 현업에서 멀티테넌시에 관여하게 되는 일반적 시나리오 3가지를 제시하며 각 상황별로 답이 달라질 것이라고 말했다.

■멀티테넌시는 함정?…클라우드 평가요소 2가지

다만 결론적으로 멀티테넌시란 용어, 개념이 함정일 수 있다고 그는 주장한다. 궁극적으로 사용자들은 클라우드 애플리케이션이나 서비스를 평가할 때 멀티테넌시에 대해 묻지 않아야 한다는 얘기다.

웨인라이트는 멀티테넌시는 그 인프라 안에 존재할 것이라면서도 하지만 우리가 일정 수준의 클라우드 성숙도에 도달할 대까지 기업용 애플리케이션 구매자들은 도입 솔루션을 실사하는 단계의 하나로 멀티테넌시를 믿을만한 업체를 평가할 준비를 해야 한다고 설명했다.

그는 진짜 중요한 게 클라우드 사업자가 실제로 경제적인 운영과 빠른 혁신과 경쟁적인 운영 성능을 제공하는지 여부다. 웨인라이트는 만일 클라우드 애플리케이션 업체가 그 인프라에서 기존 아키텍처의 잔재로 특정환경에만 알맞은 구성요소를 갖고 있다면, 그 선택지는 클라우드 서비스에 내포된 경제성, 성능, 관리상 변화를 완전히 측정한 이후 나왔다기보다 과거 이력 탓에 만들어졌을 것이라고 경고했다.

웨인라이트는 클라우드는 업체가 일정량 서비스를 제공하는 규모의 경제를 달성하고 자원 할당량을 관리하는 서비스지향아키텍처(SOA)로 움직인다고 설명한다. 사용자는 서비스 계약만 되면 그 자원을 어떻게 끌어오는지 신경쓸 필요가 없어야 한다. 단지 블랙박스 형태로 구성되는 각각의 서비스에 '거버넌스'와 '지속가능한 이점'이라는 2가지 핵심요소가 꼽힌다.

거버넌스는 사용자 데이터와 프로세스에 어떤 것도 영향을 줄 수 없다는 보증을 뜻한다. 즉 사용자가 자기 데이터와 프로세스를 다루는 규칙을 침해받지 않아야 한다는 얘기다. 이는 서비스계약서 안에 명시돼야 하며 만일 서비스 공급사가 실사 단계에서 그 내용을 보증한다면 좀 간단해진다.

지속가능한 이점은, 두루뭉술하게 표현하자면 서비스 공급사가 계약대로 서비스를 가동시키지 않거나 가동 이후 빠르게 경쟁력을 잃을만큼 바가지를 씌우지 않아야 한다는 뜻이다. 이를 평가하는 방식은 좀 복잡하다. 신뢰가 큰 부분을 차지하고 나머지 요소는 공급자 역량을 평가하는 사용자에 달렸다. 이런 평가때문에 멀티테넌시에 대한 의문이 증폭된다.

아래 내용은 웨인라이트가 현업의 3가지 도입사례를 통해 업체들의 메시지를 분석한 글이다.

■사례1: 전통적 인프라를 옮겨주는 업체

기존 제품 아키텍처를 이미지로 정의하려는 기성 SW업체들이 클라우드 등장이래 있어왔다. 기업들에게 멀티테넌시가 정말로 중요하지 않다고 주장하는 기업들이 시장에 존재한다는 점은 놀랍지 않다. 대개 기업들에게 '메가테넌시'같은 용어를 써가면서 멀티테넌시를 위한 모든 수단을 데이터베이스(DB)계층으로 가져온다. 예를 들어 클라우드사업을 하는 오라클은 멀티테넌시가 더이상 중요치 않다고 주장했고 '유닛4아그레소'는 클라우드 멀티테넌시를 재발명했다고 주장했다.

이런 회사들은 레거시 솔루션을 갖고 있으면서 '클라우드세탁'이란 연막작전으로 쉽게 새로움을 주장한다. 하지만 그들이 말하는 방식에 어떤 이로움이 있을까? 그들이 주장하는 기본적인 주장은 다음 3가지로 요약된다.

▲현재 자동화와 가상화 기술은 멀티테넌시를 미결과제로 만든다. 가상화 DB 인스턴스는 빠르고 저렴해 그 스택을 가로지르는 멀티테넌시 구현에 드는 비용이 없다. ▲현대적인 원격관리와 자동화된 업데이트는 사용자들이 계속 우리 인스턴스를 모두 유지케 해준다. 모두에게 중앙화된 단일 공유 스택을 동기화시킬 필요가 없다. 사용자들이 허용한다면 우리는 그 사용량을 원격으로 관찰하고 데이터를 그러모아 완전한 멀티테넌시를 제공하는 SaaS업체같은 관할권을 갖게 된다. ▲우리는 거버넌스 때문에 사용자 데이터를 뒤섞으려 하지 않는다.

거버넌스 때문에 사용자 데이터를 뒤섞지 않는다는 얘기 빼곤 그럴싸한 얘기다. 가상화, 자동화, 원격관리 기술이 고도화되면 전통적인 아키텍처가 완전한 멀티테넌시의 '규모의 경제'를 달성케 해준다. 다만 그게 충분하냐는 의문이 남는다. 업체들은 사용자들에게 이를 믿게끔 유도하고, 오랜 고객일 경우 실제로 그 종속에 안주해 느끼는 가치 때문에 어딘가에서 발생하는 손실을 알아채지 못하게 한다. 이게 위험한 점은 솔루션 업체들이 실제 지속가능하고 경쟁력있는 이점을 제시하기보단 희망적인 관념에 빠져들게 한다는 것이다.

■사례2: 기성 애플리케이션 공급업체

세일즈포스닷컴, 워크데이, 석세스팩터스같은 업체의 초기 클라우드 애플리케이션은 기반계층인 단일공유DB가 맨위부터 바닥까지 완전한 멀티테넌시를 위해 구축됐다. 당연히 이 업체들은 멀티테넌시가 클라우드 운영 방법론에서 필수불가결한 요소라고 주장한다.

이런 업체들이 DB를 쓰는 방식은 전통적인 클라이언트 서버 아키텍처 환경과 상당히 다르다. 극단적으로 거대한 소수의 테이블과, 거기에 DB에 내재한 코드 대신 메타데이터 형식으로 대부분의 애플리케이션 코드와 데이터 모델이 담긴 모습이다. 이런 접근방식은 단지 DB라이선스를 아낄 수 있다는 점 외에도 낮은 운영비에 비해 높은 성능을 달성하는 규모의 경제를 실현한다. 모든 스택이 극대화된 자원 효율에 초점을 맞추고 있는 덕이다. 모든 사용자와 생태계 협력사들이 언제나 완벽하게 동일한 운영플랫폼을 쓰니 집학적 자원 혁신같은 부가적 이점도 생긴다.

이런 업체들은 집합적 혁신의 빠른 페이스와 운영 절감이 탁월함을 주장하며 사용자가 절대로 단순한 가상화와 자동화를 구현해서 같은 효과를 볼 수 없다고 주장한다. 물론 그 '단순한 가상화와 자동화'는 전통적인 클라이언트 서버 아키텍처 인프라에 적용되는 것을 싸잡아 가리키는데, 그 요지는 프라이빗 클라우드를 아무리 잘 해봤자 소용 없다는 것이다.

그런데 일각에서는 처음부터 이런 업체들의 클라우드 애플리케이션을 십수년 전부터 써오기 시작할 경우 전혀 선택권이 없다고 주장한다. 가상화와 데이터센터 자동화같은 방식으로 오늘날같은 인프라 수준을 높일 수 없다는 것이다. 즉 퍼블릭클라우드 사업자들의 서비스형소프트웨어(SaaS)라 불리는 애플리케이션을 선택시 단일하고 오만한 플랫폼에 종속된다는 지적이다. 사용자가 향후 확장이나 이탈을 선택하려면 종속된 플랫폼에 구현된 기능을 쓰기 위해 원치않는 비용을 물 수 있다.

■사례3: 차세대 클라우드 사업자

사용자들이 멀티테넌시를 언급하는 최신 클라우드 사업자가 거의 없음을 깨달으면 전통적인 기업 솔루션 업체들과 초창기 클라우드 업체들간의 모든 논쟁을 부적절하다고 여기기 시작할 것이다. 이는 어쩌면 더이상 존재하지도 않는 애플리케이션 클래스를 구축하는 2가지 다른 접근방식에 대한 얘기다.

내 동료 에스테반 콜스키는 멀티테넌시가 클라우드에서 덜 중요해진다는 주장을 폈다. 클라우드 애플리케이션이 단일 개체로서보단 느슨하게 묶인 여러 서비스가 모여 이를 함께 조직화시킨 결과물이 제공되는 형태다. 만일 자동화된 인프라가 단일 환경에 맞춰진 가상화 인스턴스 기반 서비스를 쓰는 것보다 더 빠르고 싸다면 누가 기존 멀티테넌시를 위한 인스턴스를 쪼개 쓰는 방식을 신경쓸 것인가? 멀티테넌시는전체 아키텍처에서 핵심적이고 제한된 기능이라기보다 공구함의 한낱 기구에 불과해졌다.

관련기사

잠재적인 사례 하나가 있는데, 내가 고객사로 일했던 곳 하나는 첫번째 프로덕션 서버를 저전력 ARM 프로세서 기반으로 쓰기 시작했다. 이 서버들은 기존 PC아키텍처 서버 대비 10분의 1에 불과한 에너지를 소비하며 운영된다고 묘사된다. 하지만 이들은 32비트 프로세서이며 현재 SW성숙도 측면에서 사용자가 당장 그걸 쓰려면 코어 하나씩을 차지하는 프로세스를 돌려야 하는 실정이다. 이는 현재 특정 운영환경을 위한 멀티테넌시 구현을 택하기보다 점유 인스턴스당 프로비저닝 비용 효율을 10배 개선하는게 나을 수 있는 사례다.

하지만 내게 멀티네넌시의 의미를 둘러싼 이런 논의들은 그저 궤변으로 보인다. 예를 들어 만일 구글 컴퓨트 엔진이 '스패너'라는 단일 환경 관리툴을 쓰는 분산 프로세서 로드를 통해 데이터센터 실패에 대비한 회복탄력성을 제공한다면, 기업들이 실제로 그걸 도입할 논의를 시작하기에 마땅한 것일까? 컴퓨트엔진은 여전히 사용하는 시점에 공유 서비스로 존재하고 구글 스스로가 아닌 그 외부의 어떤 개인 고객에게 전용화된 인프라 구성요소는 하나도 없다. 업체들은 사업 실적으로 판단될 것이다. 그들이 실적을 내놓기 전까진 구매자가 위험부담을 떠안는 사례일 뿐이다. 그들은 스스로 판단해야 한다.