Cloud Computing - AWS (1) Basic

Alex of the year 2020 & 2021·2020년 9월 18일

AWS, Cloud

목록 보기
1/5
post-thumbnail

Cloud Computing

서로 다른 물리적인 위치에 존재하는 컴퓨터들의 리소스를 가상화 기술로 통합해 제공하는 기술
IT 리소스를 인터넷을 통해 On-Demand로 제공하고 사용한 만큼만 비용을 지불하는 것
기존의 On-Premise(온프라미스) 방식과 반대되는 개념

X: 물리적 데이터 센터와 서버를 구입, 소유 및 유지 관리
O: Amazon Web Services(AWS)와 같은 클라우드 공급자로부터 필요에 따라 컴퓨팅 파워, 스토리지, 데이터베이스와 같은 기술 서비스에 액세스

개발자와 IT 부서가 가장 중요한 문제에 집중하고
구매, 유지 관리 및 용량 계획과 같은 획일적인 작업은 피할 수 있는 역량을 제공

For Whom

모든 유형, 규모 및 산업의 조직이 사용

For What

데이터 백업, 재해 복구, 이메일, 가상 데스크톱, 소프트웨어 개발 및 테스트, 빅 데이터 분석, 고객 대상 웹 애플리케이션 등 다양한 사용 사례
ex.
의료 회사: 클라우드를 사용하여 환자를 위한 좀 더 개인화된 치료법을 개발
금융 서비스 회사: 클라우드를 사용하여 실시간 부정 행위 탐지 및 예방
비디오 게임 제작자: 클라우드를 사용하여 전 세계 수백만 명의 플레이어에게 온라인 게임을 제공

Pros

🍎 민첩성

  • 컴퓨팅, 스토리지 및 데이터베이스와 같은 인프라 서비스부터 사물 인터넷, 기계 학습, 데이터 레이크 및 분석 등에 이르기까지 필요에 따라 리소스를 빠르게 구동
  • 단 몇 분 만에 기술 서비스를 배포할 수 있으며 이전보다 몇 백배나 더 빠르게 아이디어 구현 가능.
  • 자유로운 실험, 새로운 아이디어를 테스트 --> 고객 경험 차별화, 비즈니스 혁신

🍎 탄력성

  • 사전에 리소스 오버 프로비저닝 필요 X (실제로 필요한 만큼만 리소스를 프로비저닝)
  • 비즈니스 요구가 변화함에 따라 리소스를 확장 or 축소하여 용량을 즉시 늘리거나 줄일 수 있음

🍎 비용 절감

  • 자본 비용(데이터 센터, 물리적 서버 등)을 가변 비용으로 전환
  • 사용한 만큼만 IT 비용을 지불
  • 규모의 경제로 인해 직접 운영할 때보다 가변 비용이 훨씬 더 저렴

🍎 빠른 배포 및 UX 향상

  • 몇 분 만에 새로운 지리적 리전으로 확장 및 전 세계에 배포 가능
    ex. AWS는 전 세계에 인프라 산재 --> 클릭 몇 번으로 여러 물리적 위치에 애플리케이션을 배포
  • 애플리케이션을 최종 사용자와 근접하게 배치 시 지연 시간 단축 및 사용자 경험 향상

Types - IaaS, PaaS, SaaS

클라우드 컴퓨팅의 인기가 올라가면서 사용자의 각자 다른 필요를 충족시키기 위한 몇 가지 모델 및 배포 전략이 생겨남
클라우드 서비스와 배포 방법은 유형별로 각기 다른 수준의 제어, 유연성 및 관리를 제공
--> 서비스로서의 인프라(IaaS), 서비스로서의 플랫폼(PaaS), 서비스로서의 소프트웨어(SaaS) 각각의 차이를 이해하여 어떤 배포 전략을 사용할 수 있는지 파악하는 것이 중요

IaaS

  • 서비스로서의 인프라 (개발사에 제공되는 물리적 자원을 가상화)
  • 클라우드 IT의 기본 빌딩 블록을 포함
  • 일반적으로 네트워킹 기능, 컴퓨터(가상 또는 전용 하드웨어) 및 데이터 스토리지 공간을 제공
  • IT 리소스에 대해 가장 높은 수준의 유연성과 관리 제어를 제공
  • 가상 호스팅(VM Hosting)과 비슷하나 가상 호스팅은 사용자가 직접 장비를 사서 그 장비 안에서 자원을 할당하고 구성해야 하지만, IaaS는 기업이 준비해놓은 환경에서 사용자가 선택할 수 있다는 점에서 차이가 있음
  • 관리 측면에서 개발자와 인프라 관리자의 역할을 분담시킬 수 있음
  • 대표적인 예: AWS의 EC2, Microsoft Azure, Google Compute Engine(GCE)
    AWS의 EC2를 이용 시 물리적인 서버와 Network, Storage 등을 직접 구매하거나 준비하지 않아도 원하는 OS를 깔아 서버로 사용할 수 있음
    사용자가 원하는 OS를 고르고 그에 해당하는 스펙을 선택하기만 하면, 나머지는 모두 아마존에서 지원
    OS의 종류나 다양한 자원들을 사용자가 선택하므로 대표적인 IasS

PaaS

  • 서비스로서의 플랫폼 (개발사에 제공되는 플랫폼을 가상화)
  • 기본 인프라(일반적으로 하드웨어와 운영 체제)를 관리할 필요가 없어 애플리케이션 개발과 관리에만 집중 가능
  • 즉, 애플리케이션 실행과 관련된 리소스 구매, 용량 계획, 소프트웨어 유지 관리, 패치 또는 다른 모든 획일적인 작업에 대한 부담을 덜어 더욱 효율적
  • IaaS와 헷갈릴 수 있는데 아마존과 같은 서비스가 VM을 제공하는 IaaS라면, PaaS는 node.js, Java와 같은 런타임을 미리 깔아놓고, 거기에 소스코드를 넣어서 돌리는 구조. 즉 사용자는 소스코드만 적어서 빌드 하고 컴파일은 클라우드에서 하여 결과만 가져오는 거라고 생각하시면 됩니다.
  • PaaS는 기본적으로 어플리케이션과 플랫폼이 함께 제공: 어플리케이션이 플랫폼에 종속되어 개발되기 때문에 다른 플랫폼으로의 이동이 어려울 수도 있음
  • 대표적인 예: Heroku, Google App Engine, IBM Bluemix, OpenShift, Windows Azure

SaaS

  • 서비스로서의 소프트웨어 (고객에게 제공되는 소프트웨어를 가상화)
  • 서비스 제공자에 의해 실행되고 관리되는 완전한 제품을 고객에게 제공
  • 대부분의 경우 서비스로서의 소프트웨어라고 하면 최종 사용자 애플리케이션을 말함
  • SaaS 오퍼링을 사용하면 서비스가 어떻게 유지 관리되는지 또는 기본 인프라가 어떻게 관리되는지 생각할 필요 X --> 해당 특정 소프트웨어를 어떻게 사용할지만 생각하면 되므로 UX 매우 향상 (그냥 웹만 접속하면 됨)
  • 또한 최신 SW 업데이트를 빠르게 제공받을 수 있음 --> 사실상 기업 입장에서도 클라우드에 SW가 있기 때문에 따로 업데이트를 하지 않아도 접속한 사용자는 최신 SW를 사용하게 될 수 있는 것
  • 대표적인 예: 이메일 제품용 추가 기능을 관리할 필요가 없고 이메일 프로그램이 실행되는 서버 및 운영
    체제를 유지 관리하지 않고 이메일을 보내고 받을 수 있는 웹 기반 이메일, 구글 클라우드, 네이버 클라우드

다시 한 번 그림으로 정리



references:
https://aws.amazon.com/ko/types-of-cloud-computing/?WICC-N=tile&tile=types_of_cloud
https://wnsgml972.github.io/network/2018/08/14/network_cloud-computing/
https://www.whatap.io/ko/blog/9/

profile
Backend 개발 학습 아카이빙 블로그입니다. (현재는 작성하지 않습니다.)

1개의 댓글

comment-user-thumbnail
2025년 8월 1일

Great overview of AWS fundamentals—understanding core services like EC2, S3, and IAM is essential for any cloud project. Embracing cloud based development practices can help streamline deployment processes, improve scalability, and accelerate innovation.

답글 달기