AWS 서비스 모음집 1 (컴퓨팅, 컨테이너, 네트워크, 마이그레이션 등)

들어가기 전에

AWS에서 제공하는 서비스는 200여 개에 달합니다. 이 글에서는 AWS 수많은 서비스 중에서도 한 번쯤 알고 있으면 좋을 서비스를 모아 간단한 설명을 달아 보았습니다. 현재 클라우드 서비스 분야에서 핫한 AWS Solutions Architect 자격증을 취득하는 데에도 많은 도움이 되지 않을까 생각됩니다.

AWS 서비스를 처음 접하는 분들에게는 본문에서 사용되는 개념들이 생소할 수 있지만, 웹 개발에 대한 기초가 있다면 쉽게 이해할 수 있을 것입니다.

본 편에서는 컴퓨팅, 컨테이너, 네트워크, 마이그레이션 및 전송, 스토리지, 데이터베이스 분야의 서비스들을 다룹니다.


컴퓨팅

EC2 (Elastic Compute Cloud)

가상의 컴퓨터(서버)를 할당받아 사용할 수 있는 서비스. 클라우드 환경에서는 서버를 인스턴스라 부른다.

  • 인스턴스 종류
    • 리저브드 – 약정 개념으로 할인 받아 사용하는 인스턴스
    • 온디맨드 – 필요 시 대여하여 사용하는 인스턴스
    • 스팟 – 최대 90% 할인된 금액으로 제공되는 경매형 인스턴스
AWS Auto Scaling

필요에 따라 EC2의 규모가 자동으로 조절되는 서비스.

AWS Lambda

서버 없이도 코드를 실행할 수 있게 해주는 서비스. 스케줄 등의 트리거를 이용하여 코드를 실행한다.

AWS Batch

수많은 배치 컴퓨팅 작업을 효율적으로 손쉽게 실행할 수 있게 해주는 서비스. 배치용 클러스터를 따로 구축하거나 관리할 필요 없이 Pegasus WMS, Cromwell, Luigi 같은 주요 워크플로우 엔진을 지원하는 인스턴스가 동적으로 할당되고 실행된다.

AWS Lightsail

작은 비용으로 시작할 수 있는 가상서버(VPS) 서비스. 카페24 웹호스팅과 유사하다.


컨테이너

컨테이너란 개별 소프트웨어를 실행하는 데 필요한 실행 환경을 패키징(캡슐화)하여 격리된 공간에서 프로세스를 동작시키는 기술로, 컨테이너가 물리적 서버의 환경을 타지 않기 때문에 배포가 훨씬 수월하다.

ECR (Elastic Container Registry)

Docker 컨테이너 이미지를 손쉽게 저장, 관리 및 배포할 수 있게 해주는 완전 관리형 Docker 컨테이너 레지스트리.

ECS (Elastic Container Service)

Docker 컨테이너를 손쉽게 실행, 중단 및 관리할 수 있게 해주는 고도로 확장 가능하고 빠른 컨테이너 관리 서비스.

EKS (Elastic Kubernetes Service)

Kubernetes 클러스터를 설치 및 운영할 필요 없이 AWS에서 Kubernetes를 쉽게 실행할 수 있도록 해주는 관리형 서비스.

AWS Fargate

컨테이너에 적합한 서버리스 컴퓨팅 엔진으로 ECS 또는 EKS와 연동하여 사용할 수 있는 서비스. 기존에는 EC2 기반의 인스턴스에서 컨테이너를 실행했지만, Fargate를 사용하면 인스턴스 없이 컨테이너를 바로 실행할 수 있다.

AWS App2Container (A2C)

사내 데이터 센터 또는 가상 시스템에서 실행되는 애플리케이션을 리프트&쉬프트 방식으로 ECS 또는 EKS에서 관리하는 컨테이너에서 실행할 수 있도록 지원하는 커맨드라인 도구.

AWS App Runner

컨테이너나 인프라 경험이 없어도 몇 번의 클릭으로 컨테이너식 웹 애플리케이션 및 API를 구축, 배포, 실행할 수 있도록 지원하는 완전 관리형 컨테이너 애플리케이션 서비스.

AWS Copilot

AWS 상의 컨테이너화된 애플리케이션을 빠르고 쉽게 시작 및 관리할 수 있는 명령줄 인터페이스.


네트워크

VPC (Virtual Private Cloud)

사용자의 AWS 계정 전용 가상(사설) 네트워크.

  • 관련 용어
    • 서브넷 – VPC의 IP 주소 범위
    • 라우팅 테이블 – 네트워크 트래픽을 전달할 위치가 기록된 테이블
    • 인터넷 게이트웨이 – VPC의 리소스와 인터넷 간의 통신을 활성화하기 위해 VPC에 연결하는 게이트웨이
    • VPC 엔드포인트 – EC2 인스턴스를 퍼블릭으로 노출하지 않고 VPC 외부(의 AWS) 서비스와 프라이빗하게 연결하기 위해서 사용. 즉 IGW, VPN, NAT, 프록시 등 사용할 필요 없음
Route 53

DNS 서비스.

ELB (Elastic Load Balancing)

로드 밸런싱 서비스.

  • ELB 종류
    • ALB application LB
    • NLB network
    • CLB classic
AWS PrivateLink

퍼블릭 인터넷에 트래픽을 노출하지 않고도 VPC, AWS 서비스 및 온프레미스 네트워크 간에 안전한 비공개 연결을 제공하는 서비스. PrivateLink를 사용하려면 VPC 내 연결하고자 하는 서비스에 대한 엔드포인트를 생성해야 한다.

Amazon API Gateway

개발자가 API를 손쉽게 생성, 게시, 유지 관리, 모니터링 및 보안 유지할 수 있도록 하는 완전 관리형 서비스. ELB로 대체할 수 있지만 관리할 것이 많아진다.

AWS Transit Gateway

중앙 허브를 통해 여러 VPC 및 온프레미스 네트워크를 연결해주는 서비스. VPC 피어링의 복잡도를 해결할 수 있다.

Storage Gateway

AWS의 스토리지와 로컬 스토리지를 연동해주는 서비스. 로컬에 있는 DAS, NAS, SAN 등의 장비와 S3를 연동해서 메인 데이터는 S3에 두고 접근빈도가 높은 데이터는 로컬 스토리지에 캐싱하거나, 모든 데이터는 로컬 스토리지에 두고 일정 시간에 따라 주기적으로 데이터의 스냅샷을 S3에 저장하는 등의 서비스를 구축할 수 있다.

DirectConnect (DX)

온프레미스와 AWS 간의 전용 네트워크 연결을 쉽게 설정할 수 있게 해주는 서비스.

Direct Connect Gateway (DXGW, DGW)

Direct Connect 고객이 AWS 리전에 있는 여러 VPC를 Direct Connect에 연결할 수 있도록 지원하는 서비스.

CloudFront

CDN 서비스로 EC2나 S3 같은 서비스에서 사용 시 콘텐츠 전송 속도를 높일 수 있는 서비스.

AWS Global Accelerator (AGA)

AWS의 글로벌 네트워크 인프라를 사용하여 사용자 트래픽의 성능을 최대 60% 개선하는 네트워킹 서비스.

AWS Snow 패밀리

인터넷 연결이 열악한 엣지 환경에서도 데이터를 수집 및 처리할 수 있는 매우 안전한 휴대용 디바이스. Snowcone, Snowball, Snowmobile 등을 제공한다.


마이그레이션 및 전송

AWS Application Migration Service (CloudEndure Migration,  MGN)

자동화된 리프트 및 시프트 마이그레이션을 지원하는 서비스.

AWS Database Migration Service (DMS)

최소한의 가동 중단으로 데이터베이스 마이그레이션을 지원하는 서비스.

AWS Server Migration Service (SMS)

온프레미스 서버를 AWS로 마이그레이션할 수 있는 서비스.

AWS Migration Hub

마이그레이션의 진행 상황을 중앙에서 추적하는 서비스.

AWS Transfer Family

Amazon S3 또는 Amazon EFS에서 파일을 직접 송수신할 수 있는 완전관리형 전송 서비스. FTP, FTPS, SFTP 지원

AWS DataSync

온프레미스 스토리지와 AWS 스토리지 간, 그리고 여러 AWS 스토리지 서비스 간의 데이터 이동을 간소화, 자동화 및 가속화하는 온라인 데이터 전송 서비스. DirectConnect와 함께 사용할 수 있다.

Application Discovery Service

엔터프라이즈 고객이 온프레미스 데이터 센터에 대한 정보를 수집하여 마이그레이션 프로젝트를 계획하는 데 도움이 되는 서비스.

AWS Schema Conversion Tool (AWS SCT)

기존 데이터베이스 스키마를 한 데이터베이스 엔진에서 다른 데이터베이스 엔진으로 변환해주는 서비스. 변환된 스키마는 Amazon EC2 인스턴스에서 데이터베이스와 함께 사용하거나 Amazon S3 버킷에 데이터로 저장할 수 있다.


스토리지

S3 (Simple Storage Service)

인터넷 스토리지 서비스. 웹에서 바로 접근할 수도 있고, EC2에 마운트해서 사용할 수도 있다.

S3 Glacier

저비용 데이터 보관 및 백업 서비스. 자주 사용되지 않는 데이터를 보관 및 백업하는 데 유용한 서비스. 

S3 Intelligent-Tiering

데이터 액세스 패턴이 변경될 때 성능에 대한 영향이나 운영 오버헤드 없이 스토리지 비용을 자동으로 최적화하는 서비스. 사용하지 않는 객체를 직접 아카이빙 하는 방식의 S3 Glacier와는 다른 방식으로 비용 절감을 지원한다.

EBS (Elastic Block Storage)

EC2 인스턴스에서 하드디스크처럼 사용하는 블록 스토리지.

EFS (Elastic File System)

EC2 인스턴스에서 공유 가능한 EC2 인스턴스용 파일 스토리지(NAS).

Amazon FSx

업계 표준 SMB(서버 메시지 블록) 프로토콜을 통해 액세스 가능한, 고도로 안정적이고 확장 가능한 완전관리형 파일 스토리. Windows용, Lustre용이 지원된다.

AWS Backup

데이터 백업을 중앙 집중화하고 자동화하는데 필요한 완전 관리형 백업 서비스. Storage Gateway를 통해 온프레미스 스토리지도 백업 가능하다.

Amazon DLM (Data Lifecycle Manager)

EBS 볼륨에 저장된 데이터의 백업 자동화 서비스.

CloudEndure Disaster Recovery

자동화된 재해 복구 서비스. 물리적 서버, 가상 서버 및 클라우드 기반 서버를 AWS 클라우드로 빠르고 안정적으로 복구함으로써 가동 중단 시간 및 데이터 손실을 최소화한다.


데이터베이스

데이터베이스는 SQL DB와 NoSQL DB로 구분한다. SQL DB는 관계형 데이터베이스라고도 불리며 MySQL, PostgreSQL 등이 있다. NoSQL DB는 SQL DB를 제외한 모든 DB가 포함되며, 문서형 MongoDB, 컬럼형 Cassandra, 키-밸류형 Redis 등이 있다.

RDS (Relational Database Service)

MySQL, PostgreSQL, Oracle, SQL Server를 지원하는 관계형 DB 서비스.

Amazon Aurora

MySQL 및 PostgreSQL과 호환되는 고성능 관계형 데이터베이스.

DynamoDB

AWS에서 서비스하는 키-밸류형 데이터 베이스. MongoDB와 같은 계열이다.

DocumentDB

MongoDB와 호환되는 데이터베이스.

Neptune

빠르고 안정적인 그래프 데이터베이스 서비스. 수십억 개의 관계를 저장하고 몇 밀리초의 지연 시간으로 그래프를 쿼리하는 데 최적화되어 있다.

Keyspaces

컬럼형 NoSQL 데이터베이스인 Cassandra와 호환되는 관리형 데이터베이스.

SDB (Simple DB)

데이터베이스 관리 작업의 부담을 덜어주는 고가용성의 NoSQL 데이터베이스 스토리지.

ElastiCache

인메모리 캐싱 서비스. Memcached 및 Redis를 지원한다.

MemoryDB for Redis

Redis와 호환되는 인메모리 데이터베이스.

Amazon Timestream

완전관리형 시계열 데이터베이스.

Redshift

데이터 병렬 처리를 지원하는 완전관리형 데이터 웨어하우스.


데이터 처리 & 분석

Amazon Athena

표준 SQL을 사용해 Amazon S3에 있는 데이터를 간편하게 분석할 수 있는 대화형 쿼리 서비스.

AWS Glue

손쉽게 데이터를 준비하고 로드할 수 있게 지원하는 완전관리형 ETL(추출, 변환 및 로드) 서비스.

Amazon EMR (Elastic MapReduce)

AWS 상에서 서비스되고 있는 Hadoop 프레임워크 위에서 사용할 수 있는 MapReduce 서비스. 동적으로 확장 가능한 EC2 인스턴스 전체에서 대량의 데이터를 쉽고 빠르게 처리할 수 있다.

Amazon CloudSearch

완전 관리형 검색 엔진.

Amazon Elasticsearch

API 커스텀이 가능한 오픈소스 검색 엔진.

AWS 메시지 큐 서비스

대용량 데이터를 처리하기 위한 배치 작업이나, 채팅 서비스, 비동기 데이터를 처리할 때 사용하는 메시지 큐 서비스.

  • 메시지 큐 서비스 종류
    • SQS (Simple Queue Service) – 간단한 관리형 메시지 큐. message routing, fanouts, distribution lists 등이 지원되지 않음
    • Amazon MQ – 관리형 ActiveMQ 서비스
    • Amazon MSK (Managed Streaming for Kafka) – 관리형 Kafka 서비스. Apache Kafka를 사용하여 스트리밍 데이터 처리
    • Amazon Kinesis – 관리형 데이터 스트리밍 서비스. 실시간 스트리밍 데이터를 손쉽게 수집, 처리 및 분석할 수 있으며, MSK(Kafka)와 유사함
    • SNS (Simple Notification Service) – 완전관리형 pub/sub 메시징, SMS, 이메일 및 모바일 푸시 알림 서비스
Amazon Kinesis Data Firehose

Kinesis 스트림의 레코드를 읽고 처리하는 스트리밍 데이터 파이프라인.

Amazon Data Pipeline

서버 또는 스토리지 간 주기적인 데이터 이동을 지원하는 관리형 ETL 서비스.

Amazon EventBridge (구 Amazon CloudWatch events)

서버리스 이벤트 버스 서비스. 실시간 스트림 데이터를 Lambda 등 AWS 서비스에 연결할 수 있다.

AWS Lake Formation

안전한 데이터 레이크를 며칠 만에 손쉽게 설정할 수 있도록 지원하는 서비스.

Amazon QuickSight

클라우드용 구축형 확장 가능한 서버리스 기계 학습 기반 비즈니스 인텔리전스(BI) 서비스.

AWS Data Exchange

로이터, IBM 등 다양한 데이터 공급자들의 데이터를 검색, 구독, 분석할 수 있는 서비스.


모니터링

VPC Traffic Mirroring

대규모 네트워크 트래픽을 캡처할 수 있는 서비스. 미러링한 데이터를 별도로 저장하여 분석에 사용할 수 있다.

Amazon GuardDuty

지속적 보안 모니터링 서비스. 예상치 못한 활동이나 악의적 활동 등을 식별한다.

CloudWatch

AWS 리소스 및 애플리케이션에 대한 모니터링 서비스(“AWS에서 무슨 일이 발생했는가”). 특정 서비스나 애플리케이션에 대한 모든 이벤트를 로그한다.

CloudTrail 

AWS 계정에서 API 활동을 기록하는 모니터링 서비스(“AWS에서 누가 무엇을 했는가”). AWS 계정의 거버넌스, 규정 준수, 운영 감사 및 위험 감사를 지원한다.

Amazon Managed Service for Grafana

Grafana 모니터링 데이터 시각화 서비스.

Amazon Managed Service for Prometheus

컨테이너화된 애플리케이션에 대한 Prometheus 모니터링 서비스.


개발자 도구 & 개발 편의

AWS CICD 솔루션
  • CodeCommit: 관리형 코드 리포. 깃허브의 코드를 이곳으로 마이그레이션해서 사용할 수 있음
  • CodeBuild: 소스 코드를 컴파일하고 단위 테스트를 실행하며 배포할 준비가 완료된 아티팩트를 생성하는 완전관리형 빌드 서비스. Jenkins, CircleCI, SolanoCI 등 대체
  • CodeDeploy: 개발자가 인스턴스에 대한 애플리케이션 배포를 자동화하고 필요에 따라 애플리케이션을 업데이트할 수 있는 배포 서비스. Octopus Deploy 등 대체
  • CodePipeline: 소프트웨어를 출시하는데 필요한 단계를 모델링, 시각화 및 자동화 할 수 있게 해주는 CD 도구.
AWS CodeStar

데브옵스 프로젝트를 만들 수 있도록 하는 프로젝트 운영 도구.  CodePipeline을 통한 개발 및 배포 관리를 지원하며, CloudWatch를 연동할 수도 있다.

Elastic Beanstalk

웹 어플리케이션(php, Node.js, Python, Ruby 등)을 쉽게 배포할 수 있도록 도와주는 서비스.

AWS SWF (Simple Workflow)

분산 애플리케이션 구성 요소에서 작업을 쉽게 조정할 수 있도록 해주는 웹 서비스.

AWS Step Functions

서버리스 마이크로서비스 오케스트레이션. 그래픽 콘솔을 통해 응용 프로그램의 워크플로우를 일련의 이벤트 기반 단계로 볼 수 있다.

AWS X-Ray

사용자 요청이 애플리케이션을 통과하는 전체 과정을 추적함으로써 애플리케이션 분석 및 디버그를 지원해주는 서비스. Zipkin과 유사하다.

AWS Fault Injection Simulator

완전관리형 오류 주입 실험 서비스로, 애플리케이션의 성능, 관측성, 복원력을 더욱 쉽게 개선한다.

AWS Amplify

웹/모바일 앱을 쉽게 개발할 수 있도록 도와주는 개발 도구. Firebase와 유사하다.

AWS AppSync

서버리스의 형태로 GraphQL 백엔드를 개발할 수 있는 서비스.

Amazon Cognito

로그인을 중심으로 여러 기능을 제공하는 사용자 관리 서비스.

AWS Device Farm

데스크톱 브라우저 및 실제 모바일 디바이스에서 애플리케이션을 테스트할 수 있는 서비스.

SES (Simple Email Server)

대용량 인바운드 및 아웃바운드 클라우드 이메일 서비스.


인프라 운영 및 관리

AWS CloudFormation

Infrastructure as Code 방식으로 리소스 및 전체 인프라 구성을 코드로 생성 및 관리하는 서비스.

AWS Managed Services (AMS)

엔터프라이즈 고객 및 파트너를 대신하여 AWS 인프라 운영할 수 있도록 해주는 AWS 인프라 운영 위임 서비스.

AWS OpsWorks 

Chef 및 Puppet의 관리형 인스턴스를 제공하는 구성 관리 서비스. 

AWS Health

사용자의 AWS 리소스 및 계정에 영향을 미치는 문제를 신속하게 해결할 수 있게 해주는 서비스.

AWS Personal Health Dashboard

고객이 사용 중인 AWS 리소스에 영향을 줄 수 있는 변경 사항을 미리 알려주고 대응 방법을 제공하는 서비스.

AWS Systems Manager

AWS의 운영 허브. AWS 애플리케이션 및 리소스의 운영 문제를 중앙 위치에서 추적하고 해결할 수 있는 통합 사용자 인터페이스를 제공한다.

AWS Config

AWS 리소스 구성을 측정, 감사 및 평가할 수 있는 서비스.

AWS Compute Optimizer

비용을 줄이고 성능을 향상시킬 수 있도록 사용률 기록 지표에 대한 기계 학습을 통해 워크로드에 대한 최적의 AWS 리소스를 제안하는 서비스

AWS Trusted Advisor

사용자의 AWS 환경을 분석하여 성능 및 보안 관련 모범 사례를 제안하는 서비스.

AWS Well-Architected Tool

사용자의 아키텍처를 검토하고 모범 사례를 제안하는 서비스.

AWS License Manager

Oracle 등의 타사 솔루션 라이선스를 클라우드에 적용하는 프로세스를 간소화하는 서비스.

AWS Certificate Manager (ACM) 

SSL / TLS 인증서를 손쉽게 프로비저닝 및 관리하고 AWS 관리형 리소스에 배포할 수 있는 서비스.


계정 및 라이선스 관리

AWS IAM (Identity and Access Management)

AWS 리소스에 대한 액세스를 안전하게 제어할 수 있는 서비스.

AWS Organizations

여러 AWS 계정을 중앙에서 관리할 수 있는 계정 관리 서비스.

AWS RAM (Resource Access Manager)

하나의 계정에서 생성된 AWS 리소스를 다른 계정, 다른  OU, 같은 조직 내 다른 계정 등과 공유할 수 있도록 관리할 수 있는 서비스.

AWS Control Tower

여러 AWS 계정이 포함된 AWS 인프라 환경의 대시보드(landing zone)를 커스텀할 수 있는 서비스.


보안, 자격증명

AWS Security Hub

AWS 계정 전반에 걸쳐 우선순위가 높은 보안 경고 및 규정 준수 상태를 종합적으로 확인할 수 있는 서비스.

AWS WAF

일반적인 웹 공격으로부터 웹 애플리케이션이나 API를 보호하는 데 도움이 되는 웹 애플리케이션 방화벽.

AWS Shield

DDoS 공격으로부터 보호하는 서비스.

AWS Firewall Manager

여러 계정과 리소스 전체에 걸쳐 AWS WAF 관리 및 유지 보수 작업을 간소화하는 서비스.

AWS KMS (Key Management Service)

암호화 키를 사용하고 관리할 수 있는 멀티 테넌트 관리형 서비스.

AWS CloudHSM (Cloud Hardware Security Module)

고객에게 암호화된 안전한 키 스토리지를 제공하는 하드웨어 보안 모듈. 온프레미스 환경에 있는 HSM 장비와 연계하여 하이브리드 아키텍처를 구성할 수 있다.

AWS Secrets Manager

데이터베이스와 다른 서비스의 자격 증명을 안전하게 암호화, 저장 및 검색할 수 있는 서비스.

Amazon Macie

기계 학습을 사용하여 AWS에 저장된 민감한 데이터를 자동으로 검색, 분류 및 보호하는 보안 서비스.

AWS Single Sign-On

여러 AWS 계정 또는 애플리케이션에 대한 액세스를 중앙에서 관리하는 자격 증명 서비스.

Amazon Inspector

AWS 리소스의 보안 및 규정 준수를 개선하는 데 도움이 되는 보안 취약성 평가 서비스.

AWS Artifact

AWS의 규정 준수 보고서에 온디맨드 방식으로 액세스할 수 있도록 무료로 제공되는 셀프서비스 포털.

댓글 남기기