본문 바로가기
컴퓨터과학

클라우드 컴퓨팅 개론

by 라임_Lime 2024. 1. 21.

출처: 픽사베이

 

  클라우드 컴퓨팅은 영어로 CLOUD COMPUTING이다. 이때 사용되는 클라우드(CLOUD)라는 단어는 사전적으로 구름을 의미한다. 기존 컴퓨터 환경에서 인터넷을 표현할 때 구름 모양으로 표현하였던 것에서 유래되었다고 알려져 있다. 형태와 성질을 쉽게 바꿀 수 있는 구름의 의미와 컴퓨터의 다양한 기능의 의미가 결합한 컴퓨팅 개념이다. IT에서 클라우드라는 개념은 IT 관련 기능들이 네트워크상에서 서비스 형태로 제공되는 컴퓨팅 사용 기술을 의미하고 있다. 이때 IT 관련 기능이란 다양한 기술을 의미하는데, 사용자가 가장 밀접하게 사용하는 애플리케이션 프로그램뿐만 아니라 서버, 스토리지, 네트워크, 라이브러리 등 다양한 하드웨어, 소프트웨어를 의미한다. 클라우드 서비스가 주목받고 있는 이유는 모든 사용자가 컴퓨팅 환경을 직접 구축할 필요할 필요가 없이 클라우드 서비스 제공자로부터 제공받아 시공간의 제약 없이 IT 자원을 사용할 수 있기 때문이다. 
  
  클라우드 컴퓨팅의 개요로 조금 더 살펴보자. 앞서 살펴본 인공지능 등 컴퓨터과학의 주요 분야들이 오래전부터 개념이 태동하였던 것처럼, 클라우드 컴퓨팅 또한 1860년대 초반부터 개념이 등장하였고, 실질적으로 서비스는 2000년대부터 구체화하여 시작되었다. 1996년 컴팩 컴퓨터사의 전략보고서인 'Internet Solution Division'에서 처음으로 클라우드 컴퓨팅이라는 용어가 등장하였고, 그 이후부터 서버에서 사용되고 있지 않은 '유휴 자원 통한 효율성 향상을 위해 연구되었던 가상화 기술들이 원격으로 프로비저닝되는 서비스가 시험적으로 등장하였다. 그 후에는 우리가 잘 알고 있는 아마존사에서 2002년 아마존 웹 서비스인 AWS를 상용화하였지만, 실질적으로 2010년대에 이르러서야 각 기업에 의해 활발하게 사용되게 되었다. 

  클라우드 컴퓨팅에 대한 정의 중 가장 잘 알려진 것은 미국 국립 표준기술연구소에서 제시한 정의이다. 미국 국립 표준기술연구소는 2011년 "클라우드 컴퓨팅은 IT 리소스(서버, 저장장치, 애플리케이션, 네트워크 등)에 언제 어디서나 필요에 따라 편리하게 네트워크를 통해 접근하는 기능을 제공하는 모델이다. IT 리소스는 최소한의 관리로 신속하게 프로비저닝되고 배포될 수 있다. 클라우드 모델은 5가지의 기본 특성과 3가지의 서비스 모델, 4가지의 배포 모델로 이루어진다"라고 클라우드 컴퓨팅을 정의하였다. 한국은 '클라우드컴퓨팅 발전 및 이용자 보호에 관한 법률'에서 "클라우드 컴퓨팅이란 집적, 공유된 정보통신기기, 정보통신설비, 소프트웨어 등 정보통신자원을 이용자의 요구나 수요 변화에 따라 정보통신망을 통해 신축적으로 이용할 수 있도록 하는 정보처리체계"라고 정의하고 있다. 결국 클라우드 컴퓨팅의 핵심은 인터넷상에 존재하는 클라우드 사업자로부터 IT 리소스가 제공되는 컴퓨팅 기술이라는 것이다. 

  클라우드 컴퓨팅의 등장 배경을 보기 위해서는 컴퓨팅 기술의 발전 과정을 살펴보아야 한다. 컴퓨팅 기술은 처음 메인프레임으로부터, PC, 클라이언트 서버, 인터넷, 웹 서비스, 그리드 컴퓨팅, 유틸리티 컴퓨팅을 거쳐 클라우드 컴퓨팅으로 발전했다. 생소한 개념인 유틸리티 컴퓨팅이란 IT 리소스를 포장하여 계량식으로 서비스하는 것을 의미하며, 이를 기반으로 전 세계에 구축되어 있는 데이터 센터의 IT 리소스를 필요할 때 원하는 만큼 사용할 수 있는 클라우드 컴퓨팅이 등장하게 되었다. 그 후 클라우드 컴퓨팅 기술이 대중화되게 된 배경 요인은 ① 서버의 유휴 리소스 활용을 통한 효율성 향상 기술에 대한 요구가 높아지게 된 점 ② 네트워크와 모바일 환경의 대중화로 네트워크 구축 비용이 적어져서 개별 서비스에 IT 리소스를 투입하는 방식보다 비용을 대포 축소하는 규모의 경제가 가능해져 작업을 더 낮은 비용으로 수행할 수 있게 된 점 ③ 개인 및 기업 사용자 모두에게 클라우드 컴퓨팅에 적합한 환경이 조성된 점을 제시할 수 있다. 

그다음으로는 온프레미스와 클라우드에 대해 알아본다. 온프레미스 시스템이란 기존 IT 기업에서 서비스 자동화를 위해 인프라 구축에 사용되었던 방식으로, 기업이 IT시스템 운용에 필요한 하드웨어와 소프트웨어 설비 모두를 자체적으로 보유하고 운용하는 방식을 의미한다. 온프레미스 시스템 구축 단계는 요구 기능 수집, 설계, 조달, 구축, 운영으로 나누어 볼 수 있다. 온프레미스 시스템의 경우 사용자의 최대 사용 요구량에 맞춰 인프라를 구축하기 때문에 투자 비용이 증가할 수밖에 없다. 구축 후 변경이 어렵기 때문이다. 반면 클라우드 시스템을 사용하는 경우 기업이 비용을 지불하고 IT 리소스를 확장하거나 축소할 수 있기 때문에 비용 측면에서 벗어날 수 있다. 또한 시스템을 클라우드 서비스 제공자가 직접 운용하기 떄문에 시설 관리비나, 인건비, 교육비 등을 절감할 수 있다. 다만 온프레미스 시스템과 클라우드 시스템은 서로 배척되는 관계가 아닌 상호 보완적인 관계이다.

다음으로는 클라우드 컴퓨팅 서비스 모델에 대해 알아본다. 먼저 하드웨어 리소스를 제공하는 IaaS (Infrastructure as a Service)가 있다. 그 외에도 OS와 소프트웨어 개발 라이브러리, 런타임, 프레임워크 등 실행환경과 개발 환경을 제공하는 서비스인 PaaS(Platform as a Service)와 하드웨어와 OS뿐만 아니라 응용 소프트웨어까지 제공하는 서비스인 SaaS (Software as a Service) 가 있다. 이를 배포하는 모델로는 퍼블릭 클라우드, 프라이빗 클라우드, 하이브리드 클라우드, 커뮤니티 클라우드도 있다.