[AWS] 서버리스 컴퓨팅이란?

윤동환·2023년 1월 4일
0

AWS

목록 보기
15/30

서버리스 컴퓨팅


Amazon EC2에서 실행하려는 애플리케이션이 있는 경우
인스턴스(가상 서버)를 프로비저닝 -> 사용자 코드 업로드 -> 앱이 실행되는동안 계속 인스턴스를 관리

프로비저닝(provisioning)은 사용자의 요구에 맞게 시스템 자원을 할당, 배치, 배포해 두었다가 필요 시 시스템을 즉시 사용할 수 있는 상태로 미리 준비해 두는 것

서버리스란?

장기 실행 가상 머신을 필요에 따라 존재하고 사용 직후 사라지는 컴퓨팅 성능으로 대체하는 개발 접근 방식
-> 코드가 서버에서 실행되지만 이러한 서버를 프로비저닝하거나 관리할 필요가 없다는 뜻

서버리스 컴퓨팅 특징

  • 서버리스 애플리케이션을 자동으로 확장할 수 있는 유연성
  • 서버리스 컴퓨팅은 처리량 및 메모리와 같은 소비 단위를 수정하여 애플리케이션의 용량을 조정 가능

서버리스의 장점

  1. 서버를관리할필요없음
  2. 유연한확장
  3. 종량제요금
  4. 자동화된고가용성

서버리스의 단점

  1. 작업 실행과 관련된 약간의 지연시간
  2. 서버를 많이 제어 할 수 없다
  3. 큰 이미지 또는 비디오 파일을 처리하기 위해 GPU와 같은 것이 필요한 경우 이는 방해가 될 수 있다
  4. 마지막으로 복잡한 앱은 서버리스 아키텍처를 사용하여 구축하기 어려울 수 있습니다

핵심 서버리스 서비스

카테고리서비스설명
컴퓨팅AWS LambdaAWS Lambda를 사용하면 함수 계층에서 마이크로서비스 아키텍처, 배포 및 실행 관리를 지원하는 관리형 플랫폼에서 서버리스 애플리케이션을 실행할 수 있습니다.
API 프록시API GatewayAmazon API Gateway는 어떤 규모에서든 개발자가 API를 손쉽게 생성, 게시, 유지 관리, 모니터링 및 보호할 수 있도록 하는 완전관리형 서비스입니 다. 이 서비스에서는 API 관리를 위한 포괄적인 플랫폼을 제공합니다. API Gateway를 통해 수십만 개의 동시 API 호출을 처리하고 트래픽 관리, 권한 부여 및 액세스 제어, 모니터링 및 API 버전 관리를 처리할 수 있습니다.
SNSAmazon SNS는 마이크로서비스, 분산 시스템 및 서버리스 애플리케이션을 쉽게 분리하고 확장할 수 있게 해주는 완전관리형 게시/구독 메시징 서비스 입니다.
메시징 및 통합SQSAmazon SQS는 마이크로서비스, 분산 시스템 및 서버리스 애플리케이션을 쉽게 분리하고 확장할 수 있게 지원하는 완전관리형 메시지 대기열 서비스입 니다.
EventBridgeAmazon EventBridge는 자체 애플리케이션, 통합된 Software-as-a-Service(SaaS) 애플리케이션 및 AWS 서비스의 데이터를 사용하여 애플리케이 션을 쉽게 연결할 수 있게 지원하는 서버리스 이벤트 버스입니다.
오케스트레이션테스트2AWS Step Functions를 사용하면 시각적 워크플로를 통해, 배포된 애플리케이션의 구성 요소를 손쉽게 조정할 수 있습니다.

AWS Lambda

  • 서버를 프로비저닝하거나 관리할 필요 없이 코드를 실행할 수 있는 서비스 - 코드를 실행하는 동안에만 요금이 부과

AWS Lambda 작동 방식

컨테이너

  • 애플리케이션의 코드와 종속성을 하나의 객체로 패키징하는 표준 방식을 제공
  • 보안성, 안정성, 확장성 요구 사항이 매우 중요한 프로세스 및 워크플로에도 컨테이너를 사용
  • 컨테이너 오케스트레이션 서비스는 컨테이너식 애플리케이션을 배포, 관리, 확장하는 데 도움을 줄 수 있음
  • Amazon Elastic Container Service와 Amazon Elastic Kubernetes Service는 컨테이너 오케스트레이션을 제공

Amazon Elastic Container Service(Amazon ECS)

  • AWS에서 컨테이너식 애플리케이션을 실행하고 확장할 수 있는 확장성이 뛰어난 고성능 컨테이너 관리 시스템
  • Docker 컨테이너를 지원

    Docker : 애플리케이션을 신속하게 구축, 테스트, 배포할 수 있는 소프트웨어 플랫폼

  • API 호출을 사용하여 Docker 지원 애플리케이션을 시작 및 중지 가능

Amazon Elastic Kubernetes Service(Amazon EKS)

  • AWS에서 Kubernetes를 실행하는 데 사용할 수 있는 완전 관리형 서비스

    Kubernetes : 컨테이너식 애플리케이션을 대규모로 배포하고 관리하는 데 사용할 수 있는 오픈 소스 소프트웨어

  • 자원자로 구성된 대규모 커뮤니티에서 Kubernetes를 유지 관리하며, AWS는 Kubernetes 커뮤니티와 적극적으로 협력

AWS Fargate

  • 컨테이너용 서버리스 컴퓨팅 엔진으로, Amazon ECS와 Amazon EKS에서 작동
  • 서버를 프로비저닝하거나 관리할 필요가 없으며, 자동으로 서버 인프라를 관리
profile
모르면 공부하고 알게되면 공유하는 개발자

0개의 댓글