클라우드

IDG 블로그 | 멀티클라우드 아키텍처 분해의 단순화

David Linthicum | InfoWorld 2021.03.08
아키텍처란 주장과 같다. 모두가 자신만의 편견을 기반으로 한 각자의 주장이 있다. 어떤 아키텍처는 오픈소스 솔루션만을 사용할 것으로 고집하고, 특정 퍼블릭 클라우드나 데이터베이스를 고집하기도 한다. 이들 편향성은 종종 어떤 솔루션을 채택하고, 그 선택이 얼마나 좋고 나쁜지를 결정하는 동인이 된다.

문제는 이런 편견을 기반으로 구성요소나 기술을 선택하면, 흔히 비즈니스의 핵심 요구사항을 더 잘 만족하는 기술을 고려하지 않는다는 것이다. 비슷하기는 하지만 절대 100% 최적화되지 않는 아키텍처는 이렇게 만들어진다. 
 
ⓒ Getty Images Bank

최적화란 비용은 최소로 유지하면서 효율은 극대화하는 것을 말한다. 똑같은 문제를 10명의 클라우드 아키텍트에게 풀어보라고 하면, 10가지 서로 다른 해법이 나오는 것은 물론, 비용도 많으면 1년에 수백만 달러까지 차이가 날 것이다.

게다가 이 10가지 해법은 어쨌든 돌아간다. 최적화가 덜 된 아키텍처라도 기술 계층의 형식으로 비용을 투여하면 성능이나 탄력성, 보안 등의 문제를 완화할 수 있다. 이들 모든 계층은 완전히 최적화된 멀티클라우드 아키텍처와 비교해 10배나 많은 비용이 든다. 

그렇다면 최적화된 멀티클라우드 아키텍처를 어떻게 구축할 것인가? 멀티클라우드 아키텍처 분해가 최상의 접근 방법이다. 새로운 문제를 해결하는 데 오래 전부터 사용하던 기법이다. 모든 계획된 솔루션을 기능 단위로 분해하고, 각각을 자체 이점으로 평가해 핵심 구성요소가 최적인지를 알아보는 방법이다.

예를 들어, 도입할 계획인 데이터베이스 서비스만 보는 것이 아니라 해당 데이터베이스 서비스의 구성 요소, 즉 거버넌스와 데이터 보안, 데이터 복구, I/O, 캐싱, 롤백 등을 살펴본다. 데이터베이스만 괜찮은 것이 아니라 서브시스템까지 잘 맞도록 하는 것이다. 간혹 서드파티 제품이 더 나을 때도 있다.

컴퓨트, 스토리지, 개발, 운영 등의 각 구성요소를 해부해 핵심 문제를 해결할 수 있는지, 멀티클라우드 아키텍처의 사용례를 제대로 지원할 수 있는 기술의 역량을 살펴본다. 물론 기술의 배치에 대해서도 검증해야 하며, 각각을 가장 작은 기능으로 쪼개서 처음 멀티클라우드를 구축할 때의 핵심 요구사항과 비교해 본다. 필자는 여기서 멀티클라우드 자체는 훌륭한 아키텍처 선택이라는 것을 전제로 한다.

다음 단계로 의존성을 평가한다. 이들 기술 구성요소가 동작하려면 특정 기술이 필요하다. 다시 데이터베이스를 예로 들어보자. 만약 단일 퍼블릭 클라우드에서만 운영할 수 있는 클라우드 네이티브 데이터베이스를 선택한다면, 어떤 퍼블릭 클라우드를 선택해야 하는지는 바로 알 수 있다. 그렇다면 해당 퍼블릭 클라우드를 멀티클라우드에 사용하게 될 기능으로 해부한다. 이때 핵심 요구사항과 관련성이 있는 구성요소에만 집중하는 것이 좋다.

만약 크로스 클라우드 보안을 이용할 계획이라면, 네이티브 보안은 평가할 필요가 없다. 계획된 멀티클라우드 아키텍처의 일부가 될 모든 후보 기술에 관련된 모든 의존성을 이런 식으로 평가한다. 물론 비용도 평가해야 한다. 서비스 가격은 물론, 운영 자원, 서비스 업체의 사업, 기타 부차적인 요소까지 고려해야 한다.

모든 구성요소를 이렇게 평가한 다음, 덜 최적화된 기술을 버린다. 이때 아키텍처의 핵심 목적을 잊지 말아야 한다. 이 모든 기술의 집합으로 최적이라는 것이 검증된 하나의 아키텍처를 사용해 해결해야 하는 문제는 무엇인가? 

밑에서부터 하나씩 쌓아 올리는 아키텍처를 생각한다면, 아키텍처 해부가 무엇인지 거의 근접하게 파악한 것이다. 본질적으로, 아키텍처 해부는 각각의 구성요소나 기술, 모든 의존성, 모든 직간접 비용의 당위성을 증명하는 것이다. 

필자는 이 접근법을 필자의 거의 모든 아키텍처 프로젝트에 적용한다. 더 어렵고 시간이 많이 들며, 좋아하는 기술을 그냥 사용하는 것만큼 즐겁지는 않다. 하지만 이 과정을 거의 끝내면, 모든 플랫폼과 구성요소, 서비스, 자원을 더 작은 구성요소까지 평가했으며, 모든 것이 최적임을 입증했다는 것을 자신하게 된다. 게다가 모든 비용과 위험성, 의존성도 고려했기 때문에, 최적의 아키텍처라는 것을 거의 완벽하게 알 수 있다.

아키텍처 분해가 힘들지 않은 일이라고 말할 수 있으면 좋겠지만, 세 배 정도의 노력이 든다. 하지만 덜 최적화된 아키텍처는 과도하게 복잡하고 비용도 많이 든다는 점에서 올바른 솔루션을 어떻게 확보할 것인지 좀 더 신중하게 생각해야 할 시점이다. 기업이 멀티클라우드를 적극 도입하는 지금, 클라우드 아키텍트라면 올바른 멀티클라우드를 구현해야 한다. 그렇지 않으면, 멀티클라우드는 크게 퇴보할 수도 있다. editor@itworld.co.kr

회사명 : 한국IDG | 제호: ITWorld | 주소 : 서울시 중구 세종대로 23, 4층 우)04512
| 등록번호 : 서울 아00743 등록발행일자 : 2009년 01월 19일

발행인 : 박형미 | 편집인 : 박재곤 | 청소년보호책임자 : 한정규
| 사업자 등록번호 : 214-87-22467 Tel : 02-558-6950

Copyright © 2024 International Data Group. All rights reserved.