Post

AWS 기초부터 이해하기 | Amazon Web Service

💽 클라우드 컴퓨팅의 개념과 Amazon Web Service(AWS) 기술들을 요약합니다.

AWS 기초부터 이해하기 | Amazon Web Service

KEYWORDS
클라우드 컴퓨팅, AWS, Amazon Web Service, AWS, Amazon EC2, Amazon S3


     

Introduction

  • AWS는 클라우드 컴퓨팅을 통해 전 세계적으로 연결된 원격 컴퓨터를 활용하여 다양한 IT 리소스를 제공하는 서비스입니다.
  • 가상 서버, 데이터베이스, 스토리지, 보안 등을 효율적으로 관리하고 활용할 수 있습니다.
  • 클라우드의 유형과 AWS의 핵심 서비스를 이해하면, 나만의 서버 및 데이터베이스를 쉽게 구축하고 관리할 수 있습니다.

     

클라우드 용어

클라우드 컴퓨팅 Cloud Computing

  • 인터넷을 통해 연결된 원격 컴퓨터를 활용하여 컴퓨터 시스템, 서버, 스토리지, 데이터베이스, 네트워킹 등 다양한 컴퓨팅 리소스를 접근하고 이용할 수 있는 기술입니다.

IaaS Infrastructure as a Service

  • 기본적인 IT 인프라 구성요소(CPU, OS, 메모리, 네트워크, 스토리지)를 가상화하여 유연하게 제공하는 서비스입니다.
  • 사용자가 물리적 하드웨어를 소유하거나 유지보수하지 않고 필요한 컴퓨팅 리소스를 활용할 수 있어야 합니다.
    • Self Manage(사용자 책임) ㅣ Application, Data, Runtime, Middleware, O/S
    • Vender Manage(클라우드 공급자 책임) ㅣ Virtualization, Servers, Storage, Networking

PaaS Platform as a Service

  • 개발자가 웹 기반 서비스 또는 애플리케이션을 개발, 테스트, 배포할 때 필요한 플랫폼을 클라우드에서 제공해야 합니다.
  • 개발자는 인프라 관리에 신경 쓰지 않고 애플리케이션 개발에만 집중할 수 있어야 합니다.
    • Self Manage(사용자 책임) ㅣ Application, Data
    • Vender Manage(클라우드 공급자 책임) ㅣ Runtime, Middleware, O/S, Virtualization, Servers, Storage, Networking

SaaS Software as a Service

  • 애플리케이션을 인터넷과 웹 브라우저를 통해 제공하는 서비스입니다.
    • ex. Gmail, MS Office 365
  • 사용자는 별도의 설치 과정 없이 웹 브라우저를 통해 해당 어플리케이션을 이용 가능
    • Vender Manage(클라우드 공급자 책임) ㅣ Application, Data, Runtime, Middleware, O/S, Virtualization, Servers, Storage, Networking

     

인프라 환경

Region

  • AWS에서 제공하는 서비스가 위치한 지역으로, 물리적으로 분리된 독립적인 인프라를 의미합니다.
  • 전 세계적으로 다양한 Region을 구축해 사용자가 가장 가까운 지역에서 서비스를 이용할 수 있도록 해야 합니다.

Availability Zone

  • 인터넷 데이터 센터(Internet Data Center, IDC)로, 격리된 데이터 센터를 의미합니다.
  • 하나의 Region 내에 여러 Availability Zone이 위치하며, 이 데이터 센터들은 물리적으로 서로 떨어져 있어야 합니다.
  • 예를 들어, 서울 Region에는 3개의 Availability Zone이 운영되고 있습니다.

Edge Location

  • CloudFront(CDN 서비스)를 위한 캐시 서버들의 모음입니다.
  • 여러 캐시 서버에 콘텐츠를 복제하여 사용자들이 더욱 빠르게 콘텐츠를 받을 수 있도록 해야 합니다.

     

Storage

DAS Direct Attached Storage

  • 스토리지를 서버에 직접 연결하는 방식입니다.

NAS Network Attatched Storage

  • 스토리지를 빠른 네트워크로 연결하는 방식으로, 파일 단위로 데이터를 접속하며 운영 체제에서는 파일 서버로 표시됩니다.

SAN Network Attatched Storage

  • 스토리지를 빠른 네트워크로 연결하는 방식으로, 블록 수준에서 데이터를 저장하며 디스크로 나타납니다.

스냅샷 Snapshot

  • 특정 시간에 데이터 저장 장치의 상태를 별도의 파일 및 이미지로 저장하는 방식으로, 유실된 데이터를 복원할 수 있습니다.

     

AWS Services

Computing Service

Amazon EC2 Elastic Compute Cloud

  • 가상화된 컴퓨팅 리소스인 서버(인스턴스)를 유연하게 제공하는 서비스입니다.
  • 다양한 타입과 서비스에 따른 사양을 제공합니다.
  • 한 개의 인스턴스에서 수천 개의 인스턴스로 확장이 가능하며, 쉽게 서버를 생성하고 인프라를 구축할 수 있습니다.
  • EC2 구매 옵션
    • On-Demand ㅣ 실제 사용한 시간당 사용량을 과금하며, 자주 서버를 삭제/생성하는 경우에 유리합니다.
    • Reserved ㅣ 장기적으로 변경 없이 1년 또는 3년을 예약해 사용률을 확정하고 저렴하게 이용할 수 있습니다.
    • Spot ㅣ 단기적으로 병렬 컴퓨팅 파워를 사용하는 경우 저렴한 가격에 이용할 수 있습니다.
    • Dedicated ㅣ 고객 전용 하드웨어 사용을 목적으로, 높은 보안이 요구될 때 적합합니다.

fig1

Amazon Auto Scaling

  • 서버 자원을 추가로 생성하고 자동으로 삭제 가능한 서비스로, 가용성과 확장성을 제공합니다.

Amazon Lightsail

  • 가상 사설 서버(Virtual Private Server, VPS)에 대한 웹사이트 및 어플리케이션 배포/관리 기능을 제공하며, 컴퓨팅, 스토리지, 네트워크를 저렴하고 투명한 비용으로 제공합니다.

Amazon WorkSpaces

  • 사내 PC를 가상화하여 데이터를 서버에서 보관 가능하도록 해주는 데스크톱 가상화 서비스입니다.
  • 보안 및 백업 관리가 용이합니다.

     

Networking Service

Amazon Route 53

  • 클라우드 기반 DNS(Domain Name System) 웹 서비스로, 도메인 관련 기능을 제공합니다.
  • Health Checks and Failover ㅣ 엔드포인트에 대한 상태 확인 및 장애 발생 시 자동으로 다른 엔드포인트로 라우팅합니다.
  • 라우팅 ㅣ 지연 시간, 가중치, 지역 기반 라우팅 기능을 제공하여 최적화된 트래픽 분배가 가능합니다.

fig2

Amazon VPC Virtual Private Cloud

  • 클라우드 내에서 가상 시설 네트워크 인프라를 구성하고, 네트워크를 이용한 접근 제어 서비스를 제공합니다.
  • VPC 내에서 IP 주소 범위, 서브넷 생성, 라우팅 테이블, 네트워크 게이트웨이 등 가상 네트워킹 환경을 제어할 수 있습니다.
  • IPv4, IPv6 모두 지원합니다.

AWS Direct Connect

  • AWS와 온프레미스 환경을 연결하는 전용선 서비스를 제공하며, 낮은 지연 시간으로 데이터를 공유할 수 있습니다.
  • 높은 성능과 낮은 지연 시간을 자랑합니다.

Amazon ELB Elastic Load Blancer

  • 사용량이 많은 서버에 대한 네트워크 트래픽을 분산시키고, 여러 EC2 인스턴스로 트래픽을 전달합니다.
  • 클라이언트 요청을 여러 EC2 인스턴스로 분산시키며, 각 인스턴스의 상태를 모니터링하여 안정적인 서비스 제공을 보장합니다.

     

Storage Service

Amazon S3 Simple Storage Services

  • 범용적인 스토리지 서비스로, 무제한으로 데이터를 저장할 수 있습니다.
  • 데이터 보관, 정적 웹사이트 호스팅 등 여러 용도로 활용 가능합니다.
  • Bucket이라는 Region 내 영역을 생성하고, 데이터를 Key-Value 형식의 객체로 저장합니다.
  • 파일 단위의 접근만 지원하므로, EBS 서비스와는 다른 특성을 가집니다.

Amazon Glacier

  • 사용 빈도가 낮은 데이터를 저렴하고 무제한으로 보관할 수 있는 스토리지 서비스입니다.
  • API/SDK를 이용한 직접 연결이나 S3 라이프 사이클을 통해 데이터에 접근할 수 있습니다.

Amazon EBS Elastic Block Storage

  • SSD를 활용하여 데이터의 입출력 속도가 빠르며, 고성능 서비스에 적합한 스토리지 서비스입니다.
  • EC2에 디스크를 연결하여 사용할 수 있습니다.
  • EBS 볼륨의 데이터를 스냅샷으로 만들어 Amazon S3에 백업할 수 있습니다.

AWS Storage Gateway

  • 온프레미스에 있는 데이터를 클라우드로 저장하고 보관할 수 있는 하이브리드 환경 서비스입니다.
  • 다양한 데이터 저장 옵션을 제공합니다

AWS Snowball

  • 네트워크가 아닌 디스크/스토리지를 통해 대용량 데이터를 저장하고 물리적으로 전달한 후 업로드하는 서비스입니다.
  • 대용량 데이터를 AWS로 이전할 때 유용하게 사용됩니다.

     

Database Service

Amazon RDS Relational Database Service

  • RDBMS를 쉽게 구축하고 운영하며 확장할 수 있는 관리형 데이터베이스 서비스입니다.
  • EC2 인스턴스에 직접 설치하여 운영할 수 있습니다.
  • 인스턴스/스토리지 확장, 백업 및 복원, RDS 암호화 옵션을 제공합니다.
  • Amazon Aurora, PostgresSQL, MySQL, MariaDB, Oracle, Microsoft SQL Server 등 다양한 데이터베이스 엔진을 선택할 수 있습니다.
  • AWS Database Migration Service를 통해 쉽게 마이그레이션할 수 있습니다.

Amazon DynamoDB

  • NoSQL을 활용하는 서비스로 유연한 스키마 모델을 사용하며, 자동으로 확장되는 용량 및 처리량을 제공합니다.

Amazon ElastiCache

  • 높은 응답속도를 요구하는 서비스에 적합한 In-Memory 기반의 Cache 서비스입니다.
  • Redis 또는 Memcached와 같은 인메모리 데이터 스토어를 제공합니다.

     

Platform

Amazon Kinesis

  • 대량의 데이터를 저장하고 분류하며, 효율적인 스트리밍 데이터 처리 및 실시간 데이터 처리를 지원합니다.
  • Kinesis Streams로 데이터 스트림을 생성하고, Kinesis Firehose로 데이터를 저장하고 전송할 수 있습니다.

Amazon Redshift

  • 확장 가능한 데이터 웨어하우스로, 빠른 성능을 제공합니다.

Amazon EMR

  • 저장된 대용량 데이터를 분류하고 분석하는 서비스로,
  • Apache Hadoop, Apache Spark와 같은 오픈 소스 분산 프레임워크를 사용하여 처리할 수 있습니다.

     

Application Service

Amazon CloudSearch

  • 검색 엔진을 구축하고 관리할 수 있는 관리형 검색 서비스입니다.

Amazon SES Simple Email Service

  • 대량 이메일을 발송할 수 있는 서비스입니다.

Amazon Elastic Transcoder

  • 동영상을 인코딩하는 서비스입니다.

     

Security

AWS IAM Identify & Access Management

  • 사용자 인증 및 권한 관리 서비스입니다.
  • 사용자, 그룹, 역할을 생성하여 AWS 리소스에 대한 접근을 제어할 수 있습니다.

Amazon GuardDuty

  • 관리형 위험 탐지 서비스로, 기계 학습 및 분석을 활용하여 비정상적인 악성 활동 및 보안 위협을 모니터링합니다.

AWS Shield

  • DDoS 보호 서비스입니다.
  • 웹 애플리케이션 방화벽(WAF)을 활용하여 공격을 방어할 수 있습니다.

AWS WAF Web Application Firewall

  • 악성 웹 트래픽 필터링 서비스입니다.
  • 사용자 지정 보안 규칙을 정의하여 SQL 삽입, XSS(크로스 사이트 스크립팅) 등의 웹 공격으로부터 보호합니다.

AWS 방화벽

  • ACL(NACL), AWS WAF를 통해 네트워크 트래픽을 관리할 수 있습니다.
  • Security Group ㅣ 인스턴스에 대한 인바운드, 아웃바운드 네트워크 트래픽을 제어하는 가상의 방화벽 역할을 합니다.

     

Load Balancing

  • 네트워크 트래픽을 하나 이상의 서버나 장비로 분산하기 위해 사용됩니다.
  • 외부에서 발생되는 인터넷 트래픽을 여러 웹 서버나 장비로 분산 처리합니다.

Amazon Elastic Load Balancing ELB

  • EC2 인스턴스, 컨테이너, IP 주소 등 동일한 서비스를 제공하기 위한 여러 대상으로 애플리케이션 및 네트워크 트래픽을 자동으로 분산시킵니다.
    • Application Load Balancer (ALB) ㅣ HTTP/HTTPS 트래픽의 라우팅에 적합합니다.
    • Network Load Balancer (NLB) ㅣ TCP/UDP 트래픽을 처리하는 데 적합합니다.
    • Classic Load Balancer (CLB) ㅣ 여러 EC2 인스턴스 간에 트래픽을 분산합니다.
  • Health Check, Sticky Session, 고가용성 구성, SSL Termination 및 보안 기능을 제공합니다.

     


References

  1. 아마존 웹 서비스 개요
  2. AWS FAQ
This post is licensed under CC BY 4.0 by the author.