‘하늘에 떠있는 데이터센터 아니다’ 클라우드 아키텍처 팁 7가지

CIO
견실하고 안정적인 클라우드 아키텍처는 IT 및 기업의 성패를 좌우할 수 있다. 애석하게도 여러 해에 걸쳐 위태롭게 구축된 클라우드 아키텍처가 많다. 그리고 부실한 구조는 급속히 진화하는 기술과 비즈니스 환경에 따른 요구사항을 결코 충족시킬 수 없다.

처음으로 클라우드 아키텍처를 구축하는 중이거나, 기존 클라우드 구조가 노화 또는 부실한 계획의 징후를 드러내기 시작한 이들이라면 아래의 7가지 팁을 참고해본다. 
 
ⓒ Image Credit : Getty Images Bank



1. 계획적이어야 한다
클라우드 아키텍처란 뭘까? 프론트 엔드 및 백 엔드 플랫폼, 클라우드 기반 딜리버리 시스템, 네트워크 자원 등 개별 구성요소들 사이의 공생 관계를 품은 총체적 구조라고 IT 시장 분석 회사인 ABI 리서치의 애널리스트인 마이클 타바레스는 표현했다.

그는 “이들 구성요소 중 어느 하나라도 결여되어 있다면, 클라우드 아키텍처를 완성할 수 없다. 더욱 중요하게도, 한 구성요소가 변하면 다른 구성요소 역시 그에 따라 변할 것이다”라고 말했다. 

웹 및 모바일 애플리케이션 테스팅 클라우드 사업자 소스 랩(Sauce Labs)의 플랫폼 서비스 총괄인 토마스 보일리스는 “준비 없이 시작하면 절대로 안 된다”라고 경고했다. 클라우드 인프라를 구축하는 작업은 복잡하며 이후의 확장성과 내구성 측면에서 변수가 많다는 설명이다. 보일리스는 “대충 짜맞춘 후 작동하기를 기대하는 오류를 범하지 말라. 설계는 극히 세밀하고 원칙적이어야 한다”라고 말했다. 

AWS, 구글, 마이크로소프트와 같은 지배적 클라우드 사업자는 이용자가 스스로 해야 할 일을 하고, 이용자 설명서를 읽는다는 전제 하에 구성 요소들을 제공한다. VM웨어의 클라우드헬스 클라우드 최적화 플랫폼의 제품 책임자인 엔니오 카르보니는 “일종의 레고처럼 생각하면 된다. 스스로 알아서 잘 사용해야 한다. 자칫, 걷잡을 수 없는 비용 급증이나 환경 불안정의 위험이 있다”라고 말했다. 

클라우드 랩의 클라우드 아키텍처 CTO이자 IBM 펠로우인 카일 브라운은 제대로 설계된 클라우드를 달성하는 최고의 방법은 계획과 예측이라고 조언했다. “마술적 해법은 없다. 아키텍처와 계획을 점증적으로 정의하면서 반복적 변화가 가능하도록 해야 한다”라고 그는 말했다. 

2. 애플리케이션 소유자의 니즈에 집중하라  
비즈니스 컨설팅 회사인 캡제미니의 클라우드 아키텍처 솔루션 책임자인 세코우 페이지는 클라우드 서비스가 클라우드 본연의 역량을 발휘하는 것이어야 한다고 말했다. 그는 “고객을 위해 클라우드의 잠재력을 극대화해 성능을 강화하고, 안정성을 증가시키고, 비용을 최소화해야 한다”라고 말했다. 

오픈소스 멀티 클라우드 애플리케이션 플랫폼에 전문화된 비영리 단체인 클라우드 파운드리 재단의 CTO인 칩 차일더스는 “애플리케이션 소유자, 즉 개발자, 그리고 ISV로부터 외부 소프트웨어를 소싱하고 운영하는 일을 책임지는 사람의 니즈에 근본적으로 집중해야 한다”고 말했다. 

차일더스는 AWS의 성공의 많은 부분이 고객 니즈에 대한 집중에서 비롯되었다고 진단하면서, “퍼블릭이든, 프라이빗이든, 클라우드 사업자에게도 이는 마찬가지로 적용된다”라고 말했다. 

타바레스는 기업을 종합적으로 진단한 후 스토리지, 확장, 보안 및 여타 서비스에 관한 중대 결정을 내려야 한다고 말했다. 그는 “최종 이용자도 클라우드 인프라가 어디서 왜 관리되고 체계화 되는지를 이해할 필요가 있다. 그래야만 HR, 재무, 업무, 마케팅, 홍보 등의 사업 부서가 제각각 단절된 시스템을 채택할 때 이르는 결말인 클라우드의 무분별한 산포를 방지할 수 있다”라고 지적했다. 

기업 및 IT 문화 역시 중요하다. 보일리스는 “조직 전체에 걸쳐, 그리고 클라우드를 이용하는 이용자 그룹에 걸쳐, 적절한 참여가 필요하다”라고 설명했다. 클라우드 설계자 등 어느 정도의 인하우스 전문성 역시 필수이다. 그는 “과거에 이를 해본 적이 있는 사람, 보다 중요하게도, 이용 사례 및 이용자 페르소나를 이해하는 사람이 필요하다”면서 “이용자 집단의 니즈를 이해하는 것이 제대로 된 계획 및 설계의 핵심이다”고 조언했다.

세계적 보험사인 리버티 뮤츄얼(Liberty Mutual)의 보안 데브옵스 플랫폼 상임 책임자인 저스틴 스톤은 “이를 혼자서는 할 수 없다. 클라우드 여정은 IT 조직 내의 여러 팀이 관여해야 하고, 강력한 업무 연계를 요구한다”라고 말했다. 

3. 확장성 및 표준화
클라우드 인프라 구성요소는 스토리지, 연산(메모리 및 프로세싱 능력), 네트워크라는 3가지 핵심 영역에서 개별적으로 확장될 수 있어야 한다. 차일더스는 “어떤 선택을 했는지와 무관하게, 이용자에게 중요한 핵심 역량 계획 차원에서 표준적 방식으로 플랫폼을 확장할 수 있도록 준비해야 한다”고 권고했다. 

한 조직의 클라우드 아키텍처는 단일 클라우드 서비스 사업자에게 의존해서는 안 된다고 튤라인 대학교 SPA(School of Professional Advancement)의 응용 컴퓨팅 및 기술 프로그램의 윌리엄 라이얼즈 교수는 경고했다. 

그는 “적절히 정의된 클라우드 아키텍처라면 오픈소스 표준에 최대한 집중할 것이다. 이에 의해 상이한 클라우드 사업자 및 온-프레미스 인프라 사이에서 호환성을 극대화할 수 있기 때문이다”고 설명했다. 

마이크로서비스의 성장은 표준화된 소프트웨어 콘테이너의 급속한 도입을 배경으로 한다. 타바레스는 “그 기술은 개발자가 코드를 플랫폼과 무관한 경량 패키지로 묶을 수 있게 해주고, 이는 상이한 인프라 사이를 무리 없이 이동할 수 있게 해준다”면서 “멀티 클라우드 시장이 성장함에 따라 컨테이너는 클라우드 인프라의 필수 부분이 되었고, 이는 상이한 벤더의 소프트웨어에 걸쳐 개별적 및 협력적 앱 개발을 가능하게 한다”라고 설명했다. 

-> 멀티클라우드 관리에 대해 반드시 알아야 할 것들

4. 개혁하라. 모방하지 말라
IT는 구식의 사고방식을 경계해야 한다. 페이지는 “이는 업무, 보안, 모니터링, 전개 등을 포함한다”고 지적했다.  


기존의 온-프레미스 아키텍처를 클라우드로 이동시키려는 유혹은 즉각적인 비용 및 시간 혜택으로 인해 저항하기 어렵지만, 거의 언제나 클라우드 아키텍처 구축을 망치는 접근법라는 경고도 있다.

비즈니스 및 테크 컨설팅 회사인 액센츄어의 클라우드 전략, 아키텍처 및 딜리버리 총괄 책임자인 미하 크랄지는 “클라우드를 ‘하늘에 떠있는 데이터센터’ 쯤으로 착각하며 아무 생각 없이 애플리케이션을 옮기기만 한다면 낭패를 볼 것이다. 미래에 대한 로드맵 없이 애플리케이션을 옮기는 CIO는 흔히 기대만큼의 가치를 얻지도 못할뿐더러, 일부의 경우, 예상을 훨씬 넘는 기술 부채에 빠진다”라고 지적했다. 

클라우드 혁신은 새로운 접근법과 기술을 기꺼이 수용할 용의가 있는 IT를 요구한다. IBM 클라우드 랩의 유명한 엔지니어인 롤랜드 바르시아는 “적절한 인재 조합이 결정적이다”고 말했다. 

그는 원래 전통적 데이터센터를 구축하기 위한 목적으로 구성된 팀이 클라우드-네이티브 솔루션을 전개할 때 그만큼이나 효과적으로 기능할 것이라고 막연히 전제하는 것은 오류라고 지적했다. 그는 “오히려, 운영 팀을 엔지니어처럼 재교육하고 소프트웨어 정의 기술을 발전시키는 것이 중요하다”고 말했다. 

외부 지원 역시 소중하다. 스톤은 “조직의 사업과 목표를 이해하는 클라우드 사업자 및 소프트웨어 업체와 협력하면서 시작하는 것이 지극히 중요하다”고 말했다. 

-> "인프라 전환 이끄는 협상가"··· '클라우드 아키텍트'의 이해

5. 클라우드 스토리지 편식을 지양하라 
하나의 스토리지 유형에 집중하는 것은 선택지가 아니라고 타바레스는 지적했다. 대형 클라우드 사업자는 대개 다양한 스토리지 서비스를 제공한다. 예를 들어 AWS는 심플 스토리지(Simple Storage, S3), EBS(Elastic Block Storage), EFS(Elastic File System), 가져오기/내보내기 대량 데이터 전송 서비스, 글레이셔(Glacier) 아카이브 백업 및 스토리지 게이트웨이를 제공한다. 

그는 “단일 스토리지 선택지가 모든 상황에 적합한 것은 아니다. 게다가, 상이한 데이터세트에 대해 상이한 클라우드 스토리지 선택지를 이용한다면 성능, 비용, 기능 면에서 혜택이 있을 수 있다”라고 설명했다. 

6. 탄력적 연결을 구축하라 
제대로 설계된 클라우드는 높은 대역폭과 낮은 지연을 제공한다. IT 서비스 관리 회사인 퓨쳐 테크 엔터프라이즈(Future Tech Enterprise)의 CIO인 마이크 애터는 “네트워크 레이어는 애자일 해야 한다. 그래서 최종 이용자가 서버, 그리고 때에 따라, 여러 클라우드 사이에서 신속하고 효과적으로 움직일 수 있어야 한다. 클라우드 자원을 어떻게 적절히 이용할 것인가에 관한 결정을 원활하게 내릴 수 있도록 모니터링 및 관리 기능은 간소해야 한다”고 말했다. 

라이얼스는 “적절히 정의된 클라우드 아키텍처는 클라우드 인프라뿐 아니라 연결성 역시 관여한다”고 말했다. 기본적으로, 조직들은 인터넷을 통해 클라우드 서비스 사업자에게 연결된다. 그는 “모든 대형 클라우드 사업자는 조직이 위치한 곳으로부터 클라우드 인프라까지 프라이빗 연결을 제공한다”고 설명했다. 

적절히 정의된 클라우드 아키텍처는 멀티 클라우드 접근법이 관여하기 때문에 각 클라우드 서비스 사업자로의 별개의 연결을 갖는 것은 과도한 비용을 발생시킬 수 있다. 라이얼스는 “따라서 클라우드 연결 브로커나 클라우드 교환소로의 네트워크 연결을 확립하는 것이 좋다. 이에 의해 모든 대형 클라우드 서비스 사업자로의 네트워크 투입이 가능하다”라고 조언했다. 

-> 마이크로서비스로 이전하기··· ‘현장의 조언 8가지’

7. 보안을 철저히 통합하라 
클라우드 보안 서비스는 다른 서비스와 절대로 격리되어서는 안 된다. 타바레스는 “오히려, 예컨대 스토리지, 확장성 개선 기능 등 추가 서비스로 통합되어야 한다”고 말했다.

견실한 보안 원칙이 클라우드 아키텍처의 각 레이어에 매립되어야 한다. 라이얼스는 “클라우드 서비스를 이용하는 조직은 클라우드 서비스 사업자의 책임이 끝나는 부분과 조직의 책임이 시작되는 부분을 명확히 이해해야 한다”고 말했다. 

한편 새롭게 클라우드를 도입하는 조직 가운데 사이버 보안이 전적으로 클라우드 서비스 사업자의 몫이라고 잘못 가정하는 조직이 많다. 라이얼스는 “적절히 정의된 클라우드 아키텍처라면 전체 아키텍처에 걸쳐 사이버 보안이 내재되어 있다”고 말했다. ciokr@idg.co.kr