이 수련서 사용법
이 책은 누구를 위한 책인가
이 책은 AI·웹 서비스를 실제로 세상에 내놓고, 다치지 않게 지키며, 조직 안팎의 사람이 안전하게 접속하도록 인프라를 설계·구축·운영하는 사람을 위한 교재입니다. 코딩 에이전트나 프레임워크로 애플리케이션 코드를 작성해 본 풀스택·백엔드 엔지니어, 사내 AI 도구와 개발 망(ZTNA·VPN)을 도입·설치해야 하는 인프라·보안 담당자, 여러 환경을 코드형 인프라(IaC)로 일관되게 관리하려는 데브옵스·플랫폼 엔지니어가 주된 독자입니다. 파란띠(AI 앱 빌더)나 빨간띠(LLM API 개발자) 수준의 애플리케이션 이해와 리눅스·네트워크·클라우드 배포의 기초 감각을 갖췄다고 가정합니다. 그 정도 배경이 있으면 이 책 한 권만으로 AI·클라우드 인프라 특기 과정(AIN)의 전 범위를 처음부터 끝까지 익힐 수 있도록 썼습니다.
AI 시대의 인프라는 과거의 웹 인프라와 닮은 듯하면서도 결정적인 지점에서 다릅니다. 첫째, 코딩 에이전트 덕분에 애플리케이션 기능은 하루에도 몇 번씩 만들어지지만, 환경 변수 하나가 클라이언트 번들에 섞이거나 데이터베이스 행 수준 보안(RLS) 정책 하나가 빠지면 수초 만에 전체 고객 데이터가 노출됩니다. 둘째, LLM 스트리밍 응답과 긴 도구 호출 때문에 서버리스 함수의 실행 시간·리전 배치·커넥션 풀링 방식이 서비스의 생사를 가릅니다. 셋째, 클라우드 콘솔에서 마우스로 클릭해 만든 설정은 시간이 지나면 아무도 재현할 수 없는 그림자 인프라가 되므로, Terraform 같은 선언적 코드와 장기 비밀키 없는 OIDC 파이프라인이 필수 기본기가 되었습니다. 넷째, 사내 위키·모델 게이트웨이·개발 데이터베이스를 지키는 방식도 전통적인 경계형 VPN에서 벗어나 아웃바운드 터널, 메시 VPN, 제로트러스트 네트워크 접근(ZTNA)으로 빠르게 이동하고 있습니다.
이 책은 온프레미스 물리 서버의 하드웨어 수리나 데이터센터 광케이블 포설 같은 물리 계층 공사는 다루지 않습니다. 대신 오늘날 AI·웹 서비스 팀이 매일 마주하는 다섯 가지 핵심 층위—관리형 앱·데이터 플랫폼(Vercel·Supabase), 코드형 인프라(Terraform·CI/CD), 글로벌 DNS·엣지 네트워크(Route 53·Cloudflare), 사내 네트워크 보안과 원격 접속(ZTNA·VPN 도입과 설치), 그리고 인프라 신뢰성·비밀 관리·장애 대응—을 왜 그렇게 설계해야 하는지 원리부터 실무 결정까지 촘촘하게 파고듭니다.
이 책의 구성
본문은 시험 설계도의 다섯 도메인을 순서대로 한 장씩 다룹니다.
- **1장 관리형 앱·데이터 플랫폼 (기초: Vercel·Supabase)**에서는 가장 빠르게 제품을 올리는 관리형 플랫폼의 내부 작동 원리와 보안 경계를 다룹니다. Preview·Production 환경 분리,
NEXT_PUBLIC_변수와 서버 전용 비밀값의 경계, 배포 보호와 웹훅 자동화 우회, 함수 리전(icn1)과 데이터베이스 물리 거리, Fluid Compute와 스트리밍, Supavisor 트랜잭션 모드(6543)와 세션 모드(5432), Row Level Security(RLS)의USING과WITH CHECK,anon키와service_role키의 분리, Auth 리다이렉트 허용 목록과 비공개 Storage 서명 URL을 배웁니다. - **2장 코드형 인프라와 배포 자동화 (중수: Terraform·IaC)**에서는 수동 클릭 구성을 넘어 선언적 코드로 인프라를 통제하는 법을 익힙니다. 상태 파일(
terraform.tfstate)의 역할, S3 원격 백엔드와 상태 잠금(State Locking), 모듈화와 환경별 상태 격리,terraform plan의 기호(~제자리 수정과-/+교체) 해독,prevent_destroy와moved/import블록, 상태 파일 내 평문 비밀 노출 방지, 드리프트(Drift) 탐지와 복구, 그리고 GitHub Actions OIDC(AssumeRoleWithWebIdentity)를 통한 무비밀키 배포 파이프라인을 다룹니다. - **3장 글로벌 DNS·엣지 네트워크 (고수: Route 53·Cloudflare)**에서는 사용자 요청이 서버에 닿기 전의 모든 관문을 설계합니다. Route 53의 A·AAAA·CNAME·Alias 레코드(루트 도메인 제약 해결), 라우팅 정책(단순·가중치·지연 시간·장애 조치)과 헬스 체크, 무중단 이전을 위한 사전 TTL 단축, DNSSEC과 CAA, Cloudflare의 프록시(주황 구름)와 DNS 전용(회색 구름), SSL/TLS 모드(
Flexible의 위험성과Full (Strict)+ Origin CA·mTLS), WAF와 레이트 리밋, 개인화 API·SSE 스트리밍의 캐시 오염 방지, Workers·Queues·AI Gateway를 통한 모델 트래픽 관측과 폴백을 배웁니다. - **4장 사내 네트워크 보안과 원격 접속 (실전: ZTNA·VPN 도입과 설치)**에서는 조직 내부 자산과 원격 근무 환경을 안전하게 잇는 실전 설계를 다룹니다. 전통 경계형 VPN의 횡적 이동(Lateral Movement) 위험과 제로트러스트(NIST SP 800-207), 인바운드 포트를 모두 닫는 아웃바운드 커넥터(
cloudflaredCloudflare Tunnel), WireGuard 기반 메시 VPN(Tailscale)의 서브넷 라우터·DERP 릴레이·ACL, 가정용 공유기 대역(192.168.x.x) 충돌을 푸는 분할 터널링(Split Tunneling)과 사내 도메인 노출을 막는 분할 시야 DNS(Split-Horizon DNS), IdP(SSO·MFA·SCIM 퇴사자 자동 회수)와 디바이스 포스처, 그리고 사내 TLS 검사 루트 CA 인증서를 개발자 단말과 CLI 도구(NODE_EXTRA_CA_CERTS,SSL_CERT_FILE)에 장애 없이 배포하는 절차를 익힙니다. - 5장 인프라 신뢰성·비밀 관리·장애 대응에서는 살아 있는 서비스를 멈추지 않고 운영하는 기술을 다룹니다. 이중 키(Dual-Key) 무중단 비밀 회전과 긴급 폐기, 스냅샷 백업과 시점 복구(PITR)의 RPO·RTO 설계 및 복구 리허설, 애플리케이션과 데이터베이스가 공존하는 Expand-Contract(병렬 변경) 무중단 스키마 마이그레이션, OpenTelemetry 분산 추적과 민감 정보 로그 마스킹, 비용·사용량 이상 징후 경보와 상한, 그리고 장애 격리·롤백 런북과 사후 회고(Postmortem)를 배웁니다.
모든 장은 똑같은 열 개 절로 구성됩니다. 학습 목표와 들어가며로 문제의식을 세우고, 핵심 개념과 깊이 읽기에서 원리와 심화 트레이드오프를 파고든 뒤, 실무 장면 두 편에서 가상의 조직이 겪는 구체적인 의사결정을 따라갑니다. 이어서 시험과 실무에서 가장 많이 속는 자주 틀리는 지점, 시험 전날 훑어보는 한눈에 정리, 원문을 대조할 공식 문서로 확인하기, 스스로 이해도를 점검하는 셀프 체크(정답과 해설은 부록 B), 손으로 직접 설계해 보는 실습 과제 두 편이 이어집니다.
시험 한눈에 보기
AI·클라우드 인프라 특기심사(AIN)는 35문항을 60분 안에 풉니다. 기본 원리와 단일 설정의 정오를 묻는 문항은 2점, 여러 제약 조건(가용성, 보안, 지연 시간, 비용, 배포 순서)을 동시에 놓고 최적의 구성을 고르는 분석형 문항은 3점입니다. 100점 만점 환산 원점수 75점 이상이면 합격하며, 성적표에는 원점수와 함께 1~9등급이 표시됩니다. 무료 연습 세트는 10문항, 25분입니다.
| 장 | 도메인 | 비중 | 핵심 키워드 |
|---|---|---|---|
| 1장 | 관리형 앱·데이터 플랫폼 (기초: Vercel·Supabase) | 20% | Preview/Production 분리, NEXT_PUBLIC_, icn1, Supavisor 6543 vs 5432, RLS USING/WITH CHECK, service_role, Storage 서명 URL |
| 2장 | 코드형 인프라와 배포 자동화 (중수: Terraform·IaC) | 20% | 원격 State와 잠금, 모듈·환경 분리, plan(~ vs -/+), prevent_destroy, moved/import, 상태 보안, 드리프트, GitHub OIDC |
| 3장 | 글로벌 DNS·엣지 네트워크 (고수: Route 53·Cloudflare) | 25% | Alias vs CNAME, 라우팅 정책·헬스 체크, TTL 단축, Full (Strict), WAF·캐시 오염 방지, Workers·Queues·AI Gateway |
| 4장 | 사내 네트워크 보안과 원격 접속 (실전: ZTNA·VPN 도입과 설치) | 20% | NIST SP 800-207, Cloudflare Tunnel, WireGuard·Tailscale 서브넷 라우터·DERP, Split Tunnel·RFC1918 충돌, Split-Horizon DNS, SCIM·포스처·CA 인증서 |
| 5장 | 인프라 신뢰성·비밀 관리·장애 대응 | 15% | Dual-Key 회전, PITR·RPO·RTO, Expand-Contract 마이그레이션, OpenTelemetry·로그 스크러빙, 비용 경보, 장애 롤백 런북 |
도메인별 비중은 3장이 25%로 가장 높고 1·2·4장이 각 20%, 5장이 15%이지만, 실제 시험 문항은 여러 층위를 가로질러 출제됩니다. 예를 들어 Cloudflare 캐시 규칙 문항(3장)이 Vercel의 Cache-Control 헤더 및 Supabase 인증 쿠키(1장)와 연결되고, 사내 개발용 데이터베이스를 외부에서 숨기는 문항(4장)이 Terraform 보안 그룹 변경(2장) 및 무중단 연결 전환(5장)과 이어지는 식입니다. 각 장을 독립된 부품이 아니라 "사용자 요청이 DNS와 엣지를 거쳐 앱과 데이터베이스에 닿고, 코드로 관리되며, 사내망과 운영 체계로 보호되는 하나의 살아 있는 시스템"으로 연결해 읽으세요.
문항은 이렇게 생겼다
시험지는 다섯 가지 객관식 형식으로 구성되며, 모든 문항은 다섯 개 선택지(①~⑤) 가운데 가장 알맞은 하나를 고릅니다.
| 형식 | 시험지에서의 모습 | 핵심 공략법 |
|---|---|---|
| 단일 선택 | 짧은 장애·설계 시나리오와 선택지 다섯 개 | 시나리오의 굵은 제약 조건(예: 무중단, 인바운드 포트 개방 불가, 서버리스 환경)을 모두 만족하는 유일한 선택지를 고른다 |
| 복수 선택 | <보기> 상자의 ㄱ, ㄴ, ㄷ, ㄹ 중 정해진 개수를 묶은 조합 |
각 조치의 부작용(예: 캐시 오염, 잠금 해제, 평문 노출)을 따져 오답 보기를 먼저 지운다 |
| 진술 판정 | <보기> 상자의 기술 진술 중 옳은 것만 모두 고른 조합 |
진술의 앞부분(현상·설정)과 뒷부분(작동 원리·결과)이 모두 정확해야 옳은 진술이다 |
| 순서 배열 | (가)~(마) 작업 단계의 실행 순서 후보 다섯 개 | 무중단 전환(TTL 단축 먼저, 키 추가 먼저, 스키마 확장 먼저)에서 앞 단계가 완료되어야 다음 단계가 안전한 순서를 찾는다 |
| 매칭 | 왼쪽 요구사항·증상과 오른쪽 인프라 기능·설정을 짝지은 후보 다섯 개 | 가장 경계가 뚜렷한 짝(예: 루트 도메인 별칭 ↔ Route 53 Alias)부터 확정해 소거한다 |
인프라 시험에서 가장 흔한 오답 함정은 **"기능은 동작하지만 보안이나 무중단 조건을 깨뜨리는 보기"**입니다. 예를 들어 "RLS 정책 오류가 나니 클라이언트에서 service_role 키로 호출해 해결한다", "도메인 이전 당일에 TTL을 낮추고 즉시 레코드를 바꾼다", "데이터베이스 컬럼 이름을 바꾸기 위해 ALTER TABLE RENAME COLUMN을 배포 전에 먼저 실행한다", "Cloudflare SSL 모드를 Flexible로 두어 원본 서버 인증서 설정을 생략한다" 같은 보기는 당장 눈앞의 오류를 없애 주는 것처럼 보이지만 심각한 보안 사고나 서비스 중단을 부릅니다. 항상 "이 선택지가 운영 환경의 보안 경계와 가용성을 지키는가?"를 먼저 물으세요.
핵심
순서 배열 문항에서는 **"되돌릴 수 없는 단계는 언제나 맨 마지막에 온다"**는 원칙을 기억하세요. 구버전 키 폐기, 이전 서버 종료, 구 컬럼 삭제(Contract), DNS TTL 원상 복구는 모든 트래픽과 애플리케이션이 새 구조로 안전하게 넘어간 것을 확인한 뒤에 실행합니다.
6주 학습 계획
하루 1시간, 주 5일 기준의 권장 진도표입니다. 이미 클라우드 운영 경험이 있다면 1~2주차를 묶어 빠르게 훑고 3~5주차에 시간을 더 쓰세요.
| 주차 | 학습 범위 | 주차별 핵심 산출물 |
|---|---|---|
| 1주 | 1장 관리형 앱·데이터 플랫폼 (Vercel·Supabase) | 환경 변수 분류표(NEXT_PUBLIC_ vs 서버 비밀), RLS USING/WITH CHECK 정책 초안, Supavisor 연결 문자열 점검표 |
| 2주 | 2장 코드형 인프라와 배포 자동화 (Terraform·IaC) | S3 원격 백엔드·잠금 구성안, terraform plan 파괴적 변경(-/+) 검토 체크리스트, GitHub Actions OIDC 신뢰 정책 JSON |
| 3주 | 3장 글로벌 DNS·엣지 네트워크 (Route 53·Cloudflare) | 도메인 무중단 이전 타임라인(TTL 단축 포함), Cloudflare Full (Strict) 및 동적 API 캐시 우회 규칙표, AI Gateway 라우팅 설계안 |
| 4주 | 4장 사내 네트워크 보안과 원격 접속 (ZTNA·VPN) | 사내 리소스 ZTNA 전환 설계도(Cloudflare Tunnel + Tailscale), RFC1918 대역 충돌 해결표, 사내 루트 CA 개발 환경 배포 가이드 |
| 5주 | 5장 인프라 신뢰성·비밀 관리·장애 대응 | Dual-Key 회전 절차서, Expand-Contract 3단계 마이그레이션 계획서, 장애 격리·롤백 런북과 OTel 로그 스크러빙 규칙 |
| 6주 | 부록 A~D 총정리, 셀프 체크 복습, 연습 세트 풀이 | 30개 셀프 체크 문항 무참고 서술, 자주 틀리는 지점 오답 노트 완성 |
핵심
각 장 끝의 실습 과제는 실제 클라우드 계정에 비용을 쓰지 않더라도 구성 파일(HCL, SQL, JSON, DNS 레코드 표, 런북)을 직접 손으로 적어 보도록 설계되어 있습니다. 눈으로만 읽을 때는 당연해 보이던 WITH CHECK 조건이나 AssumeRoleWithWebIdentity의 sub 클레임 조건도 직접 적어 보면 어디서 실수가 나는지 바로 드러납니다.
표기와 출처 원칙
이 책이 설명하는 클라우드·플랫폼 기능과 표준은 2026년 10월 21일에 각 공식 문서에서 확인한 내용을 기준으로 합니다.
- 제품명, CLI 명령어, 환경 변수, HTTP 헤더, 설정 키, SQL·HCL 문법 키워드는 공식 표기 그대로 적습니다(
NEXT_PUBLIC_,x-vercel-protection-bypass,Supavisor,terraform.tfstate,prevent_destroy,Full (Strict),cloudflared,NODE_EXTRA_CA_CERTS). - 기술 용어가 처음 등장할 때는 한국어 설명과 영문 원어를 함께 적고, 이후에는 일관된 용어를 씁니다(예: 행 수준 보안(Row Level Security, RLS), 제로트러스트 네트워크 접근(Zero Trust Network Access, ZTNA), 시점 복구(Point-in-Time Recovery, PITR), 병렬 변경(Expand-Contract)).
- 요금제 한도나 세부 콘솔 메뉴 위치처럼 벤더가 수시로 바꾸는 값보다, 아키텍처 원리와 프로토콜·보안 경계처럼 오래가는 원칙을 중심으로 설명합니다.
- 본문과 실무 장면에 등장하는 회사·기관·서비스·도메인·사건은 모두 학습을 위해 지어낸 허구입니다.
- 코드 블록 안의 예시는 이해를 돕기 위한 핵심 구조이며, 실제 프로덕션에 적용할 때는 각 장의 공식 문서로 확인하기와 부록 D에 수록된 벤더 최신 문서를 함께 대조하세요.