클라우드 서비스란?

보람찬하루·2023년 11월 19일
2
  • Cloud : 인터넷을 통해 연결된 네트워크상의 리소스와 서비스

  • Cloud Service

    • 인터넷을 통해 컴퓨팅 리소스와 다양한 서비스를 제공하는 기술 및 모델
    • 사용자가 자체적으로 물리적인 서버, 스토리지 장치, 네트워크를 구축하거나 관리하지 않고도 필요한 컴퓨팅 리소스를 인터넷을 빌려서 사용할 수 있게 해주는 기술
    • 클라우드 서비스를 제공하는 업체를 통해 사용자에게 제공되는 인프라, 플랫폼 또는 SW
    • 분류 : on-premise / IaaS / PaaS / SaaS / Serverless
    • 종류 : MicroSoft-azure / Amazon-AWS / Google – google cloud Platform

즉 클라우드란 인터넷 통신망 어딘가에 보이지 않는 컴퓨팅 자원 cpu, 메모리 디스크 등을 원하는 대로 가져다 쓸 수 있는 서비스입니다


  • Cloud Service 의 3요소

    • 고가용성(HA)
    • 확장성
    • 탄력성



  • 고가용성이란?

    시스템이 연속적으로 가동되며 사용 가능한 상태를 유지하는 능력,
    장애상황을 해결하고 서비스를 지속할 수 있는 능력

    • 방법
      1. 복제와 백업

      2. 로드 밸런싱

        로드 밸런서 : 여러대의 서버에 트래픽을 균등하게 분산해주는 것

      3. 자동 확장

      4. 데이터 센터 다중화

      5. 실시간 모니터링과 경고



  • 장애내구성(내결함성)이란 ?

    장애 상황에도 서비스를 지속할 수 있는 능력
    장애가 있어도 다른 가용 영역으로 연결시켜 해결하는 능력


  • 고가용성 vs 장애내구성

    이때 고가용성과 관련이 깊은 특징이 하나 더있습니다 바로 장애내구성입니다.
    고가용성은 장애 상황을 해결하고 서비스를 지속하는 능력이라면
    장애내구성은 장애 상황에서도 서비스를 지속할 수 있는 능력입니다.
    이 두가지 능력을 둘 다 확보하는 것은 비용도 많이들고 복잡한 구조를 갖게됩니다.
    따라서 상황에 따라 한가지를 우선시해서 비용을 줄이는 것은 중요합니다.


  • 확장성이란?

    쉽고 빠르게 규모를 늘릴 수 있는 능력
    수요에 따라 컴퓨팅 파워 또는 용량 확장


  • 탄력성이란?

    불필요한 자원을 사용하지 않고 비용 최적화에 필수적인 능력
    수요에 따라 규모를 확장 또는 축소할 수 있는 능력

    탄력성을 떠올릴땐 노벨상 홈페이지를 떠올리시면됩니다!!
    노벨상이 발표되는 그날은 유입이 몰리겠죠??




  • 웹 호스팅 vs 서버 호스팅 vs 클라우드

    • 웹호스팅 : 서버공간만 빌려서 홈페이지만 운영하면 될 때

    • 서버 호스팅 : 서비스 운영을 위한인프라 구축 후 한정적으로 운영하고 싶을 때

    • 클라우드 : 모바일 게임이나 일시적 이벤트



  • 클라우드 컴퓨팅과 관련된 다양한 배포 및 관리 모델
    • On-premise / IaaS / PaaS / SaaS / Serverless




    • On-premise

      기업이 서버를 클라우드 환경이 아닌 자체 설비로 보유하고 운영하는 것

    • 자체적으로 보유한 전산실 서버에 직접 설치해 운영하는 방식
      • 일회성 비용 발생 (도입기)
      • 장점 : 보안성, 상시 관리 용이
      • 단점 : 많은 시간과 비용 필요




    • IaaS(Infrastucture As A Service)

      ‘서비스로서의 인프라’를 뜻하는 이아스는 사용자가 관리할 수 있는 범위가 가장 넓은 클라우드 서비스

    • 가상화된 인프라를 제공하여 가상머신,네트워크를 관리
    • 자유도가 높지만 복잡
    • 가상머신 / azure VM vm만주고 클라우드업체에선 os까지만 관리 나머지는 내가하는것으로 이케아에서 가구를 구매했을때를 비유할 수있습니다! 이케아에서 가구를 구매하고 스스로 조립하는건 자유도가 높으나 복잡하죠!




    • PaaS(Platform As A Service)
      • 애플리케이션 개발 및 배포에 필요한 플랫폼 제공

      • Azure app service / azure database

        파스는 데이터베이스나 개발도구 등등도 제공합니다

        그래서 이아스땐 h2디비로 실습햇지만 파스를 실습할땐 애저안에있는 마이sql과 포스트그래sql 서버를 통해 db를 관리해보았습니다.

      • PaaS : 조립되어있는 가구를 구매한 느낌

        -> 자유도 낮음 , 안정성 높음(클라우드에서 보장 : SLA)

        SLA : 서비스 수준에 대한 협약

    • SaaS(Software As A Service)
      • 완전한 소프트웨어 애플리케이션 제공
      • 사용자는 인터넷을 통해 웹 브라우저 등을 통해 접근
      • Notion / Naver Cloud / Azure open ai



    • Serverless
      • 코드 실행에 필요한 인프라를 추상화하여 개발자는 코드 작성에 집중가능

      • 장점 : 비용 절감, 빠른 개발과 배포 가능

      • 단점 : 긴시간을 필요로하는 작업에 불리함,

      • 클라우드 제공 플랫폼에 심하게 종속적

      • firebase / azure functions

        서버리스라는 것은 서버가 없는 것이 아니라 있는데 사용자가 관리하지 않는다는 의미입니다.

        클라우드에서 만들어 놓은 서버에 함수를 던져놓고 애플리케이션이 필요한 경우에만 시작하는것입니다.
        서버리스 아키텍처 제공업체로는 네이버 클라우드 아마존 ms 등이 있고 각각 cloud function, aws람다, azure function을 제공하는데 기업마다 다 다르기 때문에 종속적으로 냅두거나 이중화를 해줘야합니다.


  • 출처 : 충북대학교 몰입교육 교육자료
profile
를 만들어 가자

1개의 댓글

comment-user-thumbnail
2023년 11월 19일

헉... 최근들어 가장 관심이 가고 공부하고 싶은 분야였는데 정말 도움 많이 됐습니다 🔥 좋은 글 올려주셔서 감사합니다!!!!

답글 달기