AWS 활용 기초

AWS 활용 기초

AWS를 사용하기 전에 그에 관련된 서버 엔지니어링 기본 용어 및 지식들을 정리하였다.


Region과 Available Zone

Region

응답속도는 AWS 센터와 이벤트 어플리케이션에 접속하는 사용자가 지리적으로 가까울수록 빠르다.

국내에 거주하는 사용자를 대상으로 어플리케이션의 응답속도를 빠르게 하고 싶다면 서울 리전을 선택해야 한다.

Available Zone(가용 영역)

하나의 Region 안에는 장애 방지 대책으로 물리적으로 다른 여러개의 데이터 센터가 존재하는데 이를 Availability Zone 이라고 한다.

한 Availability Zone에 화재가 발생하여 장애 발생 시, 빠르게 다른 Availability Zone에 복구가 되어 서비스 중단을 방지할 수 있다.

2022년 기준 서울 리전에는 4개의 Availability Zone 이 있다.


VPC와 Subnet

VPC(Virtual Private Cloud)

  • 논리적으로 분리한 서브 네트워크로, AWS 환경 내 네트워크 최소 단위
  • 사용자의 AWS 계정 전용 가상 네트워크
  • 하나의 region에 대해 계정 당 하나의 VPC를 받는다.


Subnet

  • Subnet은 네트워크가 작은 조각으로 쪼개져 있는, 작은 네트워크라고 할 수 있다.

  • 네트워크 성능 개선을 위해 네트워크 관리자가 효율적으로 자원을 분배하는 것이 Subnetting, Supernetting 이다.

  • VPC의 IP 주소 범위. VPC 내에 작은 망의 범위 구분이 생긴다.
  • 각 서브넷은 단일 가용 영역 내에서만 존재해야 하며, 여러 영역으로 확장할 수 없다.
  • 아래 그림에서 가용영역 A에서 장애가 발생할 경우, 설정을 통하여 가용영역 A의 서브넷 1에 있던 애플리케이션을 가용영역 B의 서브넷 2에 자동 생성하게 하여 애플리케이션을 보호할 수 있다.
  • Amazon EC2 인스턴스와 같은 AWS 리소스를 서브넷으로 실행할 수 있다.

vpc와 subnet


CIDR

CIDR(Classless Inter-domain Routing)은 클래스 없는 도메인 간 라우팅 기법이다.

Class란?

CIDR가 나오기 전에 사용했던 네트워크 구분 체계이다.

Class 구분은 아래 그림과 같았다.

네트워크 Class 구분

과거에 네트워크 구분을 Class를 기준으로 했다면, CIDR는 IP 뒤에 /16, /24, /32 와 같은 숫자를 붙여, 이 숫자를 통해 IP 할당 가능 범위를 알 수 있다.

만일 192.168.10.70/24 이라는 IP가 있다고 하자. 이 아이피 표기법에서 /24은 서브넷마스크의 1의 갯수가 24개라는 것을 의미한다. 해당 IP 주소는 아래와 같은 구조로 이루어져 있는 것이다.

IP주소 및 서브넷마스크

해당 네트워크는 192.168.10.0 ~ 192.168.10.256 까지의 IP중 ,각 네트워크를 구분하는데 사용되는 Network Address인 첫번째 IPBroadcast Address인 마지막 IP 주소는 사용할 수 없으니, 2개를 제외한 192.168.10.1 ~ 192.168.10.255 까지의 255개의 호스트를 가질 수 있게 된다.

하지만 AWS에서는 일반 네트워크와 달리 자체 클라우드에서 사용하고 있는 IP가 있기 떄문에 총 5개의 IP를 제외한 256-5=251 개만이 사용 가능한 호스트 갯수이다. 아래는 AWS에서 제외해야 하는 5개의 IP주소에 대한 설명이다.

IP주소 설명
10.0.0.0 네트워크 주소 (Network ID)
10.0.0.1 AWS에서 VPC 라우터 용으로 예약 (Default GateWay)
10.0.0.2 DNS 서버 주소
DNS 서버의 IP 주소는 기본 VPC 네트워크 범위에 2를 더한 주소이다.
CIDR 블록이 여러개인 VPC의 경우, DNS 서버의 IP 주소가 기본 CIDR에 위치하게 된다.
10.0.0.3 AWS에서 앞으로 사용하려고 예약한 주소
10.0.0.255 네트워크 브로드캐스트 주소

이렇게 CIDR는 네트워크 표기법을 Class 없이 한줄로 할 수 있다는 장점과 더불어, /24의 숫자를 필요에 따라 서브넷팅(더 적게 쓰기), 슈퍼넷팅(더 많이 쓰기)로 적절하게 할당할 수 있다.


Internet Gateway

  • VPC와 인터넷 간의 통신을 가능하게 해주는 관문


NAT Gateway

  • 프라이빗 네트워크가 외부에서 요청되는 인바운드는 필요 없더라도 아웃바운드 트래픽만 허용해야 하는 경우 사용된다.
  • 프라이빗 서브넷에서 외부 인터넷으로 요청하는 아웃바운드 트래픽을 받아 Internet Gateway와 연결한다.
  • API 호출하여 데이터를 가져온다던지, Maven Repository 에서 필요한 라이브러리를 다운로드 받는 등의 상황에서 사용한다.


Security Group & ACL

방화벽과 같은 역할을 하며, 트래픽에 대한 보안 정책을 설정

Security Group

  • EC2와 같은 서비스(인스턴스) 기준으로 적용
  • 룰에 대한 허용 규칙만 적용
  • 아웃바운드 요청에 대한 응답 자동 허용

ACL

  • 서브넷 기준 적용
  • 특정 서브넷에 대해 룰에 대한 허용 및 거부 규칙 적용
  • 아웃바운드 요청에 대한 응답 규칙 적용 필요

Security Group과 ACL


Leave a comment