[Cloud] 클라우드 컴퓨팅 서비스

곽우현·2022년 4월 18일
0

클라우드

목록 보기
1/2

스타트업 자바개발로 2년정도 다니고 대기업 계열사, 클라우트팀으로 이직을 했다. AWS 학습을 위해 클라우드 관련 공부를 위해 기본적인 클라우드 컴퓨팅 서비스부터 알아보기로 했다.

Iaas (Infrastructure as a Service)

  • 기본 인프라(가상 머신, 소프트웨어 정의 네트워크, 연결된 스토리지)만 제공한다. 최종 사용자는 플랫폼과 환경을 구성 및 관리하고 여기에 애플리케이션을 배포해야 한다.
  • 자신이 직접 서버 컴퓨터를 구매해서 네트워크 설정을 하고 보안 설정을 하는 등의 복잡한 과정이 필요없다. 필요할 때, 필요한 만큼의 자원만 빌려서 사용할 수 있다.
  • 다양한 서비스 구축에 대한 지식이 필요하다. 예를 들어, 서버 인스턴스를 만들어서 트래픽 관리를 하지 않으면 서버가 터질 수 있다.
  • 예시) AWS(EC2), GCP(CE), Microsoft Azure(VM)

Paas (Platform as a Service)

  • 인프라 구축 및 유지 관리의 복잡성 없이 최종 사용자가 애플리케이션을 개발, 실행 및 관리할 수 있는 플랫폼을 제공한다.
  • IaaS가 각각의 서비스를 구매해서 서비스를 구축해야되는 것과 달리, 하드웨어와 OS, 미들웨어(ex. 데이터베이스)까지 구축되어 있는 서비스이다.
  • 애플리케이션 실행 환경이나 데이터베이스 등이 미리 마련되어 있어 단기간에 응용 프로그램을 개발하여 서비스를 제공할 수 있다.
  • 예시) Google App Engine, CloudFoundry, Heroku, AWS(Beanstalk)

SaaS (Software as a Service)

  • 서비스 제공자가 사용자에게 소프트웨어(어플리케이션) 서비스를 제공하는 모델이다.
  • 하드웨어와 OS, 미들웨어, 애플리케이션까지 구축되어 있는 소프트웨어를 서비스로 이용하는 것이다. 사용자는 서비스를 사용하기만 하면 된다.
  • 예시) Microsoft Onenote, Google Drive, Gmail

여기까지가 기존의 기본적인 클라우드 컴퓨팅 서비스의 종류인거 같다. 요즘 추가적인 것들이 나온거같아 같이 정리한다.

CaaS (Container as a Service)

  • 컨테이너 엔진, 오케스트레이션 및 기본 컴퓨팅 리소스가 클라우드 공급자의 서비스로 사용자에게 제공되는 컨테이너 기반 가상화의 한 형태이다.
  • CaaS를 사용하는 조직은 클라우드 인프라의 이점을 활용하는 동시에 일반적인 서비스형 플랫폼(PaaS)에 수반되는 업체 종속도 피할 수 있다. 컨테이너 자체가 다양한 환경 전반에서 간단한 이식성을 구현하기 때문이다.
  • CaaS는 IaaS 하위 집합의 한 종류로 간주되며 IaaS와 PaaS 사이에 있다.
  • 예시) Google Container Engine(GKE), AWS(ECS, EKS), Azure(ACS)

FaaS (Function as a Service)

  • 인프라 구축 및 유지 관리의 복잡성 없이 고객이 애플리케이션 기능을 개발, 실행 및 관리할 수 있는 플랫폼을 제공한다.
  • 서버리스(serverless)의 서비스 형태중 한가지이다.
  • 백엔드를 작은 함수단으로 쪼개서 사용자가 직접 관리하지 않는 서버로 올린다. 함수들은 특정한 조건 또는 주기, 요청 등으로 트리거 되어서 서버가 알아서 실행되고 종료된다. 주로 서버리스라 하면 FaaS에 더 가깝습니다.
  • 예시) AWS(Lamda), Google Cloud Functions

BaaS (Backend as a Service)

  • 개발자가 서버 기술을 몰라도 환경에 연결되는 어플리케이션을 만들 수 있게 도와준다.
  • 애플리케이션 개발 시 요구되는 복잡한 백엔드 기능들을 개발자가 직접 개발하지 않고 클라우드 공급자가 제공하는 서비스를 이용해 쉽고 안정적으로 구현 하는 것이다.
  • PaaS에 속하며 사용자 관리, 접속 제어, 푸시 알림, 데이터 저장, 위치 서비스 등의 기능을 직접 개발하지 않고 클라우드와 연동시켜 API를 호출하여 사용하면 된다.
  • 예시) Google FireBase

참고자료

profile
주니어 Java 개발자

0개의 댓글