지난 4월 22일 부터 7월 21일까지 약 3개월 기간의 데보션 스터디가 끝났습니다.
저는 [개발자를 위한 네트워크] 를 주제로 재성님이 운영하시는 네트워크 스터디에 참여했습니다.
스터디는 재성님이 직접 쓰신 [IT엔지니어를 위한 네트워크 입문] 책을 가지고 스터디를 진행했는데 인프라에 대한 기본적인 지식에서부터 재성님의 부가적인 설명 덕분에 원래 알고 있던 내용에서부터 몰랐던 내용까지 학습할 수 있는 기회였습니다.
특히 마지막 시간에는 AWS 환경에서의 네트워크 내용을 정리해주셨는데, 잘 몰랐던 부분(VPC Peering, Transit Gateway, Interface Endpoint, Gateway Endpoint)에 대해 이해하는 느낌이 들어 블로그에 정리해보려 합니다.
AWS Infra
- Region
- Availability Zone(AZ, 가용영역)
- Edge Location
- etc
- Outpost
- Wavelength
- Local Zone
Region
리전은 데이터 센터의 클러스터로 다수의 가용영역의 모임이다. 예를 들어 리전은 AZ-1, AZ-2, AZ-3 들을 특정 반경(100km, ...)내에 동일한 지역적 위치내에 구성되어 있는 데이터 센터의 그룹으로 정의할 수 있을 것 같다.
Availability Zone(AZ, 가용영역)
리전 내에 하나 이상의 데이터 센터로 구성된 영역으로 데이터 센터이므로 전원, 공조, 네트워크 시설이 각각 독립적으로 구성되어 운영된다.
Edge Location
엣지 로케이션은 사용자가 AWS 서비스에 빠르게 접근하기 위해 전세계에 흩어져 있는 거점으로 일반적으로 CDN서비스를 제공하기 위해 리전이 없는 지역에서도 빠른 서비스를 제공한다
Ex) CloudFront, Route53, Shield, ...
Outpost
AWS가 온프레미스 환경에서 장비를 임대형식으로 제공하여 온프레미스 환경에서 AWS 서비스를 사용하는 방식
- AWS에서 하드웨어를 설치, 운영, 유지보수
- 온프레미스 환경에서 AWS 서비스 사용 가능
Wavelength
AWS 서비스를 통신사의 네트워크 엣지에 연결하여 지연시간을 줄이는 서비스
- SKT 제공Ex) AR, VR, IoT, Game Streaming
Local Zones
특정 지리적 위치에 AWS 서비스를 확장하여 사용자가 가까운 곳에서 서비스를 실행할 수 있도록 하는 AWS의 인프라주요특징으로는 EC2, VPC, EBS등의 AWS 서비스를 특정 도시나 지역에 제공한
엣지 로케이션은 CDN, DNS와 같이 사용자에게 빠른 서비스를 제공해야 할 때, Local Zones는 리전과 가용영역으로 커버하기 어려운 지역에서 제한적인 AWS 서비스를 제공하는 것 같다. (외국은 땅이 넓으니...)
AWS VPC
AWS에서는 네트워크 대역을 나누어서 가상의 사설 네트워크 망을 구축할 수 있는데, VPC를 생성하는 방법에는 VPC만 생성하는 방법과 VPC, 서브넷을 동시에 생성하는 방법이 있다.
네트워크 구성요소를 한번에 생성하는 것이 편리하겠지만 실제 운영과 학습을 위해서라면 VPC만 생성하고 그 안의 구성요소들은 직접 생성해 보는 것이 좋다.(서브넷, 라우팅 테이블, IGW, NAT)
네트워크를 구성할 때 L2, L3가 가장 핵심인데 그 내용에 대해 좀 더 알아보자
L2
L2의 핵심은 ARP로 각 기기의 MAC Address를 통해 동일한 네트워크와 통신하는 것이다.
- 통신은 데이터를 주고 받는것으로 보내는 것만 의미하는 것이 아닌 받는것까지 해야 통신이 된다 라고 할 수 있다.
- MAC주소가 없다면?
ARP(Address Resolution Protocol) 요청 → ARP 요청 패킷을 동일 네트워크에 브로드캐스팅 → 동일 네트워크의 장비들이 ARP패킷 수신 → 패킷의 목적지 IP주소와 자신의 IP비교 → 목적지 주소가 일치하는 장비가 응답패킷 생성(IP, MAC주소 포함) → ARP요청을 보낸 장비에게 응답 패킷을 보내고 ARP 캐시에 기록
L3
L3에서의 핵심은 Gateway를 통해 다른 영역의 네트워크와 통신한다는 것이다.
- 라우팅 테이블이 없다면?
라우팅 방법은 정적 라우팅(static), 동적 라우팅(OSPF, BGP), default 경로를 사용하는 라우팅, interface에 직접 연결하는 라우팅 방식이 있다.
AS(Autonomous System)
AS는 Unique한 AS 번호를 가지고 있으며 IANA에서 할당한다. 네트워크를 관리하고 라우팅 정책을 일관되게 유지하는 네트워크 그룹을 의미한다. → 동일한 네트워크 시스템을 가진 영역이라고 생각하면 된다.
AS번호는 16bit, 32bit 형식이 있는데 16bit는 1~65535, 32bit는 65535 ~ 42억 까지의 숫자를 가진다
AS의 구성에는 Internal Router와 Border Router가 있으며 Internal Router는 AS내부 네트워크간의 라우팅을 처리하며 Border Router는 다른 AS와 연결되어 외부 라우팅 정보를 공유한다.
IGP(Interior Gateway Protocol)
동일한 AS 내에서 사용하는 라우팅 프로토콜로 OSPF, EIGRP, RIP 방식이 있음 - AS 내부의 라우터들끼리 라우팅 정보를 교환한다.
EGP(Exterior Gateway Protocol)
다른 AS간의 라우팅 정보를 교환하기 위해 사용하는 라우팅 프로토콜로 다른 AS와의 라우팅 정보를 교환하여 인터넷 전체의 연결을 제공한다. 대표적으로 BGP가 있다.
AWS Endpoint
AWS에서의 엔드포인트는 VPC내에서 AWS 서비스에 대한 연결을 제공하는 방법으로 외부와의 통신없이 VPC내부의 통신을 통해 다른 서비스로 접근을 할 수 있다. AWS 내부 네트워크를 사용하므로 네트워크 비용을 줄일 수 잇다.
Gateway Endpoint
S3, DynamoDB에서만 제공하는 엔드포인트로 엔드포인트를 생성하고 VPC의 라우팅 테이블에 등록하여 S3, DynamoDB에 대한 트래픽을 라우팅할 수 있다.
구성방법
- VPC - Create Endpoint
- S3 or DynamoDB 선택
- VPC 라우팅 테이블과 연결
장점
추가요금이 없고 엔드포인트를 생성하고 라우팅 테이블과 연결시키므로 구성이 간단하며 빠르다.
단점
사용가능한 서비스가 제한적이고 라우팅 테이블에서 직접 경로를 구성해야 한다
Interface Endpoint
대부분의 AWS 서비스에서 사용가능한 엔드포인트 방식이며 ENI(Elastic Network Interface)를 통해 Private IP주소를 할당하며 서비스에 연결한다.(PrivateLink 사용)
게이트웨이 엔드포인트와는 달리 서비스마다 새로만들고 보안그룹을 설정해야 한다.
구성방법
- VPC - Create Endpoint
- Interface 타입 서비스 선택
- 사용할 리소스가 있는 서브넷 선택
- 보안그룹 선택
장점
다양한 AWS 서비스에서 사용가능, Private IP, PrivateLink를 통해 서비스 연결이 가능하다.
단점
ENI를 사용한다는 점은 네트워크의 IP주소를 소비한다는 의미, 시간당 요금 및 데이터 처리비용이 존재하고 처리시간에 지연시간이 발생할 수 있다. 구성이 Gateway Endpoint에 비해서는 복잡하다.
후기
아직 라우팅에 대해 학습할게 정말 많이 남았다...(OSPF, BGP)
AWS의 Endpoint는 실습해볼만 한 것 같다.
내년에는 AWS SA Pro에 도전하고 싶다.
'클라우드 > AWS' 카테고리의 다른 글
[AWS] S3 + Vue CI/CD 프론트 배포하기 (3) | 2024.07.24 |
---|---|
[AWS, 재해복구(DR)] AWS재해복구(DR) 아키텍처 - 2편 (1) | 2023.12.21 |
[AWS, 재해복구(DR)] AWS와 재해복구(DR) 아키텍처 - 1편 (1) | 2023.12.07 |
[AWS] AWS SAA-C03 자격증 후기 (0) | 2023.11.11 |