Chapter 21

클라우드 네트워크

클라우드 콘솔에서 버튼 몇 번만 누르면 서울에 서버가 생기고, 나만의 사설 네트워크와 방화벽, 로드 밸런서가 1분 안에 만들어진다. 케이블을 꽂은 사람은 아무도 없다. 20장의 거대한 물리 네트워크 위에 수백만 고객이 각자 “내 것” 같은 네트워크를 겹쳐 쓰고 있는 것이다. 서로 같은 IP 주소를 써도 섞이지 않고, 남의 서버에는 절대 닿지 않는다. 어떻게 가능할까? 이 장은 소프트웨어로 만든 네트워크, 그리고 전 세계 사용자를 가장 가까운 서버로 안내하는 기술을 다룬다.

리전, 가용 영역, 엣지

대형 클라우드는 세계를 리전(region)으로 나눈다. 리전은 서울, 도쿄, 버지니아처럼 한 도시권에 모인 데이터센터 묶음이다. 리전 안에는 보통 셋 이상의 가용 영역(Availability Zone, AZ)이 있다. AZ는 전력·냉각·네트워크가 서로 독립된 데이터센터(또는 그 묶음)로, 한 AZ에 정전이나 화재가 나도 다른 AZ는 멀쩡하도록 수 km~수십 km 떨어져 있다. 그러면서도 같은 리전 안의 AZ끼리는 전용 광케이블로 이어져 왕복 지연이 보통 1~2 ms 수준이다. 그래서 서비스를 여러 AZ에 나눠 두고 데이터를 실시간 복제할 수 있다.

리전과 리전 사이는 클라우드 회사가 직접 깔거나 빌린 해저·육상 광케이블로 만든 사설 백본이 잇는다(5장). 공용 인터넷을 거치지 않으므로 혼잡이 덜하고 경로가 안정적이다. 그리고 사용자 가까이에는 수백 곳의 엣지 PoP(Point of Presence)가 있다. 리전보다 훨씬 작은 거점으로, 콘텐츠 캐시(CDN), DNS, 보안 필터, TLS 연결 종료를 맡아 사용자의 첫 접속 지점을 몇 ms 거리로 끌어당긴다.

리전: 서울 AZ-a데이터센터2~3동 AZ-b독립 전력독립 냉각 AZ-c수~수십 km떨어짐 AZ 간 왕복 ~1–2 ms · 전용 광링크 동기 복제, 다중 AZ 배치가 가능한 거리 리전: 버지니아 · 프랑크푸르트 … 전 세계 수십 개 리전, 각각 AZ 3개 이상 리전 간: 데이터 주권·재해 복구 단위 사설 백본 예: 서울↔버지니아 왕복 ~180 ms PoP PoP PoP PoP PoP 엣지 PoP: 수백 곳 · 사용자에서 수 ms CDN 캐시, DNS, TLS 종료, DDoS 방어 사용자 → 가까운 PoP → 백본 → 리전 → AZ
그림 21-1. 클라우드의 지리적 계층. AZ는 “고장의 경계”, 리전은 “지리와 법(데이터 주권)의 경계”, 엣지 PoP는 “사용자와의 첫 만남 지점”이다.
전국 물류망

리전은 권역별 대형 물류 단지, AZ는 같은 단지 안에서 서로 다른 변전소를 쓰는 창고 동들이다. 한 동에 불이 나도 옆 동에서 출고가 계속된다. 엣지 PoP는 동네마다 있는 편의점 택배 보관함이다. 자주 찾는 물건(인기 영상, 이미지)은 아예 보관함에 미리 갖다 놓는다.

서버 안의 스위치: 가상화와 네트워크

클라우드 서버 한 대(물리 호스트)에는 여러 고객의 가상 머신(VM)이 함께 산다. VM마다 진짜처럼 보이는 가상 NIC가 있고, 하이퍼바이저 안의 가상 스위치(virtual switch)가 이 가상 NIC들과 물리 NIC 사이에서 이더넷 스위치(6장) 노릇을 한다. 같은 호스트 안의 VM끼리는 패킷이 케이블을 타지 않고 메모리 복사로 오간다. 오픈소스 Open vSwitch(OVS)가 대표적이다.

가상 스위치는 단순히 넘기기만 하지 않는다. 이 패킷이 어느 고객의 어느 가상망 소속인지 확인하고, 방화벽 규칙(보안 그룹)을 검사하고, 다른 호스트로 갈 패킷은 오버레이 헤더로 감싼다. 이 일을 CPU가 다 하면 손님에게 팔 CPU가 줄어든다. 그래서 대형 클라우드는 이 기능을 SmartNIC/DPU(17장) 같은 전용 하드웨어로 옮겼다. AWS의 Nitro 카드가 대표적이다.

컨테이너는 VM보다 가볍게, 운영체제 커널 하나를 여러 앱이 나눠 쓴다. 컨테이너마다 독립된 네트워크 네임스페이스(자기만의 인터페이스·라우팅 테이블)를 받고, 한 쌍으로 이어진 가상 이더넷 케이블(veth)로 호스트의 브리지에 연결된다. 쿠버네티스는 모든 파드(pod)가 고유 IP를 갖고 NAT 없이 서로 통신해야 한다는 규칙만 정하고, 실제 연결은 CNI 플러그인(Calico, Cilium 등)에 맡긴다.

물리 호스트 (서버 한 대) VM 1 (고객 A)vNIC VM 2 (고객 B)vNIC VM 3 (고객 A)vNIC 가상 스위치 (하이퍼바이저 / SmartNIC) 고객별 가상망 구분 · 보안 그룹 검사 · VXLAN 캡슐화 물리 NIC → ToR (20장) 컨테이너 (같은 커널 공유) 파드 110.1.0.5 파드 210.1.0.6 파드 310.1.0.7 vethvethveth 리눅스 브리지 / eBPF 데이터 경로 (CNI) 각 파드는 자기 네트워크 네임스페이스와 IP 다른 호스트의 파드와는 라우팅 또는 오버레이로
그림 21-2. 한 대의 물리 서버 안. 왼쪽: 가상 스위치가 서로 다른 고객의 VM을 가르고 물리 NIC로 내보낸다. 오른쪽: 컨테이너(파드)는 veth 쌍으로 브리지에 붙는다. 가상 세계에도 NIC·스위치·라우터가 그대로 있다.

VPC: 내 전용 가상 네트워크 설계하기

VPC(Virtual Private Cloud)는 클라우드 안에 만드는 나만의 사설 네트워크다. 먼저 10.0.0.0/16처럼 사설 주소 범위(7장)를 정하고, 이를 AZ별 서브넷으로 쪼갠다. 다른 고객도 똑같이 10.0.0.0/16을 써도 서로 보이지 않는다. 각 서브넷에는 라우팅 테이블(8장)이 붙는다.

여기에 두 겹의 방화벽이 붙는다. 둘의 차이가 시험에도, 실무 장애에도 자주 나온다.

보안 그룹(security group)네트워크 ACL(network ACL)
붙는 곳서버(가상 NIC) 하나하나서브넷 경계
상태상태 저장(stateful): 들어온 요청의 응답은 자동 허용무상태(stateless): 응답 패킷도 규칙으로 따로 허용해야 함
규칙허용만 있음 (나머지 모두 거부)허용과 거부, 번호 순서대로 평가
출처 지정IP 범위 또는 다른 보안 그룹(“웹 서버 그룹에서 오는 것”)IP 범위만
건물 출입 관리

네트워크 ACL은 층마다 있는 출입구 경비원이다. 명단만 보고 들어오는 사람과 나가는 사람을 따로 검사하며, 아까 들어간 사람이 나오는지 기억하지 못한다. 보안 그룹은 사무실 문의 직원이다. 방문객 목록을 기억하므로, 내가 부른 손님이 돌아가는 것은 따로 묻지 않는다.

SIMULATOR

VPC 설계와 도달성 점검

배치
보안 그룹 규칙
프라이빗 서브넷 네트워크 ACL
점검 항목을 누르면 그 경로가 그림에 그려진다(초록 = 통함, 빨강 ✕ = 막힌 곳). ✓/✗ 표시의 색은 “바라는 결과인가”를 뜻한다. 인터넷 → DB가 막혀 있으면 초록 ✗로 좋은 것이다. 단순화: 네트워크 ACL은 프라이빗 서브넷에만 두고, 인바운드는 VPC 내부와 응답 포트를 허용한다고 가정했다. 같은 서브넷 안의 통신은 ACL을 지나지 않는다. 해볼 것: ① DB를 퍼블릭에 두고 3306을 0.0.0.0/0에 열어 보자(실제 데이터 유출 사고의 흔한 원인). ② NAT를 끄면 프라이빗 DB가 보안 패치를 못 받는다. ③ ACL의 임시 포트 허용을 끄면?
예측해 보기

프라이빗 서브넷의 네트워크 ACL이 인바운드 3306은 허용하지만, 아웃바운드 임시 포트(1024–65535)를 막았다. 보안 그룹은 모두 올바르다. 웹 서버 → DB 질의는?

VPC 시뮬레이터에서 ‘임시 포트 허용’을 끄고 “웹 → DB” 항목을 눌러 보자.

웹 서버의 연결은 출발 포트로 임시 포트(예: 49152)를 쓰므로, DB의 응답은 “3306 → 49152”로 나간다. 보안 그룹은 상태 저장이라 응답을 기억하지만, 네트워크 ACL은 무상태라 응답도 별도 규칙이 필요하다. 연결이 맺어지지 않고 시간 초과로 끝나, 원인을 찾기 어려운 장애가 된다.

오버레이: 상자 안에 상자를 한 번 더

고객 A의 VM(10.0.1.5)이 다른 호스트에 있는 같은 고객의 VM(10.0.2.9)에 패킷을 보낸다고 하자. 물리 데이터센터망(20장의 리프-스파인)은 고객의 사설 주소를 모른다. 게다가 고객 B도 똑같은 10.0.1.5를 쓸 수 있다. 해법은 3장의 캡슐화를 한 번 더 하는 것이다. 출발 호스트의 가상 스위치가 VM의 이더넷 프레임을 통째로 새 상자에 넣고, 겉면에 물리 호스트의 IP와 가상망 번호를 적는다. 물리망은 겉 상자만 보고 호스트에서 호스트로 나르고, 도착 호스트가 겉 상자를 벗겨 안쪽 프레임을 VM에게 건넨다.

이렇게 물리망(언더레이(underlay)) 위에 소프트웨어로 그린 가상망을 오버레이(overlay)라 한다. 가장 널리 쓰는 형식이 VXLAN(Virtual eXtensible LAN, RFC 7348)이다. 안쪽 프레임 앞에 8바이트 VXLAN 헤더를 붙이고 UDP(목적지 포트 4789)/IP/이더넷으로 감싼다. VXLAN 헤더의 VNI(VXLAN Network Identifier)는 24비트라 2²⁴ ≈ 1,677만 개의 가상망을 구분한다. VLAN(6장)의 12비트(4,094개)로는 수백만 고객을 감당할 수 없었다. 바깥 UDP 출발 포트는 안쪽 흐름의 해시로 정해, 20장의 ECMP가 오버레이 흐름도 여러 경로에 고르게 나누게 한다. 요즘은 확장 필드를 붙일 수 있는 GENEVE(UDP 6081)도 많이 쓴다.

바깥 (언더레이: 물리망이 보는 부분) 안쪽 (오버레이: VM이 보낸 원래 프레임) 바깥 이더넷14 B 바깥 IP20 B · 호스트 IP UDP8 B · 포트 4789 VXLAN8 B · VNI 24비트 안쪽 이더넷VM MAC 안쪽 IP10.0.x.x TCP + 데이터원래 내용 추가되는 헤더 14 + 20 + 8 + 8 = 50바이트 VM의 프레임 그대로 (변경 없음) ① VM 10.0.1.5가 10.0.2.9로 프레임을 보낸다 → ② 출발 호스트의 가상 스위치(VTEP)가 “10.0.2.9는 호스트 192.168.7.21에 있다”를 조회 ③ 50바이트를 덧씌워 물리망으로 → 리프·스파인은 바깥 IP만 보고 전달 → ④ 도착 호스트가 VNI 확인 후 껍데기를 벗겨 VM에 전달
그림 21-3. VXLAN 캡슐화. 3장에서 본 “상자 속 상자”가 한 겹 더 늘었다. 바깥 IPv4 기준 50바이트(바깥 VLAN 태그가 있으면 54, IPv6면 70바이트)가 추가된다. 캡슐을 씌우고 벗기는 장치를 VTEP(VXLAN Tunnel End Point)이라 한다.
CALCULATOR

오버레이 오버헤드와 MTU

물리망(언더레이) MTU
바깥 IP
추가 헤더—
VM에 줄 수 있는 최대 MTU—
바깥 프레임 크기—
전송 효율 (안쪽 IP / 바깥 프레임)—
프레임 길이는 이더넷 헤더 14바이트를 포함하고 FCS·프리앰블은 뺐다. 물리망 MTU(IP 패킷 기준)가 1500이면 VM에는 1450까지만 줄 수 있다. 그래서 클라우드 데이터센터는 물리망을 9000바이트급 점보 프레임으로 운영하고, VM에 1500 이상(예: 9001)을 그대로 준다. 해볼 것: 패킷을 64바이트로 줄이면 효율이 급격히 떨어진다. 작은 패킷이 많은 서비스(DNS, 게임)일수록 헤더 비용이 크다.

SDN: 네트워크의 두뇌를 떼어 내기

전통적인 라우터와 스위치는 장비마다 두뇌와 손발을 함께 갖는다. 두뇌인 제어 평면(control plane)이 이웃과 라우팅 정보를 교환해 경로를 계산하고(8장의 OSPF, BGP), 손발인 데이터 평면(data plane)이 그 결과표대로 패킷을 초당 수십억 개씩 넘긴다(17장). 수천 대가 각자 계산하고 각자 설정을 받으니, 네트워크 전체를 한 번에 바꾸기가 어렵다.

SDN(Software-Defined Networking)은 두뇌를 장비 밖으로 꺼내 컨트롤러라는 소프트웨어에 모은다. 컨트롤러는 망 전체 지도를 보고 경로를 계산해 각 스위치의 “일치 → 동작” 표(이 주소면 3번 포트로, 저 포트면 버리기)를 직접 채운다. 2008년 스탠퍼드에서 나온 오픈플로우(OpenFlow)가 그 표를 원격으로 채우는 표준 규약이었다. 구글은 이 방식으로 데이터센터 간 백본(B4)의 링크 사용률을 크게 끌어올렸다고 발표했다.

전통: 장비마다 두뇌 SDN: 중앙 컨트롤러 클라우드: 분산 SDN 라우터 라우터 라우터 보라 점 = 제어 평면 이웃끼리 경로 정보 교환 컨트롤러 OpenFlow 스위치 스위치 스위치 스위치는 표대로 넘기기만(데이터 평면) 망 전체를 한 프로그램으로 제어 제어 평면 (복제된 DB)VPC·SG·라우팅 설정 호스트가상 스위치 호스트가상 스위치 호스트가상 스위치 수백만 호스트가 각자 규칙 집행 물리망은 단순한 IP 패브릭
그림 21-4. 제어 평면의 세 가지 모습. 클라우드는 “의도”(이 VPC, 이 보안 그룹)를 중앙에서 관리하되, 실제 패킷 판단은 각 호스트의 가상 스위치(또는 SmartNIC)가 나눠서 한다. 컨트롤러가 잠시 멈춰도 이미 받은 규칙으로 패킷은 계속 흐른다.

순수한 중앙 집중 SDN은 컨트롤러가 병목이자 단일 장애점이 될 수 있다. 그래서 오늘날 클라우드는 분산 SDN을 쓴다. 사용자가 콘솔에서 보안 그룹을 바꾸면, 그 “의도”가 복제된 제어 평면 데이터베이스에 기록되고, 관련 호스트 수천 대의 가상 스위치에 몇 초 안에 퍼진다. 물리 스위치는 VXLAN 바깥 IP만 보고 나르는 단순한 IP 패브릭으로 남는다. 마이크로소프트의 VFP, AWS의 Nitro·Hyperplane, 구글의 Andromeda가 이런 구조다. 네트워크가 사실상 거대한 분산 소프트웨어가 된 것이다.

로드 밸런서: 손님을 창구에 나눠 보내기

인기 서비스는 서버 한 대로 감당할 수 없다. 앞에 로드 밸런서(load balancer)를 두어 하나의 주소로 들어온 요청을 뒤의 서버 여러 대에 나눈다. 고장 난 서버는 주기적인 헬스 체크(health check)로 찾아내 명단에서 뺀다.

나누는 방법(알고리즘)도 여러 가지다. 라운드 로빈은 순서대로 한 번씩, 최소 연결은 지금 처리 중인 요청이 가장 적은 서버에, 해시는 클라이언트 IP 같은 값의 해시로 정해 같은 손님이 늘 같은 서버로 가게 한다.

SIMULATOR

로드 밸런서: 알고리즘, 느린 서버, 장애

알고리즘
요청 종류
 
평균 응답 (최근 5초)—
p99 응답 (최근 5초)—
실패한 요청 (누적)—
초당 요청—
서버마다 동시에 4개씩 처리하고(작업자 4명), 요청 하나는 평균 50 ms가 걸린다. ‘가끔 무거운 요청’은 10%가 평균 275 ms, 나머지가 25 ms다. 막대의 진한 부분은 처리 중, 옅은 부분은 대기열이다. IP 해시는 클라이언트 50명 중 몇 명이 요청 대부분을 보내는(지프 분포) 상황으로 만들었다. 헬스 체크는 1초마다, 2번 연속 실패하면 명단에서 뺀다. 해볼 것: ① 구형 서버를 켜고 라운드 로빈과 최소 연결을 비교하자. ② 장애를 내면 제외되기까지 약 2초 동안 실패가 쌓인다. 최소 연결은 즉시 거절되는 죽은 서버를 “한가하다”고 착각해 더 많이 보낸다(블랙홀 효과). ③ 서버 3대에 부하 70%에서 한 대가 죽으면 남은 둘이 감당할 수 있을까?

일관된 해싱: 서버가 바뀌어도 덜 흔들리게

캐시 서버나 분산 저장소는 “이 키(사용자 ID, 파일 이름)는 어느 서버에 있나”를 해시로 정한다. 가장 단순한 방법은 hash(키) mod N이다. 그런데 서버가 N대에서 N+1대가 되면 나머지 값이 거의 다 바뀌어 키의 대부분이 다른 서버로 옮겨 간다. 캐시라면 순식간에 거의 모든 캐시가 비어 원본 DB에 요청이 폭주한다.

일관된 해싱(consistent hashing)은 해시 값을 둥근 고리 위의 위치로 본다. 서버도 고리 위에 놓고, 각 키는 시계 방향으로 가다 처음 만나는 서버에 맡긴다. 서버가 하나 늘면 새 서버 바로 앞 구간의 키만 옮겨 가므로, 평균 1/(N+1)만 움직인다. 서버 하나를 고리 여러 곳에 가상 노드로 뿌리면 구간이 고르게 나뉘어 부하 편차도 줄어든다. 아마존 Dynamo, 카산드라, CDN 캐시, 구글의 Maglev 로드 밸런서가 이 아이디어를 쓴다.

SIMULATOR

해시 링: 노드를 더하고 빼면 키가 얼마나 옮겨 갈까

배정 방식
 
노드 수—
방금 옮겨 간 키—
이론값—
가장 많은 노드 / 평균—
점 하나가 키(총 400개)이고 색은 맡은 노드다. 고리 바깥의 굵은 눈금이 노드(가상 노드)의 위치다. 방금 옮겨 간 키는 크게, 테두리를 그려 표시한다. 해볼 것: ‘hash mod N’에서 노드를 추가하면 키 대부분이 이사한다. 일관된 해싱에서는 약 1/(N+1)만 움직인다. 가상 노드가 1개면 구간 길이가 들쭉날쭉해 어떤 노드는 평균의 2배 넘게 맡는다. 가상 노드를 100개로 늘려 균형을 비교하자.

가장 가까운 곳에서 답하기: CDN, 애니캐스트, 글로벌 로드 밸런싱

빛이 광섬유에서 1 ms에 약 200 km를 가므로(5장), 서울에서 버지니아 리전까지는 아무리 빨라도 왕복 150 ms를 넘는다. 웹 페이지 하나에 왕복이 수십 번 필요하다면 이 거리만으로 몇 초가 된다. 해법은 사용자 가까이에서 답하는 것이다.

SIMULATOR

지도에서 사용자 위치를 눌러 보세요

연결 방식
선택된 리전—
리전까지 왕복 (RTT)—
다음 후보—
첫 접속 지점까지 RTT—
사각형 = 클라우드 리전 10곳, 작은 점 = 엣지 PoP. RTT는 대원 거리 × 1.4(실제 케이블 경로 우회) ÷ 광섬유 속도(200 km/ms) × 2 + 접속망 2 ms로 어림했다. 엣지 모드에서는 사용자 → 가장 가까운 PoP(TCP·TLS 종료)는 공용 인터넷, PoP → 리전은 사설 백본(점선)이다. 해볼 것: 아프리카나 남미를 눌러 보자. 리전은 멀어도 엣지 PoP는 가깝다. 장애를 켜면 다음 리전으로 넘어가며 RTT가 얼마나 늘어나는지 보자.

회사와 클라우드 잇기, 그리고 비용

대부분의 기업은 자기 데이터센터나 사무실을 클라우드와 함께 쓰는 하이브리드, 또는 여러 클라우드를 함께 쓰는 멀티 클라우드다. 이 둘을 잇는 방법은 크게 두 가지다.

사이트 간 VPN전용선 (Direct Connect, ExpressRoute 류)
경로공용 인터넷 위의 암호화 터널(IPsec, 22장)통신사 전용 회선으로 클라우드 접속 지점에 물리 연결
대역폭터널당 약 1 Gbps 수준1 / 10 / 100 Gbps 포트(최근 400G도)
지연·품질인터넷 상황에 따라 흔들림일정하고 예측 가능
준비 기간·비용몇 분, 저렴몇 주(회선 공사), 월정액 + 포트 비용
흔한 쓰임소규모 지사, 전용선의 예비 경로대용량 데이터 이전, 금융·제조 핵심 시스템

클라우드 네트워크 설계에서 의외로 큰 변수는 돈이다. 대형 클라우드는 보통 데이터가 들어오는 것(ingress)은 무료지만, 인터넷으로 나가는 것(이그레스(egress))에는 GB당 약 0.05~0.09달러 수준의 요금을 매긴다(양이 많을수록 할인). 월 100 TB를 내보내면 수천 달러다. 같은 리전의 AZ 사이, 리전 사이 전송에도 요금이 붙는다. 그래서 CDN으로 엣지에서 응답하고, 통신이 많은 서비스는 같은 AZ에 두고, 데이터를 클라우드 밖으로 자주 옮기지 않도록 설계한다. 데이터를 한 번 넣으면 빼기 비싼 구조가 이른바 “클라우드 종속”의 한 원인으로 지적되기도 한다.

서비스 메시와 제로 트러스트

서비스가 수백 개의 작은 마이크로서비스로 쪼개지면, 서비스끼리의 통신(동서 트래픽)을 관리하는 일이 커진다. 서비스 메시(service mesh)는 각 서비스 옆에 작은 프록시(사이드카, 예: Envoy)를 붙여 재시도, 시간 제한, 부하 분산, 관측, 그리고 서로 인증서를 확인하는 상호 TLS(mTLS)를 앱 코드 대신 처리한다. 이는 “내부망 안이니 믿는다”는 옛 경계 보안을 버리고, 모든 요청을 출처와 무관하게 매번 인증·인가하는 제로 트러스트(22장)의 실천 방법이기도 하다. VPC와 보안 그룹은 울타리, 서비스 메시와 mTLS는 문마다의 신분증 검사다.

핵심 정리

  1. 클라우드는 리전(지리) → 가용 영역(독립된 고장 단위, 서로 왕복 1~2 ms) → 사용자 가까운 엣지 PoP의 계층으로 이뤄지고, 리전 사이는 사설 백본이 잇는다.
  2. 하이퍼바이저의 가상 스위치(또는 SmartNIC)가 VM·컨테이너의 패킷을 고객별로 가르고 방화벽과 캡슐화를 맡는다.
  3. VPC는 서브넷·라우팅 테이블·인터넷/NAT 게이트웨이로 구성한다. 보안 그룹은 서버 단위·상태 저장, 네트워크 ACL은 서브넷 단위·무상태다.
  4. VXLAN은 VM 프레임을 UDP 4789로 감싸 물리망(언더레이)과 가상망(오버레이)을 분리한다. VNI 24비트로 약 1,677만 개 가상망, 오버헤드는 50바이트다.
  5. SDN은 제어 평면을 데이터 평면에서 떼어 소프트웨어로 중앙 관리한다. 클라우드는 의도를 중앙에서, 집행은 호스트마다 하는 분산 SDN을 쓴다.
  6. 로드 밸런서는 L4(연결)·L7(HTTP) 수준에서 요청을 나누고 헬스 체크로 장애 서버를 뺀다. 일관된 해싱은 노드가 바뀌어도 키의 약 1/(N+1)만 옮긴다.
  7. CDN·애니캐스트·GSLB로 사용자를 가까운 곳에서 받고, 하이브리드 연결은 VPN 또는 전용선으로 한다. 나가는 트래픽(이그레스) 비용이 설계를 좌우한다.

확인 퀴즈

서비스를 한 리전 안의 여러 가용 영역(AZ)에 나눠 배치하는 주된 목적은?

AZ는 전력·냉각·네트워크가 독립된 고장 단위다. 서로 왕복 1~2 ms 정도로 가까워 실시간 복제가 가능하다. 다른 나라 사용자에게 가까워지는 것은 다른 리전이나 엣지의 역할이다.

프라이빗 서브넷의 DB 서버가 인터넷에서 보안 패치를 내려받아야 한다. 바깥에서 DB로 들어오는 연결은 계속 막아야 한다. 무엇을 쓰나?

NAT 게이트웨이는 안에서 시작한 연결만 바깥으로 내보내고 그 응답만 들여보낸다. 바깥에서 먼저 시작하는 연결은 받을 길이 없다.

보안 그룹과 네트워크 ACL의 차이로 옳은 것은?

보안 그룹은 서버 단위·상태 저장·허용 규칙만, 네트워크 ACL은 서브넷 단위·무상태·허용/거부 규칙을 번호순으로 평가한다.

VXLAN에서 가상망을 구분하는 VNI는 24비트다. 구분할 수 있는 가상망의 수는 대략?

2²⁴ = 16,777,216. VLAN의 12비트(4,094개 사용 가능)로는 수백만 고객의 가상망을 구분할 수 없어 VXLAN이 등장했다.

캐시 서버 10대를 hash(키) mod N 방식으로 쓰다가 1대를 추가했다. 대략 몇 %의 키가 다른 서버로 옮겨 갈까? 일관된 해싱이라면?

mod N에서는 N/(N+1) ≈ 10/11 ≈ 91%가 이사한다. 일관된 해싱은 새 노드가 맡게 될 구간만, 약 1/(N+1) ≈ 9%만 옮긴다.

공용 DNS 1.1.1.1은 전 세계 어디서나 같은 주소인데도 가까운 서버가 답한다. 이를 가능하게 하는 것은?

여러 PoP가 같은 주소를 동시에 광고하면, 인터넷 라우팅이 각 사용자를 BGP 기준으로 가장 가까운 PoP로 보낸다. 한 곳이 장애 나면 광고를 거두기만 하면 다른 곳으로 흘러간다.