본문 바로가기
Cloud/AWS

[AWS] AWS 서버리스 (Serverless), 통합 결제 및 운영 관리

by 에르모사 쩐뉴 2025. 10. 2.

9월 3일 강의록: AWS 서버리스 (Serverless), 통합 결제 및 운영 관리

 

1. 서버리스 (Serverless) 개요 ⭐핵심 토픽

서버리스는 클라우드의 핵심 개념 중 하나로, 물리적 서버나 운영체제(OS) 관리에 대한 걱정 없이 코드를 실행하고 데이터를 저장할 수 있도록 AWS가 모든 인프라 관리를 대행해 주는 방식입니다.

1-1. 서버리스의 정의 및 이점 (시험 빈출)

정의 설명
운영 오버헤드 최소화 운영상 과부하 (서버 다운 여부, CPU/메모리 모니터링, 전담 인원 투입 등)를 AWS가 관리하여 고객의 부담을 덜어줍니다.
프로비저닝 불필요 고객이 서버 사양(CPU, 메모리, 네트워크 등)을 미리 지정할 필요 없이, AWS가 자동으로 자원을 할당합니다. (관리할 인프라가 없음)
자동 크기 조정 (Auto Scaling) 트래픽 증가/감소에 따라 AWS가 자동으로 용량(컴퓨팅 자원, 대역폭 등)을 확장/축소합니다.
종량제 (Pay-as-you-go) 사용한 만큼만(실행 시간, 호출 횟수 등) 비용을 지불하며, 실행이 종료되면 비용도 종료됩니다.
내장된 고가용성/보안 AWS가 인프라 계층에서부터 고가용성 및 기본적인 보안을 보장해 줍니다.
 

1-2. AWS 서버리스 서비스 포트폴리오 (라인업)

AWS 자격증 시험에서는 이 서비스들의 **"서버리스 여부"**와 **"역할 분담"**을 구분하는 것이 중요합니다.

분류 대표 서비스 역할 및 서버리스 특징
컴퓨팅 AWS Lambda (람다) ⭐필수 암기 서버리스 함수 실행 서비스. 코드만 업로드하면 AWS가 실행 환경을 관리.
AWS Fargate (파게이트) ECS/EKS를 위한 서버리스 컴퓨팅 엔진. 컨테이너를 실행할 EC2 인스턴스 관리를 AWS가 대신함.
API API Gateway AWS의 완전 관리형 API 서비스. HTTP/REST API 엔드포인트를 제공하며, 디도스 방어(AWS Shield) 기본 제공.
스토리지 Amazon S3 관리할 CPU, 메모리, 디스크가 없는 객체 스토리지 서비스.
데이터베이스 Amazon DynamoDB 대표적인 NoSQL 서버리스 데이터베이스. (RDB인 RDS는 서버리스가 아님)
Aurora Serverless RDB를 사용하고자 하는 고객을 위해 오로라에 서버리스 옵션을 추가한 서비스.
메시징
/오케스트레이션
Amazon SQS 메시지 저장소(Message Queue) 역할. (느슨한 결합(Decoupling) 구현)
Amazon SNS 발행/구독(Pub/Sub) 모델의 알림 서비스. (이메일, SMS, 모바일 푸시 등)
Step Functions 여러 AWS 서버리스 서비스들을 단계별 워크플로우로 연결 및 조정(Orchestration).
분석 Amazon Kinesis **대량의 실시간 데이터(스트리밍 데이터)**를 수집/저장/분석하는 서비스.
Amazon Athena S3에 저장된 데이터를 대상으로 표준 SQL을 사용해 직접 분석할 수 있는 서버리스 분석 서비스.
인증 Amazon Cognito 웹 및 모바일 앱의 사용자 인증/권한 부여 서비스. (구글/깃허브 등 외부 인증 연동 가능)
 

 


2. 메시징 서비스 상세 (SQS vs. SNS)

2-1. Amazon Simple Queue Service (SQS)

  • 역할: 서비스 간 통신 메시지를 안정적으로 저장하고, 소비자가 메시지를 가져가 처리할 때까지 보관하는 완전 관리형 메시지 대기열(Queue) 서비스.
  • 핵심 개념: 느슨한 결합 (Loose Coupling / Decoupling) ⭐필수 암기
    • 프론트엔드와 백엔드가 직접 통신하지 않고 SQS라는 메시지 저장소를 사이에 두어, 한쪽 서비스에 장애나 과부하가 발생해도 메시지 유실 없이 안정적으로 서비스가 유지되도록 합니다.
  • 대기열 유형:
    • 표준 (Standard) ⭐️빈출: 최소 1회 전달을 보장하며, 대량의 메시지 처리에 중점을 둡니다. (순서 보장 X)
    • FIFO (First-In, First-Out): 정확히 1회 전달을 보장하며, **우선순위(순서)**가 중요한 작업 대기열에 사용합니다.
  • Dead Letter Queue (DLQ): 정상적으로 소비되지 못하고 실패한 메시지들을 따로 모아두는 대기열. 재처리 기회를 제공합니다.
  • 폴링 방식:
    • 짧은 폴링 (Short Polling): 즉시 응답을 시도 (0초). 빈 응답이 많아 비효율적일 수 있음.
    • 긴 폴링 (Long Polling) ⭐장점 빈출: 일정 시간(1초 이상) 동안 메시지가 올 때까지 대기. 거짓된 빈 응답 호출을 줄여 SQS 비용을 절감하고 효율적입니다.

2-2. Amazon Simple Notification Service (SNS)

  • 역할: 발행/구독(Pub/Sub) 모델을 기반으로, 하나의 메시지를 여러 구독자에게 동시에 푸시(Push) 알림으로 전달하는 서비스.
  • 특징:
    • 푸시 (Push): 메시지를 구독자에게 밀어주는 방식 (SQS는 당겨가는 Pull 방식).
    • 회수 옵션 없음: 일단 메시지를 보내면(푸시하면), 삭제하거나 취소할 수 없습니다.
    • 이벤트 소스: SQS, Lambda 등 다른 서비스를 **트리거(Trigger)**하는 역할을 수행할 수 있습니다.

3. Step Functions: 서버리스 오케스트레이션

  • 역할: 여러 AWS 서비스(Lambda, SQS 등)를 연결하여 단계별(Sequential), 병렬적(Parallel), 분기적(Branching) 워크플로우를 구성하고 **조정(Orchestration)**하는 서비스.
  • 핵심 이점:
    • 시각적 워크플로우: 복잡한 서비스 흐름을 **시각화된 JSON(State Machine)**으로 쉽게 파악 가능.
    • 추적 및 장애 처리: 각 단계를 자동으로 추적하고, 실패 시 오류 파악 및 로그 기록이 용이하여 운영 오버헤드를 줄입니다. (개별 Lambda 함수를 일일이 쫓아갈 필요가 없음)

4. AWS 비용 및 지원 관리

4-1. 통합 결제 (Consolidated Billing) ⭐시험 빈출

  • 개념: 하나의 회사/조직이 여러 개의 AWS 계정을 사용할 때, 이 계정들의 요금을 하나로 묶어 단일 청구서로 수용하고 결제하는 방식.
  • 주요 이점:
    • 단일 청구서: 모든 계정의 비용을 한 번에 관리.
    • 볼륨 할인: 여러 계정의 사용량을 합산하여 더 높은 볼륨 할인을 적용받을 수 있어 비용 절감 효과가 커집니다.
    • 비용 검토: 어느 계정/서비스에서 비용이 많이 나오는지 전체적으로 파악 가능.

4-2. 비용 관리 도구

도구 역할
AWS Budgets **일정 예산(비용)**을 지정하고, 해당 금액을 초과하거나 초과할 것으로 예상될 때 알림을 받을 수 있도록 설정.
Cost Explorer 비용에 대한 막대 그래프를 포함한 시각 자료를 제공. 서비스별(EC2, RDS 등) 사용 용도를 확인하여 비용 절감 포인트를 찾는 데 활용. (대부분 EC2 비용이 가장 높음)
 

4-3. Support Plan 및 자격증

Support Plan 주요 특징
Basic 무료. 기본적인 고객센터 접근만 가능.
Developer 개발 관련 문의 (응답 시간 12시간 이내)
Business 운영 환경 지원 (응답 시간 1시간 이내). Trusted Advisor5대 범주 전체 기능 제공.
Enterprise 미션 크리티컬 지원 (응답 시간 15분 이내). 전담 TAM(Technical Account Manager) 배정.
  • TAM (Technical Account Manager): Enterprise 고객에게 배정되는 AWS 내부 조직 직원. 기술 지원, 인프라 이벤트, 가이드 제공, 교육 등을 담당.

4-4. AWS 자격증 단계 (참고)

  • 입문/기초: Cloud Practitioner (Practitional)
  • 기본/어소시에이트: Developer, SysOps Administrator, Solutions Architect (롤 베이스)
  • 고급/스페셜티: Advanced Architecting, DevOps Engineer, 그리고 Security, Networking, Database 등의 전문 영역 (Specialty)

 

Kinesis: 대량 데이터 전달해주는 서비스

Step Functions: 오케이션해주는 서비스

운영 오버헤드: 운영 상의 과부하 ex. 서버를 운영하지 않음으로써, 서버가 다운되었는가, cpu가 확보되었는가 등 운영에 대해서 전담인원을 두거나, 모니터할 대시보드를 두거나 하는 자원.

 

 

프로비저닝: EC2를 생성하기 위한 네임태그, 네트워크, 스토리지 용량 등. AWS에 보내면 설정한 내용만큼 자원받아 사용. 

 

 

서버리스 아키텍처의 예

 

사용자가 갑자기 증가하고, API Gateway, Network 용량 확장, 

AWS가 모두 보장한다

단문 메시지 (sms)는 통신사와 연결이 되어있어야 한다.