brunch

You can make anything
by writing

C.S.Lewis

클라우드에서 송환하는 것만이 비용 절감의 열쇠는 아니다

송환(repatriation), 즉 클라우드로 보냈던 작업을 온프레미스 또는 자체 관리 하드웨어로 되가져오는 행위다. 경기 침체기에는 송환의 이유가 명료하다. AWS, 애저 또는 기타 클라우드 호스팅 서비스를 사용하지 않고 자체 인프라를 구축하고 관리해서 비용을 절감한다는 것이다.


송환에 대한 관심 증가는 어떻게 보면 당연하다. 서비스에 쌓이는 데이터와 기업 내에서 관리해야 할 데이터의 기하급수적인 증가에 따라 기업용 클라우드 서비스의 수요 또한 급격하게 증가했고 아마존, 구글, 마이크로소프트, 기타 클라우드 제공업체들은 고객들의 씀씀이에 기대어 많은 수익을 거뒀다. 그러나 최근 경기 침체 및 예산 삭감으로 인해 고객들의 지갑이 닫히고 있다.


클라우드가 지나치게 비싸졌다는 느낌이 들 때 가장 자연스러운 반응은 “클라우드에 쌓아뒀던 데이터들을 다시 회사 내로 가져오겠다” 이다. 즉, 클라우드 서비스에 기대어 데이터 관리에 대한 외주를 맡겼던 기업들이 이제 자체 데이터 센터를 구축하고 데이터 관리에 드는 비용을 줄이겠다는 결정이다.   

 



클라우드는 왜 비쌀까?


지나고 보니 클라우드는 비쌌다. 클라우드를 더 잘 활용하기 위해 우리가 구축한 기술이 그 원인일 수 있다. 수많은 애드온 서비스가 있지만, 문제는 가장 기본적인 수준에서 발생한다. 클라우드 컴퓨팅에만 초점을 맞춰보자.

*프로그램의 기능을 보완하기 위해 추가하는 보조 프로그램


클라우드 컴퓨팅의 원조의 최초 가치 제안은 전체 운영체제를 패키징해서 다른 곳으로 보내 실행할 수 있다는 것이었다. 그러나 이 설정에서 운영 부분은 결코 유쾌하지 않았다. 유지보수는 다루기 힘든 괴물인데 관리 툴은 원시적이니 개발자들은 참여하지 않았고, 배포는 한없이 느렸다.


이후 도커 컨테이너가 등장했다. 컨테이너는 개별 서비스의 패키지와 배포 측면에서 유리했다. 개발자들은 손쉽게 컨테이너를 빌드할 수 있었고 시작 시간도 분이 아난 초 단위였다. 또한 구글의 쿠버네티스라는 작은 프로젝트 덕분에 컨테이너 애플리케이션 관리의 오케스트레이션이 가능해졌다.


그러나 이러한 좋은 환경을 구축하는 사이 사람들이 경시했던 부분은 비용이 발생하고 있다는 사실이다. 즉, 안정성을 명분으로 비용을 경시했다. 구글의 프로젝트인 쿠버네티스(Kubernetes)를 통해 컨테이너 애플리케이션 관리를 가능하게 했지만, 이로 인해 비용이 증가했다. 쿠버네티스에서 애플리케이션을 배포하는 가장 선호하는 방식은 인바운드 로드가 그것을 정당화하지 않을 때도 모든 애플리케이션을 적어도 세 번 복제하는 것이다. 이로 인해 서버는 24시간 내내 적어도 세 배로 작동하며, 전력과 자원을 소비한다. 이렇게 진행된 클라우드의 역사가 필연적으로 해당 서비스의 가격을 올려놓은 것이다.    




그렇다면, 송환 비용은 저렴할까?


송환은 클라우드 비용 지출을 통제하기 위해 모든 것을 직접 관리하는 물리적 공간으로 다시 가져오는 것이라는 생각에서 시작했다. 물론 이를 위해서는 공간, 하드웨어, 대역폭 등을 구매해야 하며, 운영팀의 사고방식을 소프트웨어와 서비스에서 하드웨어 관리로 전환해야 한다.(직접 데이터 센터와 해당 데이터를 처리하는 하드웨어에 프로세스에 대한 지식이 필요하기 때문에)


온프레미스(기업이 자체적으로 IT 인프라를 소유, 관리 및 운영하는 경우)로의 복귀는 큰 작업이고, 나중에 일이 틀어졌다고 해서 되돌리기도 어려운 결정이다. 또한 전환이 완료될 때까지는 비용 절감을 확인할 수 없다. (사실 전환 작업에 들어가는 자본 비용으로 인해 비용 절감 효과가 실현되기까지 오랜 시간이 걸릴 수 있다.




클라우드 비용 관리를 배워야 할 때


지금은 클라우드 비용을 관리하는 방법을 배워야 할 때다. 송환보다 훨씬 덜 극단적이고 덜 위험한 방법이 있다. 전체 송환을 하지 않더라도, 오픈소스 서버리스 웹어셈블리는 손쉽게 송환이 가능하다. 서버리스 함수는 개발 패턴으로서 큰 인기를 얻고 있으며, AWS는 매월 10조 개의 서버리스 함수를 실행한다고 밝혔다. 웹어셈블리는 고도로 보안된 격리된 런타임으로, 서버리스 함수를 가상화하는 데 적합하다. 웹어셈블리 함수는 밀리초 미만의 시간이 걸리며, 실행에 필요한 CPU와 메모리가 거의 없다. 이는 시간과 시스템 자원을 줄이고, 따라서 비용을 절약한다. 따라서, 리패트리에이션 대신 웹어셈블리 기반의 서버리스 함수로 개발 패턴을 전환하는 것이 비용 절감의 또 다른 방법이 될 수 있다.


섣불리 송환을 결정하기보다는 기업 내부의 휴먼 리소스 (SW와 HW 인력 수급 현황)와 클라우드 서비스의 대안 (웹 어셈블리 등)을 살펴본 후 적절한 의사 결정이 취해져야 할 것이다.





작성자: ITS 25기 문선경

작가의 이전글 AI칩 전쟁
브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari