어느덧 시대는 흘러 흘러 클라우드 호스팅의 시대로 까지 오게 되었다. 게임세상이 무료 홈페이지의 시대에 이어 클라우드 호스팅의 시대로 까지 온 시간을 돌이켜보면 13년이라는 시간이 흘렀다. 게임세상의 역사는 트래픽과 비용과의 싸움이었다.
게임세상이 클라우드 호스팅으로의 이전을 하게 된 계기는 다름이 아닌 바로 비용이 문제 때문이다. 이용자의 감소로 인해 서버 호스팅의 자원은 남게 되었고 이렇게 남는 서버의 자원은 사용할 곳을 찾지 못한 채 낭비되는 서버를 유지하게 되었다.
이렇게 낭비되는 서버를 줄이는 방법은 저사양의 서버를 재구매해야 하지만 이 역시 쉽지 않은 결정이 되게 된다. 저사양의 서버를 구매하기 위해서는 고스란히 비용이 추가되고 기존에 사용되던 서버는 판매를 해야 하지만 개인이 운영하는 서버를 재구매하고 재판매하기는 현실적으로 쉽지 않은 일이 된다.
그래서 찾게 된 것이 바로 클라우드 호스팅 서비스이다. 앞서 이야기한 데로 클라우드 호스팅 서비스의 가장 큰 장점은 바로 서버의 리소스를 위해 별도의 하드웨어를 구매할 필요 없이 원클릭만으로 확장 혹은 축소를 할 수 있다는 점이다. 이를 쉽게 풀어서 이야기해보면 초기에는 1 CPU 1G RAM로 서버를 운영하다가 사용자가 증가하여 2 CPU 2G RAM으로 확장을 할 필요가 있다면 물리적인 서버를 구매할 필요 없이 원클릭만으로 별도의 서버 설정 변경 없이 바로 확장이 가능하다는 점이다. 당연한 이야기지만 확장을 할 때는 비용이 늘어나고 축소를 할 때는 비용이 줄어들게 된다.
또 하나의 큰 장점은 바로 글로벌 서비스를 손쉽게 할 수 있다는 점이다. 만일 북미 사용자를 대상으로 웹서비스를 하나 오픈한다고 가정해보자. 서버 호스팅의 시대라면 북미의 IDC 센터 중 하나를 접촉하여 별도의 서버 호스팅을 받아야 하지만 클라우드 호스팅의 경우는 서버가 존재하는 위치를 북미로 설정하는 옵션을 변경하는 것 만으로 내가 제공하는 웹서비스가 구동되는 웹서버가 북미의 IDC 센터에 존재할 수 있게 해 줄 수 있다는 점이다.
위의 그림에서 보이는 것처럼 클라우드 호스팅 서비스와 서버 호스팅 서비스의 개략적인 개념도를 보면 이해하기가 쉬울 것 같다. 클라우드 호스팅 서비스의 경우는 여러 대의 물리적 서버를 하나로 묶어 사용자의 필요에 따라 가상의 서버를 여러대로 나뉘고 이를 각각의 사용자에게 할당을 해주는 것이다.
이러한 가상의 서버는 실제 물리적 서버의 수 이상으로 나눌 수가 있으며 사용자의 입장에서는 실제 물리적 서버를 하나 이용하는 것과 다르지 않게 서비스를 이용할 수 있다. 서버 호스팅의 경우는 물리적 서버의 숫자만큼만 사용자에게 서버를 나누어 줄 수 있다는 점이 클라우드 호스팅과 서버 호스팅의 가장 큰 차이점이라고 할 수 있다.
클라우드 서비스의 경우 위 그림에서 보이는 것처럼 사용자의 설정에 따라 서버의 리소스를 자유롭게 변경할 수가 있게 되어 이는 사용자 입장에서는 자신의 서비스에 맞춘 서버의 리소스를 손쉽게 선택함으로 사용자에 최적화된 물리적 환경을 유지할 수 있고 결국 이는 비용의 절감으로 연결되게 되는 것이다.
클라우드 호스팅의 가장 큰 장점은 서버의 리소스를 쉽게 변경할 수 있다는 점이다.
클라우드 호스팅의 경우 글로벌하게 가장 인기 있는 서비스는 아마존에서 운영하는 AWS(Amazon Cloud Service)가 있으며 국내의 경우는 KT에서 운영하는 KT Cloud 서비스가 있다.
각 서비스의 특징들은 아래와 같다.
AWS (아마존 웹 서비스)
시간 단위로 과금. 지역별 요금이 다름. 기본 네트워크 트래픽 월 15G
글로벌 서비스 유리함. 다양한 클라우드 서비스 지원
일부 한글 서비스만 지원함 설정이 복잡함
http://aws.amazon.com/ko/
KT 클라우드
시간과 월정액으로 과금. 기본 네트워크 트래픽 월 100G
국내 특화된 서비스, 설정이 쉬움
글로벌 서비스가 어려움 다양한 클라우드 서비스 부족
https://ucloudbiz.kt.com/
게임세상의 경우도 초기에는 AWS를 이용하여 잠시 운영을 하다. KT cloud 서비스로 서비스를 이전했었다. KT cloud 서비스 도입 당시에는 가장 저 비용의 클라우드 서비스를 도입한 후 사용자의 트래픽과 신규 서비스의 도입을 통해 클라우드 호스팅 서버의 사양을 좀 더 높은 서비스로 변경해서 이용하고 있다.
AWS에서 KT cloud 서비스로 변경을 한 가장 큰 이유는 동일한 서버 사양을 놓고 보면 저사양에서는 AWS가 KT cloud 보다 약간 저렴하지만 고사양으로 올라갈수록 AWS 보다는 KT Cloud 서비스가 저렴하고 또한 한국어 지원 및 제공되는 기본적인 네트워크 트래픽이 KT cloud 가 조금 더 유리하기 때문이었다.
AWS 클라우드 서비스의 경우 상품의 종류가 워낙 다양하여 KT cloud와 정확하게 비교하기에는 어려움이 있지만 vCPU와 RAM 용량만을 통해 상대적으로 비교해보면 어느 정도는 비교가 가능하다고 생각된다. 위 정보가 100% 일치하지 않는 이유로는 KT cloud와 AWS 의 서버 적용에 대한 기준이 다르기 때문이다.
KT Cloud 서비스
필자가 알기로는 국내에서 최초로 일반 사용자에게 사용으로 클라우드 호스팅 서비스를 하는 회사는 KT 인 것으로 알고 있다. 필자의 경우도 2011년 게임세상 리뉴얼 즈음하여 KT cloud에서 무료 테스터를 모집했었고, 이때 무료 테스트로 클라우드 호스팅 서비스를 이용하다 정식 서비스 이후에 유료로 전환하여 이용했었던 것으로 기억한다.
앞서 이야기한 데로 KT cloud의 경우 AWS에 비해서는 제공되는 클라우드 호스팅의 종류가 다양하지 않지만, 게임세상처럼 단순히 웹 서버와 DB 서버만을 이용하여 홈페이지를 운영하는 경우에는 AWS처럼 다양한 클라우드 서비스가 필요치 않았기 때문에 KT cloud를 이용한 측면도 있다. 그럼 지금부터 본격적으로 KT cloud를 이용한 클라우드 호스팅 서비스를 가입해 보도록 하자.
클라우드 서비스를 이용한 단계는 아래와 같다.
Step 1. 클라우드 호스팅 회원가입
Step2. 결제 정보 입력
Step 3. 웹 서버 할당받기
Step 4. Port Forward세팅
Step5. 서버 접속하기
Step6. FTP를 이용하여 파일 업로드하기
서비스 자체를 설정하는 방법은 IDC 에서 일반적인 서버와 크게 다르지 않다
자세한 설치 방법은 링크 를 참고하기 바란다.
AWS(Amazon Web Services) 사용하기 (http://aws.amazon.com/ko/)
지금까지는 국내 cloud 호스팅 서비스의 KT Cloud의 이용방법에 대해 알아보았다면, 지금부터는 나름 global 한 기업에서 가장 많이 이용하고 있는 AWS(Amazon Web Services)에 대해 알아보도록 하자. 앞서 설명한 것처럼 AWS의 경우 국내 Cloud 서비스보다 역사도 오래되었고, 국내 서비스에 비해 좀 더 다양한 cloud 서비스들이 제공되고 있다.
가입 프로세스자체는 크게 어렵지 않으나 aws 는 클라우드 서버를 인스턴스라는 이름으로 불리고 인스턴스 자체를 띄우는 작업은 크게 어렵지가 않다. 다만 이렇게 설정된 인스턴스를 물리 서버 수준으로 관리하기 위해서는 시스템 엔지니어가 필요하게 된다.
필자의 경우는 시스템 엔지니어 수준까지 학습에 어려움을 느껴 가장 기초적인 인스턴스 설정에 아파치 PHP 와 MYSQL 을 설치하여 사용하고, 기타 세부적인 사항은 지인인 시스템 엔지니어를 통해 설정을 고도화 하였다. 추후 기회가 된다면 aws 의 설치부터 운영까지 자세한 메뉴얼을 한번 작성해 보도록 하겠다.\
자세한 AWS 가입 및 설정 방법은 링크를 참조해주기 바란다.
지금까지 웹 호스팅과 서버 호스팅 그리고 최근의 트랜드인 클라우드 호스팅에 대해 알아보았다. 사실 클라우드 호스팅이 웹호스팅이나 서버 호스팅에 비해 무조건 좋다고 하는 할수 없다. 자신이 만들고 운영하고 싶은 서비스의 상황에 따라 어떠한 서비스를 정할지는 결국은 그 서비스를 만든 서비스 기획자의 선택의 몫이 아닌가 생각 된다.