IT/네트워크

[IT/네트워크] 클라우드 컴퓨팅이란?

59date 2024. 9. 6. 16:44

클라우드 컴퓨팅이란?

공유 구성이 가능한 컴퓨팅 리소스(네트워크, 서버, 스토리지, 애플리케이션 서비스)의 통합을 통해 어디서나 간편하게, 요청에 따라 네트워크를 통해 접근하는 것을 가능하게 하는 모델이다. 이는 최소한의 이용 절차 또는 서비스 공급자의 상호 작용을 통해, 신속히 할당되어 제공된다.

- NIST(미국 국립 표준 기술연구소)

 

 

조금 어려울 수 있으니 쉽게 설명하자면,

 

 클라우드 컴퓨팅이란: 우리가 필요할 때 언제 어디서든 인터넷을 통해 컴퓨터 자원이나 소프트웨어를 사용할 수 있게 해주는 서비스입니다.

 어떻게 작동하냐면: 클라우드는 우리가 직접 컴퓨터를 사거나 소프트웨어를 설치할 필요 없이, 인터넷을 통해 필요한 만큼 자원을 빌려서 사용할 수 있도록 해줍니다.

 장점: 클라우드를 사용하면 자원을 빠르게 얻을 수 있고, 관리나 유지보수의 걱정이 줄어듭니다.

 예를 들어: 구글 드라이브나 아마존 웹 서비스 같은 것들이 클라우드 서비스를 제공하는 사례입니다.

 

필요한 자원이나 소프트웨어를 인터넷으로 쉽게 얻고 관리할 수 있게 해주는 서비스.라고 할 수 있습니다.

 

 

더 쉽게 이해하기 위해 클라우드 컴퓨터를 그릇과 음식에 비유해 보겠습니다.

 

클라우드 사업자 = 그릇

- AWS, Azure, GCP 같은 클라우드 서비스 제공자는 각각의 '그릇'이라고 표현할 수 있습니다. 각 그릇은 다양한 서비스를 담을 수 있는 플랫폼을 의미합니다.

 

서비스 = 음식

- AI, IoT, 블록체인 등 당야 한 기술은 '음식'에 해당됩니다. 각 음식은 그릇에 담겨 사용자에게 제공됩니다.

 

클라우드 환경 = 식탁

- 여러 개의 그릇이 놓인 식탁은 클라우드 환경을 나타냅니다. 사용자는 이 식탁에서 여러 그릇의 음식을 자유롭게 선택하고 사용할 수 있습니다.

 

 

클라우드 컴퓨팅의 특징

클라우드 컴퓨팅의 특징에는 다섯 가지가 있습니다.

 

 1. 주문형 셀프서비스 : 사용자가 필요할 때 언제든지 리소스를 요청하고 사용할 수 있습니다.

  - 스타트업 혹은 개인이 새로운 웹 애플리케이션을 개발하고 있으며, 초기에는 소규모 서버가 필요하지만 사용자가 늘 아남에 따라 서버 용량을 증가시켜야 합니다. 개발자는 IT 부서의 도움 없이 클라우드에서 즉시 서버를 추가할 수 있어서 빠르게 대응할 수 있습니다.

 

 2. 광범위한 네트워크 접속 : 인터넷만 있으면 어디서든 접근 가능합니다.

 - 원격 근무를 하는 팀이 있을 때 팀원들은 사무실에 있지 않더라도 인터넷만 있으면 클라우드에 저장된 파일과 애플리케이션에 쉽게 접근할 수 있어, 언제 어디서나 협업이 가능합니다.

 

 3. 리소스의 공유 : 여러 사용자가 동일한 리소스를 공유하며 비용 효율성을 높입니다.

 - 대학교의 여러 학과가 클라우드 기반 데이터베이스를 공유하고 있습니다. 각 학과는 필요한 데이터와 리소스를 함께 활용함으로써 비용을 절감하고, 연구와 프로젝트에 필요한 자료를 쉽게 접근할 수 있습니다.

 

 4. 신속한 확장성 : 필요에 따라 리소스를 쉽게 늘리거나 줄일 수 있습니다.

 - 대학교 수강신청 혹은 티켓팅을 진행하는 상황에서 사람들이 몰릴 때 트래픽이 급증하게 됩니다. 클라우드를 이용하면 필요할 때 서버 용량을 빠르게 늘려 사용자들이 원활하게 이용할 수 있도록 지원합니다.

 

 5. 측정 가능한 서비스 : 사용량에 따라 요금이 부과되어 비용 관리가 용이합니다.

 - 기업이 클라우드 서비스를 사용하여 다양한 애플리케이션을 운영하고 있습니다. 사용자가 각 애플리케이션의 사용량을 모니터링하고, 실제 사용한 만큼만 요금을 지불함으로써 비용을 효율적으로 관리할 수 있습니다.

 

이렇게 클라우드 컴퓨팅은 효율적이고 유연한 IT 설루션을 제공해 줍니다.

 

 

클라우드 서비스 모델

클라우드 서비스 모델에는 주로 Saas, Paas, Iaas 세 가지로 분류됩니다. 하나하나 알아봅시다.

 

SaaS(Software as a Service) - 소프트웨어

  1. 기능 제공: 업무에서 사용하는 소프트웨어의 기능을 필요에 따라 서비스 형태로 제공합니다.
  2. 멀티 테런트 방식: 하나의 서버를 여러 기업이 공유하는 멀티 테런트 구조로 운영되어, 비용 효율성을 높입니다.
  3. 사용 편의성: 사용자 계정을 생성하면 즉시 서비스를 이용할 수 있어, 설치나 복잡한 설정이 필요 없습니다.
  4. 접속 기기 다양성: 스마트폰, 태블릿, PC 등 다양한 기기로 언제 어디서나 접근할 수 있습니다.
  5. 자동 업데이트: 소프트웨어 업데이트가 자동으로 이루어져, 사용자는 항상 최선 버전을 사용할 수 있습니다.
  6. 비용 절감: 초기 투자 비용이 낮고, 구독 모델로 월별 또는 연변 요금을 지불하여 운영 비용을 관리할 수 있습니다.

대표적인 SaaS 소프트웨어는 Gmail, Workspace, Slack, Zoom 등이 있습니다.

 

 

PaaS((Platform as a Service) - 플랫폼

  1. 애플리케이션 개발 및 실행 환경 제공: PaaS는 기업이 애플리케이션을 개발하고 배포하는 데 필요한 플랫폼을 미리 제공합니다. 이는 시간과 노력을 절약할 수 있게 합니다.
  2. 미리 구성된 환경: 데이터베이스, 서버, 미들웨어 등 필요한 구성 요소가 미리 설정되어 있어 개발자는 복잡한 환경 설정에 신경 쓰지 않아도 됩니다.
  3. 자사 애플리케이션 가동 가능: 기업이 자체적으로 개발한 애플리케이션을 PaaS 환경에서 쉽게 배포하고 운영할 수 있습니다. 이는 신속한 개발 및 배포 주기를 가능하게 합니다.
  4. 상세 설정의 제한: 서버 및 미들웨어의 세부 설정은 불가능하지만, 이를 통해 복잡한 관리 부담을 덜고, 안정적인 운영 환경을 유지할 수 있습니다.
  5. 자동 스케일링: PaaS 솔루션은 사용량에 따라 자동으로 리소스를 조정할 수 있어, 트래픽 변화에 유연하게 대응할 수 있습니다.
  6. 지원되는 기술 스택: 다양한 프로그래밍 언어와 프레임워크를 지원하여, 개발자가 선호하는 도구를 사용하여 개발할 수 있습니다.
  7. 쿠버네티스: PaaS 솔루션 중 일부는 쿠버네티스를 기반으로 하여 컨테이너화된 애플리케이션을 관리하고 배포하는 기능을 제공합니다. - 여기서 쿠버네티스란? 컨테이너화된 애플리케이션의 배포, 관리 및 확장을 자동화하는 오픈 소스  플랫폼입니다.

대표적인 Paas 플랫폼은 AWS Elastic Beanstalk, Microsoft Azure App Service, Heroku, Red Hat OpenShift 등이 존재합니다.

추가적으로 Paas 플랫폼에서 지원하는 프로그래밍 언어는 대표적으로 Java, Python, PHP 등이 있습니다.

 

Iaas(Infrastructure as a Service) - 인프라

  1. 컴퓨팅 리소스 제공: CPU, 메모리, 스토리지, 네트워크 등 하드웨어 자원을 가상화하여 제공합니다. 사용자는 필요한 만큼의 리소스를 선택할 수 있습니다.
  2. 유연한 스케일링: 필요에 따라 리소스를 자유롭게 확장(스케일 업)하거나 축소(스케일 다운)할 수 있습니다.
  3. 종량제 요금제: 사용량에 따라 요금을 지불하는 종량제 모델이 일반적입니다. 또는 월 정액제로 고장 요금을 지불할 수도 있습니다. 이를 통해 비용을 효율적으로 관리할 수 있습니다.
  4. 가상화 기술 활용: 하드웨어 자원을 소프트웨어적으로 나누어 여러 사용자에게 제공함으로써 자원 활용도를 극대화합니다. 가상 서버, 네트워크, 저장소를 통해 사용자 맞춤형 환경을 제공합니다.
  5. 빠른 배포와 관리: 물리적인 하드웨어를 구매하고 설치하는 대신, 클라우드 환경에서 신속하게 리소스를 배포하고 관리할 수 있습니다. 이는 개발 및 운영의 효율성을 높이는 데 기여합니다.

대표적인 IaaS 인프라 플랫폼은 Amazon Web Services (AWS) EC2, Microsoft Azure, Google Cloud Platform(GCP) Compute Engine, IBM Cloud 등이 있습니다.

 

요약

위에 설명은 너무 복잡하고 길기에 각각의 서비스 모델을 간단하게 요약하자면

 

SaaS: 인터넷을 통해 소프트웨어 애플리케이션을 제공하며, 사용자는 설치나 유지관리 없이 즉시 사용할 수 있는 모델입니다.

PaaS: 애플리케이션 개발과 배포를 위한 플랫폼을 제공하며, 개발자는 인프라 관리 없이 코드 작성에 집중할 수 있습니다.

IaaS: 가상화된 컴퓨팅 리소스를 인터넷을 통해 제공하며, 사용자는 필요한 만큼의 하드웨어 자원을 유연하게 관리할 수 있습니다.

 

 

 

마지막으로 클라우드 이용 모델을 알아보겠습니다.

클라우드 이용 모델

클라우드 이용 모델에는 크게 네 가지가 있습니다.

퍼블릭 클라우드, 프라이빗 클라우드, 커뮤니티 클라우드, 하이브리드 클라우드 

 

하나하나 알아보겠습니다.

1. 퍼블릭 클라우드 (Public Cloud)

  • 클라우드 사업자가 시스템을 구축하여 인터넷을 통해 불특정 다수에게 서비스를 제공하는 형태입니다. 데이터 센터를 직접 보유하지 않아 초기 투자 부담이 적고, 사용자는 필요에 따라 자원을 쉽게 확장하거나 축소할 수 있어 비용 효율적입니다.
  • 사용 상황: 비용 효율성을 중시하는 기업이나 스타트업에서 유용합니다. 예를 들어, 웹사이트 호스팅, 애플리케이션 개발 및 테스트에 많이 활용됩니다.

2. 프라이빗 클라우드(Private Cloud)

  • 클라우드 서비스 제공자가 기업의 전용 데이터 센터 환경을 구축하여 제공하는 서비스입니다. 보안이 용이하고, 기업의 필요에 맞춰 독자적인 기능이나 서비스를 추가하기가 쉽습니다.
  • 사용 상황: 민감한 데이터나 규제가 많은 사업(금융, 의료)에서 많이 사용됩니다. 데이터 보안과 규정 준수가 중요한 경우에 적합합니다.

3. 커뮤니티 클라우드(Community Cloud)

  • 비슷한 요구 사항이나 목표를 가진 여러 조직이 공동으로 사용하는 클라우드입니다. 특정 산업이나 커뮤니티에 맞춰 설계됩니다.
  • 사용 상황: 여러 기업이 같은 규제나 요구 사항을 갖고 있을 때 유용합니다. 예를 들어, 연구 기관이나 정부 기관 간의 협업에 적합합니다.

4. 하이브리드 클라우드(Hybrid Cloud)

  • 퍼블릭과 프라이빗 클라우드를 결합한 모델로 민감한 데이터는 프라이빗 클라우드에서 관리하고, 필요에 따라 퍼블릭 클라우드의 자원을 활용할 수 있습니다.
  • 사용 상황: 유연성이 필요한 기업에서 많이 사용됩니다. 예를 들어, 일상적인 작업은 퍼블릭 클라우드를 이용하고, 중요한 데이터는 프라이빗 클라우드에서 관리하는 방식입니다.

 


 

잘못된 내용 혹은 오타가 있거나 더 좋은 내용 피드백은 언제나 환영입니다 :)