본문 바로가기
좋은 개발자가 되기위한 방법들/일기

클라우드 컴퓨팅 기술(IaaS, PaaS, SaaS)

by chief_sac 2022. 1. 20.
반응형

참고문서

 

 

요즘 자주들으면서 실제로 내가 학원을다니며 뭔지 제대로된 이해도 하지 않고 사용한AWS 와같이 개발일에서 클라우드 컴퓨팅이라는 워드는 점점 자주들리기 시작하는것 같습니다.

네이버클라우드, 구글클라우드 , i클라우드와같이 어느새 일반인들의 일상에서도 이중 하나라도 안써본사람은 드물 정도로 우리는 클라우드 컴퓨팅과 매우 가깝습니다. 이렇게 흔하디 흔하게 들리는 클라우드가 무엇인지 궁금하여 찾아본 내용에대해 정리해보려합니다.

 

 

클라우드 컴퓨팅이란?

💡 클라우드 컴퓨팅은 IT리소스를 인터넷을 통해서 온디맨드(On-Demand)로 제공하고 사용한 만큼만 비용을 지불하는것을 말하는데 리소스 뿐만이 아니라 확장 가능한 추상화, 풀링과같은 워크로드를 실행하는 활동을 뜻합니다.

*(온디맨드란? : 한글로 번역하자면 주문형 서비스입니다.)

 

  • 클라우드 컴퓨팅은 클라우드에서 워크로드를 실행하는 동작을 말합니다.
  • 기술은 클라우드를 구축하고 사용할 때 필요한 소프트웨어나 하드웨어같은것을 빌리는 것입니다.

 

위에 말로도 충분히 클라우드 컴퓨팅이 뭔지를 알 수 있을겁니다. 아까도 말했다싶이 우리는 이미 여러가지 클라우드 서비스를 사용한 경험이 있기때문입니다. 그렇다면 이런 클라우드 컴퓨팅의 장점은 무엇이며 어떠한 서비스들이 있는지 정리해보려고합니다.

 

 

클라우드 컴퓨팅의 이점

 

  • 클라우드 컴퓨팅의 장점은 가장 유명한 클라우드 서비스 회사인 AWS에서는 다음과 같이 정리하였습니다.

 

  1. 민첩성
    1. 클라우드를 통해서 광범위한 기술에 쉽게 접근하며 빠르게 상상하는 것을 구축할 수 있습니다. 단 몇분만에 기술 서비스를 배포할 수 있으며 이전보다는 몇백배나 더 빠르게 아이디어를 구현하며 자유롭게 실험하고, 새로운 아이디어를 테스하여서 고객의 경험을 차별화 하고 비지니스를 혁신 할 수있습니다.
  2. 탄력성
    • 클라우드 컴퓨팅을 사용하면 높은 수준의 비지니스 활동을 처리하기 위해서 리소스를 사전에 오버 프로비저닝(할당같은것)할 필요가 없습니다. 언제든 필요한만큼 리소스를 확장하거나 축소하여서 용량을 늘리고 줄일 수 있기때문입니다.
    • 위 말을 조금 쉬운 예시로 들면 만약 내일이 크리스마스라고 생각을 한다면 여기어때와 같은 숙소예약 서비스에는 접속자가 많이 늘게될것입니다. 여기어때에서는 동시접속자를 1000명정도 처리 할 수는 있지만 2000명을 처리 할 수없다면 서버에 무리가 와서 비지니스에 지장이 생길것입니다. 클라우드 서비스는 이것을 몇분만에 2000명을 수용할 수 있는 공간을 만들고 또한 크리스마스가 지난다면 다시 줄일 수 있는것을 이야기하는것입니다.
  3. 비용 절감
    • 클라우드를 통해서 자본비용(데이터 센터, 물리적 서버등)을 가변비용으로 전환하고 사용한 만큼만 비용을 지불하여 경제적으로 운영할 때의 비용이 저렴합니다.
  4. 글로벌 서비스
    • 클라우드를 사용하게되면 몇분만에 새로운 지리적 지역으로 확장하고 전세계에 배포 할 수 있습니다. 외국의 인터넷 사이트를 접속할 때 우리는 느려지는 인터넷 속도를 경험한 기억이 있을텐데 글로벌 서비스를 위해 서버를 외국에 직접적으로 설치하지 않고도 클라우드 회사의 리전을 딴다면 몇분만에 글로벌하게 배포를 할 수있습니다.

 

서비스의 종류(유형)

  • 클라우드 컴퓨팅의 종류 혹은 유형에는 주요하게 3가지로 나눠질 수 있는데 이는 제목에서 보았듯이

IaaS, PaaS, SaaS로 나눠집니다.

 

 

이는 공통적으로 서비스형(as-a-Service)이라는 용어인데 클라우드 컴퓨팅 서비스를 제공한다는 뜻입니다.

위 3가지만 잘 활용한다면 직접 관리해야하는 온프레미스 인프라가 지속적으로 감소 할 수 있습니다.

 

IaaS(Infrastructure-as-a-Service)

  • 인프라 서비스
  • IaaS는 온프레미스 인프라에서 한계층 발전한 형태입니다.
  • IT를 위한 기본 빌딩 블록이 포함되어있고, 일반적으로는 네트워킹 기능이나 가상 컴퓨터 및 스토리지 공간에대한 액세스를 제공합니다. 이는 필요한 구성요소만을 구매하고 필요에 따라 확장하고 축소하는데 유연하여 비용이 낮고 유지관리 비용이 들지않는 경제적인 클라우드입니다.
  • 단점은 제공업체의 선택에대한 보안 문제가능성이 있습니다.
  • AWS, Azure, Google Cloud와 같은 퍼블릭 클라우드 공급체가 IaaS의 대표적인 예시입니다.

 

PaaS(Platforms-as-a-Service)

  • 플랫폼 서비스
  • PaaS에서는 제공업체가 자체 인프라에서 하드웨어와 소프트웨어를 호스팅하여주고 이러한 플랫폼을 사용자에게 통합솔루션, 솔루션스택 또는 인터넷을 통한 서비스로서 제공합니다. 개발자가 프레임워크를 개발하여 지속적으로 웹기반 애플리케이션을 빌드하고 커스터 마이징 할 수 있는 방법입니다. 개발자는 기본 소프트웨어 구성요소를 활용하여 자체 애플리케이션을 개발 할 수 있음으로 생산성이 높아질 수 있습니다.
  • 대표적인 예시로는 AWS Elastic Beanstalk, Heroku가 있습니다.

 

SaaS(Software-as-a-Service)

  • 소프트웨어 서비스
  • SaaS는 애플리케이션 서비스중 가장 포괄적인 형식의 클라우드 컴퓨팅 서비스입니다. 모든 앱의 서비스를 제공업체에서 관리합니다. 소프트웨어업데이트, 버그수정, 일반 소프트웨어 유지관리작업을 처리하면서 사용자는 대시보드 또는 API를 통해 앱을 연결합니다.그저 소프트웨어를 어떻게 사용할지만 생각하면되는것입니다.
  • 대표적 예시로는 Dropbox, Salesfoce, Google Apps 및 Outlook같은 것이 SaaS의 예입니다.
반응형