콘텐츠로 건너뛰기

클라우드와 코로케이션(서버호스팅): 초기 스타트업 비즈니스에서 당신의 선택은?

웹 서비스를 위해 서버를 구성하는 데 있어 다양한 방법이 존재 합니다. 그 중에서 클라우드와 코로케이션(서버호스팅)은 서버를 구성하는 데 가장 많이 선택하는 옵션으로 초기 스타트업에서 어느 것이 더 효과적인지 고민하는 경우가 많이 존재합니다.

어느 정도 규모가 되는 기업은 자체적으로 서버를 운영할 수 있는 조직과 역량을 갖추고 있어 워크로드와 보안 요구사항에 따라 클라우드와 코로케이션 중 적합한 방식을 유연하게 선택할 수 있습니다. 하지만 초기 자본이 부족한 스타트업은 비용적인 측면이 초기 생존과 직결되기 때문에 비용적인 측면에서 고민을 하는 것이 사실입니다.

이 글에서는 초기 스타트업의 특성을 반영하여 어떤 선택이 더 적합한지 알아보도록 하겠습니다.

클라우드란?

클라우드는 인터넷을 통해 컴퓨팅 자원(서버, 스토리지, 네트워크 등)을 제공하는 서비스입니다. 대표적인 클라우드 서비스 제공업체로는 AWS, Microsoft Azure, Google Cloud, Naver Cloud 등이 있습니다.

클라우드의 장점

  • 유연성: 필요에 따라 자원을 확장하거나 축소할 수 있습니다.
  • 비용 효율성: 초기 투자 비용이 없으며, 사용한 만큼만 요금을 지불합니다.
  • 신속한 배포: 인프라를 빠르게 설정하고 서비스를 시작할 수 있습니다.
  • 관리 간소화: 하드웨어 유지보수가 필요 없으며, 서비스 제공자가 이를 책임집니다.

클라우드의 단점

  • 예상치 못한 비용 증가: 사용량이 증가하면 비용도 예상보다 크게 늘어날 수 있습니다.
  • 종속성: 특정 클라우드 제공업체에 의존하게 될 가능성이 있습니다.
  • 보안 우려: 데이터가 제3자 서버에 저장되므로 보안 문제를 신중히 검토해야 합니다.

코로케이션이란?

코로케이션은 기업이 자체 서버를 구매하여 데이터센터의 공간을 임대하고, 전력, 냉각, 네트워크와 같은 인프라 서비스를 제공받는 방식입니다.

코로케이션의 장점

  • 높은 제어권: 하드웨어 및 소프트웨어를 완전히 제어할 수 있습니다.
  • 보안 강화: 데이터를 물리적으로 보호할 수 있는 독립적인 환경을 제공합니다.
  • 예측 가능한 비용: 장기적인 관점에서 클라우드보다 비용이 저렴할 수 있습니다.
  • 고성능: 특정 워크로드에 맞게 하드웨어를 최적화할 수 있습니다.

코로케이션의 단점

  • 초기 투자 비용: 서버 장비 구매 및 설치 비용이 높습니다.
  • 복잡한 관리: 하드웨어 유지보수 및 업그레이드가 필요합니다.
  • 확장성의 한계: 급격한 확장 요구를 처리하기 어려울 수 있습니다.

클라우드와 코로케이션의 주요 차이점

특징클라우드코로케이션
비용 구조사용량 기반 과금초기 투자 비용 및 월 운영비
확장성무제한 확장 가능제한적, 하드웨어 추가 필요
제어권제한적, 서비스 제공 업체에 의존S/W 및 H/W 모두 제어 가능
보안공유 인프라 기반, 보안 우려 있음물리적 제어 가능, 보안 강화
유지보수서비스 제공업체가 관리자체 유지보수 필요
가용성글로벌 네트워크 지원데이터센터의 물리적 위치에 의존

초기 스타트업에서 고려사항

클라우드와 코로케이션 선택에서 가장 중요한 요소는 서버 스펙 및 인스턴스 개수 입니다. 초기 사용자가 많지 않다고 가정하고, 소규모로 운영 가능한 최소 서버 스펙을 vCPU 1코어 및 2GB 램으로 가정해보겠습니다.

서버 비용

클라우드와 코로케이션을 모두 제공하는 가비아를 기준으로 비교해보겠습니다.

가비아 클라우드 비용
가비아 클라우드 비용 ( 1vCore / 2GB )
가비아 클라우드 비용
가비아 클라우드 비용 ( 4vCore / 8GB )

1vCore 및 2GB의 경우 월 30,000원, 4vCore 및 8GB의 경우 월 140,500원의 비용이 발생하고 있습니다.

가비아 1분 서버 설치
가비아 1분 설치 서버

가비아에서 제공하는 1분 설치 서버를 사용한다면 4Core에 8GB의 경우 월 90,000원의 비용이 발생하고 있습니다.

3 티어 구성 시 비용

만약 웹 서비스를 3티어(Frontend 서버, Backend 서버, Database 서버)로 구성한다고 가정하면 동일하게 둘다 동일하게 월 9만원의 비용이 발생합니다. 서비스 운영 시점에 다다르면 서버를 추가/삭제하기보다는 인스턴스를 지속적으로 유지하는 경우가 많아 월 요금이 고정되는 경향이 있기에 월 요금으로 계산하였습니다.

  • v1Core 2GB 3개 인스턴스 필요 : 30,000 * 3 = 90,000
  • 4Core 8GB 서버 필요 : 90,000

이때 비용은 동일하나 1분 서버 설치가 더 가용성이 좋습니다. 그리고 만약 1분 서버 설치가 아닌 코로케이션 서버를 구매/임대하는 경우는 비용이 더 증가하나 더 많은 가용성을 확보할 수 있습니다.

코로케이션을 사용하는 경우

보통 코로케이션을 사용하는 경우가 더 적은 비용으로 더 많은 가용성을 확보할 수 있습니다. 다만, 코로케이션의 경우 업체에 따라서 약정 기간이 존재하는 경우가 있어 사용 기간에 대한 부담감이 존재할 수 있습니다. 또한, 동시 접속자 수가 갑작스럽게 증가하는 경우 대응하기 쉽지 않기 때문에 동시 접속자 수가 일정 수준으로 유지되는 경우에 유리합니다.

저는 웹 서비스 개발자들이 다 외부에서 개발하고 있기 때문에 개발 서버가 내부가 아닌 외부에 존재해야 합니다. 또한 데모 시스템을 제공하고 있기 때문에 데모 서버도 항시 운영되어야 합니다. 이 경우 실제 사용자 수는 많지 않고, 서버 인스턴스가 더 많이 필요하기 때문에 개발 서버와 데모 서버는 코로케이션 서버 한대로 NGINX와 Let’s Encrypt SSL 구성하여 내부에 FE 서비스 4개, BE 서비스 2개, MySQL을 설치하여 운영하고 필요에 따라서 웹 서비스를 올리고 내리고 하고 있습니다.

이때 발생하는 월 비용은 클라우드 비용 대비 50% 이상 절감됩니다.

하이브리드 방식

저는 운영 서버는 클라우드 기반으로 그외 나머지 서버는 모두 코로케이션 서버로 운영하고 있습니다.

운영 서버의 경우는 특정 이벤트에 따라서 2~3일 정도 동시 접속자 수가 평시 대비 100배 이상 증가하기 때문에, 그 기간만 로드밸런싱을 사용하여 서버를 추가했다가 제거합니다.

그리고 개발하고 서비스 하는 과정에 있어서 검증 서버 및 스테이징 서버 구성하는 데 있어 클라우드 서비스를 이용하고 있습니다.

  • 로컬 개발 : 각자 로컬에 개발
  • 개발 서버 : 코로케이션으로 운영 ( 기본적인 단위 테스트 진행 )
  • 검증 서버 : 개발 항목에 대한 검증 시 클라우드에서 인스턴스 생성 후 진행 ( 보통 2주 )
  • Staging 서버 : 검증 완료 후 실제 운영 서버와 동일한 형태의 클라우드 인스턴스 생성 후 진행 ( 2~3일 )
  • 운영 서버 : 클라우드에서 최소 스펙으로 로드밸런싱

마치며

클라우드가 관리 및 운영이 쉽고 편하기 때문에 클라우드를 선택하는 경우가 많이 있습니다. 전부다 클라우드를 사용하는 경우 비용이 많이 발생할 수 있기에 개발하는 형태 및 운영 형태에 따라서 클라우드가 아닌 코로케이션 서버를 직접 운영하는 것도 또 다른 대안이 될 수 있습니다.

합리적인 웹 서비스 운영이 되었으면 좋겠습니다.

참고 자료 및 관련 사이트

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

목차 보기