Infra/cloud

[AFOS] 1주차 AWS & 가상서버

미니문92 2021. 7. 8. 16:37

1. 클라우드란?

클라우드란?

클라우드는 인터넷을 통해서 언제 어디서든지 원하는 때 원하는 만큼의 IT 리소스(컴퓨팅, 스토리지, 네트워크)를 손쉽게 사용할 수 있게 하는 서비스를 말합니다.

클라우드 서비스 종류

  • IaaS(Infrastructure as a Service) 

- 고객에게 서버, 네트워크, OS, 스토리지를 가상화 하여 제공/관리

- 가상화된 물리적인 자산을 UI 형태의 대쉬보드 또는 API로 제공

- 장점 : 고정비가 들지 않음, 물리적 자원 즉시 소비 가능 등

- 단점 : 가상 서버 하위 레벨에 대해 접근, 컨트롤 어려움

관련 서비스 : AWS, DigitalOcean, Google Compute Engine(GCE)

  • PaaS(Platform as a Service)

- 클라우드 사업자는 IT 자원 이외에도 운영 체제와 개발에 필요한 미들웨어, 런타임 제공

- 사용자는 사업자가 제공하는 미들웨어와 런타임 환경에서 개발에 집중해서 사용

- 장점 : 필요한 플랫폼만 소비 형태로 사용하기 때문에 비용 부담 절감, SW 유지 관리가 쉬움

- 단점 : 특정 플랫폼 서비스에 종속

관련 서비스 : AWS Elastic Beanstlk, Microsoft Azure, Heroku, Google App Engine
심화 공부 자료 (추가 공부 필요)
미들웨어 : 공통 서비스 및 기능을 앱에 제공하는 SW

미들웨어 역할
컨테이너 레이어 :  일관된 방식으로 애플리케이션 라이프사이클 제공 측면을 관리하며, CI/CD, 컨테이너 관리 및 서비스 메쉬 기능과 함께 DevOps 기능을 제공

런타임 레이어 : 사용자 지정 코드에 대한 실행 환경을 포함합. 미들웨어는 마이크로서비스, 빠른 데이터 액세스를 위한 인메모리 캐싱, 빠른 데이터 전송용 메시징 등 고도로 분산된 클라우드 환경에 대해 경량화된 런타임 및 프레임워크를 제공

통합 레이어 : 커스텀 애플리케이션 및 구매한 애플리케이션을 연결하는 서비스를 제공하는 것은 물론, 가동 시스템을 구축하기 위해 메시징, 통합 및 API를 통해 SaaS 자산을 제공. 또한 인메모리 데이터베이스 및 데이터 캐시 서비스, 데이터/이벤트 스트리밍 및 API 관리도 제공합

프로세스 자동화 및 의사 결정 관리 레이어 : 중요 인텔리전스, 최적화 및 자동화, 의사 결정 관리를 추가.

툴링
미들웨어 레이어 4가지와 더불어 애플리케이션 개발 툴링이 있음. 툴링을 통해 개발 팀은 미리 설정된 템플릿 및 컨테이너를 사용하여 애플리케이션을 구축하고, 효율적인 코드 공유 및 공동 개발을 지원. 툴링은 온프레미스 및 클라우드에서 지속적이고 일관된 애플리케이션 개발 및 제공 경험을 지원.
 

미들웨어(Middleware): 개념, 종류, 비교, 구성 요소, 툴, 장점

미들웨어란 서비스 및 기능을 애플리케이션에 제공하는 소프트웨어입니다. 데이터, 애플리케이션 서비스, 메시징, 인증 및 API를 관리합니다. 종류와 툴을 비교해 보세요.

www.redhat.com


 

  • Serverless

- BaaS 혹은 FaaS에 의존하여 작업을 처리

- 앱 개발에 필요한 대부분을 클라우드 사업자가 제공하고 운영 관리

- 장점 : 사용자는 개발에만 집중해서 사용 가능, 비용 저렴

- 단점 : 콜드 스타트(데이터가 없는 시작 상태에서 제대로 동작하지 않는 시스템), 로그보는 부분, 동시 실행에 제한

관련 서비스 : Lambda(컴퓨팅), API Gateway(API 프록시), Azure Functions, Google Cloud Functions

 

  • SaaS(Software as a Service)

- 기업 및 개인을 대상으로 응용 소프트웨어를 서비스로 제공하는 것

- 서비스로서의 SW, 사용자가 SW를 구입하지 않아도 웹에서 응용 SW를 빌려쓰는 서비스

- 장점 : 어디서나 아무장치에서 엑세스 가능, 설치 불필요

- 단점 : 강력한 엑세스 제어 필요, 업체 종속, 보안 이슈

관련 서비스 : Salesforce, Slack, Dropbox, Zendesk, Google G Suite



 

클라우드 구현 모델 3가지

  • 퍼블릭 클라우드

- 일반 대중, 개인이나 기업에서 사용하기 위해 프로비저닝 된 클라우드 인프라

- 인터넷을 통해 액세스할 수 있는 가상 환경 내의 서버 임대

- 장점 : 물리적 서버 구매 필요가 없음, 유지보수 비용 절감, 이용한 만큼 비용 지불

- 단점 : 통제 권한 부족, 지원 비용 증가

일반적으로 클라우드 서비스 제공 업체가 운영,관리하며, 사용자는 해당 클라우드의 리소스를 사용하는 모델


 

  • 프라이빗 클라우드

- 자신의 온프레미스(기업 데이터센터)에 전용 클라우드 플랫폼을 구축하여 직접 사용하는 모델

- 기업용 클라우드의 일종

- 장점 : 특정 임무 중심의 앱 구성, 보안 및 신뢰성, 서비스 수준 관리 가능(SLA)

- 단점 : HW 비용, 가상화 기술 비용, Data Center 구축 비용, 높은 인력비용, 낮은 탄력성

사용자가 자신의 온프레미스(기업 데이터센터) 내에 클라우드 플랫폼을 구축하여 직접 사용하는 모델


 

  • 하이브리드 클라우드

- VPN 등의 보안연결을 통해서 하나 이상의 퍼블릭 클라우드 + 프라이빗 환경을 결합하는 방식

- 단일 IT 환경처럼 보이지만, 실제로는 여러 환경이 LAN, WAN, VPN, API 등을 통해 연결

- 장점 : 퍼블릭, 프라이빗 클라우드의 장/단점 혼합

퍼블릭 클라우드, 온프레미스 모두에 서비스하는 모델