반응형

AWS는 세계적인 클라우드 서비스 제공자로, 다양한 리소스와 서비스를 전 세계에 걸쳐 제공한다. AWS의 인프라 구조를 이해하는 것은 서비스 설계와 아키텍처를 최적화하는 데 있어 중요한 출발점이 된다.

 

이번 포스팅에서는 AWS의 서비스들이 제공되는 리전(Region), 가용 영역(Availability Zone) 과 같은 인프라 구성 요소를 살펴보려고 한다.

 


리전 (Region)

 

 

리전 : AWS 서비스가 제공되는 서버의 물리적 위치

 

AWS는 전 세계 여러 지역에 분산된 리전을 통해 안정적이고 빠른 서비스를 제공한다.

우리가 서비스를 이용할 때 리전을 선택할 때에는 물리적 거리를 비롯한 여러가지 사항들을 고려하여 선택할 수 있다.

 

1. 지연 속도 : 사용자가 위치한 지역과 리전 간의 거리로 인해 발생하는 네트워크 지연 속도, 거리가 가까울수록 빠른 성능을 낼 수 있다.

2. 법률 및 규제 : 특정 국가 및 지역에서의 데이터 주권 등과 관련된 법률이 적용된다. 따라서 서비스하려는 제품이 해당 법률과 상충되는 면모들을 고려할 수 있다.

3. 사용 가능한 AWS 서비스 : 모든 리전에서 동일한 AWS 서비스가 제공되지 않기 때문에 필요한 서비스가 제공되는 지를 확인해야 한다.

 

AWS 콘솔에서 리전 설정하기

 

 

 

 


가용 영역 (AZ, Availability Zone)


 

 

가용 영역 : 하나의 리전(Region)을 더 작은 단위로 나눈 하위 구성.

  • AWS의 모든 리전은 최소 3개 이상의 가용 영역으로 구성된다.
  • 가용 영역은 1개 이상의 데이터센터로 구성된다.

 

AWS는 재해 복구 및 장애 대비, 보안 등에 대비하여 고가용성과 안정성을 위해 리전 내에 여러 개의 가용 영역을 제공한다.

예를 들어 특정 AZ 데이터센터에 화재가 발생했다고 해도, 다른 AZ를 사용하여 서비스를 지속할 수 있는 고가용성을 확보하는 것이다.

 

 

 

 

 

 

(https://docs.aws.amazon.com/)


서비스와 가용 영역의 상관관계

EC2를 예시를 들어서 한번 살펴보자.

 

1. EC2만 사용할 경우

  • 기본적으로 EC2는 단일 AZ에 배포된다. 이 때 해당 AZ에 장애가 발생하면 서비스가 중단된다.

EC2 인스턴스의 네트워크 설정에서 특정 AZ의 서브넷을 명시적으로 설정할 수 있다.

 

 

2. EC2와 다른 서비스를 함께 사용할 경우

 

아래의 내용은 가장 대표적인 EC2를 여러 AZ에서 활용할 수 있는 방법이다.

  • EC2 Auto Scaling을 사용하면 다중 AZ배포가 가능하다.
    • Auto Scaling Group(ASG)을 통해 여러 AZ를 지정하면, EC2 인스턴스를 각 AZ에 고르게 배치가 가능하다.
    • EC2는 해당 AZ들에 배치되어 고가용성을 확보할 수 있다.
  • ELB(Elastic Load Balancer) : 여러 EC2 인스턴스에 트래픽을 분산해주는 역할을 한다.
    • ELB의 사용할 VPC의 가용 영역(AZ)들을 다중으로 설정하여 해당 가용 영역의 EC2에 트래픽을 분배한다.
  • ECS & EKS : 컨테이너 기반 Auto Scaling을 통해서 다중 AZ를 활용할 수 있는 방법 중 하나이다.

 

 


서비스의 종류

앞서 살펴 본 리전과 AZ에 따라서 AWS에서 제공되는 서비스들의 특징이 구분되며 큰 범주로 나누어 볼 수 있다. 내용을 연관지어서 간략하게 살펴보도록 하자.

 

리전에 따른 서비스의 구분

  1. 글로벌 서비스 : 특정 리전에 국한되지 않고, AWS의 모든 리전과 가용 영역에서 공유되거나 전 세계적으로 동작하는 서비스
    • 리전에 관계없이 동일한 서비스로 동작한다. 전 세계적으로 통합된 관리가 필요한 시스템이다.
    • 예시 
      • IAM : 사용자와 리소스에 대한 제어
      • Route 53: 글로벌 DNS 서비스, 여러 리전에 배포된 Application들에 대한 라우팅 수행
      • CloudFront : CDN 서비스로, 전 세계에 분산된 엣지 로케이션을 활용한다.
  2. 리전 서비스 : 특정 리전에 배포되어 해당 리전 내에서만 동작하는 서비스 유형.
    • 리전 간에는 데이터가 독립적으로 관리되며, 사용자가 리전을 선택하여 서비스를 프로비저닝 할 수 있다.
      • 프로비전 : 서비스 및 리소스를 사용할 수 있도록 준비하는 것
    • 리전의 특성에 따라 법률 및 규제가 적용된다.
    • 예시 : S3, RDS, EKS, ELB, EBS 등

 


가용 영역에 따른 서비스의 구분

 

글로벌 서비스의 경우 일부 단일 AZ 기반으로 동작하는 서비스가 있지만 대다수는 다중 AZ 서비스이다.

리전 서비스는 또 다시 하위 단일 AZ 리전 서비스와, 다중 AZ 리전 서비스로 구분될 수 있다. 

 

1. 다중 AZ 리전 서비스 : 특정 리전 내에서 다중 AZ에 걸쳐 배포되어 고가용성 제공

  • 예시
    • S3 : 데이터를 리전 내 여러 AZ에 복제하여 저장하여 데이터 유실을 방지하는 스토리지 서비스.
    • ELB : 선택한 리전 내에서 여러 AZ로 트래픽 분산하는 로드 밸런서 서비스.
    • DynamoDB : 기본적으로 다중 AZ에서 데이터 복제를 수행하여 동작하는 No-SQL 데이터베이스 서비스.
    • Aurora DB : 기본적으로 다중 AZ에서 데이터 복제 수행 및 Auto-scaling을 지원하는 RDBMS 데이터베이스 서비스.

2. 단일 AZ 리전 서비스 : 리전 내에서 단일 AZ에만 배포되어 동작

  • 예시
    • EC2 : 기본적으로 특정 AZ에 배포되며, 고가용성 확보를 위해서는 사용자가 직접 여러 AZ에 인스턴스를 배포하거나 ELB 등의 서비스를 활용해야 한다.
    • EBS : 단일 AZ 내에서만 데이터 저장할 수 있는 스토리지 서비스. 다른 AZ에 직접 접근할 수 없음.

 

3. 사용자의 배포 옵션에 따라서 단일 AZ와 다중 AZ 서비스로의 전환이 가능한 서비스들이 많다.

  • RDS : 다중 AZ 배포 옵션을 통해 여러개의 가용 영역에서 서비스가 가능하다.
    • Aurora DB와의 주요 차이점 : 둘 다 다중 AZ 리전 서비스이지만, RDS는 Scalability를 확보하지 못하였다.

 


엣지 로케이션(Edge Location)

 

https://blog.awsfundamentals.com/aws-edge-locations

 

AWS의 CloudFront 등의 CDN 서비스들을 가장 빠른 속도로 캐싱하기 위한 지점, 즉 가장 가까운 데이터센터에서 컨텐츠를 가져오는 지점이다.

 

 

 

 

 

 

반응형

BELATED ARTICLES

more