[클라우드기초] cloud 및 PaaS-TA -3

이상현·2020년 10월 8일
0
post-thumbnail

SaaS

SaaS : 업무에서 사용하는 소프트웨어의 기능을 네트워크를 통해 필요한만큼 서비스로 이용할 수 있도록 제공하는 모델

( Office365, google Docs ... ) 등등 계정을 가지고 있으면 인터넷을 통해 서비스를 이용할 수 있는 것들..

  • 위와 같은 것들이 SaaS의 대표적인 예라고 볼 수 있다.

  • SaaS는 제공하는 기능의 범위에 따라 레벨을 가지고 있음.

level1 : Ad Hoc/Custom, 사용자들이 1대 1로 인스턴스를 사용하는 것
level2 : configuratble, 커스터마이징이 가능한 형태
level3 : Multi-Tenancy, 하나의 인스턴스로 모든 고객에게 서비스를 제공한다. 효율적인 자원관리가 가능
level4 : Scalability, 부하분산 시스템을 인스턴스와 사용자 모두에게 지원, 이론상 가장 성숙한 모델
"keyword : Configuration, Multi Tenancy, Scalability" (다음 슬라이드에서 설명)

  • 주문형 소프트웨어
  • 오피스, ERP, CRM 등 기업용 기반 SaaS 가 대표적인 유형

  • 독립적으로 만들어지되, 각 사용자에게 기능을 제공하기위해 관리가 되어야한다.

  • 클라우드도 마켓플레이스가 존재한다.
  • SaaS 마켓을 통해 필요한 것들을 구매하고 사용한다.

  • 서비스 개발자가 기존 서비스를 클라우드 위에 올리려고 할 때, 대부분 기존 서비스를 IaaS위에 올리는 것으로 그치거나, 기술적인 문제를 해결하지 못해 전환실패로 돌아간다.

  • PaaS를 미들웨어로 구성하게 되면, 기술적인 문제를 PaaS에서 지원하여 클라우드로의 전환을 할 수 있게된다.
    => PaaS 를 사용해야하는 이유!

-- 클라우드 플랫폼 제공자 : 마켓플레이스와 같은 클라우드 서비스 기반 플랫폼을 운영
-- SaaS A 사업자 : 개발한 SaaS를 마켓플레이스에 등록
-- 이용자 : 사용하고자 하는 SaaS를 구입하여 이용

클라우드 네이티브 앱

  • MSA 사용

  • 클라우드 네이티브 앱 = 네이티티 앱의 장점 + 웹 앱의 장점

"keyword : 최소의 상태 / 격리된 상태/ 수평적 확장성 / 탄력적인 플랫폼에서 운영

위 키워드들을 갖추면 완성도있는 클라우드 네이티브 앱이 된다.

  • 마이크로서비스 지향 아키텍쳐!

마이크로서비스 아키텍쳐

  • 위와 같은 문제점들이 발생

  • 하나의 기능을 구현하는데, 여러 개의 서비스를 조합하여 기능을 제공

  • One Thing / Small / API / Autonomous

  • 각 서비스들을 API 게이트웨이를 통해 연결짓는 방식을 사용하여, 내부적으로 어떻게 구현(프로그래밍 언어, 프레임워크, 미들웨어)하든 문제가 되지 않는다.

API Gateway

  • 기본적으로 클라우드 내부에서의 통신을 의미
  • IaaS <-> PaaS <-> SaaS 간의 통신
  • 내부의 가상화되어있는 시스템(또는 소프트웨어)들이 통신하는 통로
  • REST-API와 같은 프로토콜을 사용
  • 표준화되어있기 때문에, 다양한 환경에서 적용할 수 있음

  • MSA와 함께 현재 떠오르는 기술이다.
  • JSON/REST 기반으로 주로 사용

    어떻게 설계하는 지가 중요하다.

-인증/인가 : 허가된 사용자인지, 또는 사용자의 권한을 판별
-API 라우팅 : 외부에서 들어오는 통신들을 내부의 특정 위치로 보내주는 역할
-메디에이션 : JSON, REST 등과 같은 포맷을 해석하고 변환하는 역할
-Logging : 사용한 정보를 기록하여 사용량 측정, 과금

profile
'당신을 한 줄로 소개해보세요'를 이 블로그로 대신 해볼까합니다.

0개의 댓글