logo
logo
x
바코드검색
BOOKPRICE.co.kr
책, 도서 가격비교 사이트
바코드검색

인기 검색어

실시간 검색어

검색가능 서점

도서목록 제공

심각한 테라폼 중독입니다

심각한 테라폼 중독입니다

(테라폼, 제대로 쓰고 싶은 이들을 위한 인프라 코드 가이드)

홍수민, 정윤의 (지은이)
제이펍
28,000원

일반도서

검색중
서점 할인가 할인률 배송비 혜택/추가 실질최저가 구매하기
25,200원 -10% 0원
1,400원
23,800원 >
yes24 로딩중
교보문고 로딩중
11st 로딩중
영풍문고 로딩중
쿠팡 로딩중
쿠팡로켓 로딩중
G마켓 로딩중
notice_icon 검색 결과 내에 다른 책이 포함되어 있을 수 있습니다.

중고도서

검색중
서점 유형 등록개수 최저가 구매하기
로딩중

eBook

검색중
서점 정가 할인가 마일리지 실질최저가 구매하기
aladin 19,600원 -10% 980원 16,660원 >

책 이미지

심각한 테라폼 중독입니다
eBook 미리보기

책 정보

· 제목 : 심각한 테라폼 중독입니다 (테라폼, 제대로 쓰고 싶은 이들을 위한 인프라 코드 가이드)
· 분류 : 국내도서 > 컴퓨터/모바일 > 컴퓨터 공학 > 소프트웨어 공학
· ISBN : 9791194587255
· 쪽수 : 376쪽
· 출판일 : 2025-07-14

책 소개

빠르게 변화하는 클라우드 환경에서 인프라를 안정적으로 운영하려면 선언만으로는 부족하다. 이 책은 테라폼을 실무에 제대로 적용하기 위한 실전 가이드다. 상태 관리, 실행 환경 분리, 커스텀 모듈 설계, 다양한 프로바이더 연용 등 핵심 개념을 하나씩 짚어간다.

목차

추천의 글 xii
베타리더 후기 xx
시작하며 xxv
이 책에 대하여 xxviii

PART I 왜 테라폼인가?

CHAPTER 1 클라우드와 코드형 인프라스트럭처 3
1.1 클라우드 컴퓨팅 vs. 온프레미스 컴퓨팅 3
1.2 클라우드 네이티브 패러다임 5
1.3 클라우드 인프라의 복잡성과 관리의 어려움 6
1.4 선언형 IaC 도구의 필요성 9

CHAPTER 2 우리는 왜 테라폼을 쓰는가? 11
2.1 선언형 인프라 관리 11
2.2 다양한 프로바이더 12
2.3 선언형 스크립트 언어 14
2.4 하시코프 설정 언어에 대한 오해 16

PART II 테라폼 기본

CHAPTER 3 테라폼 작동 방식 21
3.1 테라폼 프로젝트 구조 21
3.2 테라폼 상태의 역할 22
3.3 테라폼 명령과 작동 26
3.4 테라폼 프로바이더 31

CHAPTER 4 테라폼 기본 문법 34
4.1 데이터 타입 34
4.2 반복문 35
4.3 조건문 42
4.4 for 표현식 44
4.5 테라폼 블록 49
4.6 테라폼 함수 59

CHAPTER 5 테라폼 모듈 66
5.1 모듈 사용 66
5.2 모듈 작성의 기본 구조 70

PART III 테라폼 기능별 실무 사례

CHAPTER 6 실행 환경 관리 79
6.1 실행 환경을 분리하지 않을 때의 문제점 79
6.2 실행 환경 분리 사례 81
6.3 테라폼 워크스페이스? 85

CHAPTER 7 다양한 인라인 블록 86
7.1 중첩 블록 86
7.2 다이내믹 블록 87
7.3 중첩 블록 vs. 별도 리소스 블록 90
7.4 생명주기 블록 92

CHAPTER 8 유효성 검사 95
8.1 검사 블록 95
8.2 생명주기 블록 96
8.3 체크 블록 98

CHAPTER 9 유틸리티 모듈 만들기 104
9.1 AWS의 메타데이터 가져오기 104
9.2 두 AWS 프로바이더가 동일한지 체크하기 107
9.3 리스트 내의 맵 합치기 109

PART IV AWS 모듈 사례

CHAPTER 10 모듈을 직접 만드는 이유와 만드는 방법 117
10.1 공개 모듈 vs. 직접 만든 모듈 117
10.2 모듈을 쉽게 만드는 방법 118

CHAPTER 11 YAML 파일로 관리하는 VPC 모듈 만들기 122
11.1 입력값 정하기 123
11.2 입력값을 모듈에 전달할 방법 정하기 126
11.3 모듈 만들기 130
11.4 변수 유효성 검사 149
11.5 모듈 출력값 설정 162
11.6 더 고려해볼 만한 것 163

CHAPTER 12 CSV 파일로 관리하는 보안 그룹 모듈 만들기 166
12.1 입력값 정하기 166
12.2 입력값을 모듈에 전달할 방법 정하기 168
12.3 모듈 만들기 174
12.4 변수 타입 유효성 186
12.5 모듈 출력값 설정 187
12.6 더 고려해볼 만한 것 187

CHAPTER 13 VPC와 보안 그룹 모듈의 출력값을 활용하는 EC2 모듈 만들기 189
13.1 입력값 정하기 189
13.2 입력값을 모듈에 전달할 방법 정하기 195
13.3 모듈 만들기 198
13.4 변수 유효성 검사 207
13.5 모듈 출력값 설정 217
13.6 더 고려해볼 만한 것 218

CHAPTER 14 다른 실행 환경의 출력값을 참조하는 네트워크 실행 환경 구성하기 220
14.1 미리 고려해야 할 점 220
14.2 실행 환경 재구성하기 221
14.3 요구사항 정리하기 223
14.4 원격 상태 설정하기 224
14.5 입력값과 전달 방식 정의하기 226
14.6 모듈 만들기 231
14.7 유효성 검사 236
14.8 모듈 출력값 설정 238
14.9 더 고려해볼 만한 것 238

PART V 다양한 프로바이더 활용 예제

CHAPTER 15 하시코프 공식 유틸리티 프로바이더 241
15.1 테라폼 프로바이더 티어 241
15.2 랜덤 프로바이더 242
15.3 HTTP 프로바이더 244
15.4 로컬 프로바이더 246
15.5 널 프로바이더와 terraform_data 리소스 249
15.6 그 외 252

CHAPTER 16 쿠버네티스 관련 프로바이더 256
16.1 쿠버네티스 프로바이더 256
16.2 헬름 프로바이더 270
16.3 커스텀 리소스과 Kubectl 프로바이더 284

CHAPTER 17 키클록 프로바이더로 AWS SSO 구현하기 292
17.1 테라폼 키클록 프로바이더 설정하기 294
17.2 키클록과 AWS SAML 간 연동을 위한 리소스 생성 297
17.3 키클록 그룹과 AWS IAM 역할 매핑하기 301
17.4 키클록 사용자로 AWS 로그인 테스트하기 309
17.5 더 고려해볼 만한 것 311

APPENDIX 테라폼 Q&A
APPENDIX A 테라폼을 사용하면서 생기는 문제는 어떻게 트러블슈팅하나요? 315
APPENDIX B 테라폼 작업할 때 팀원들과 잘 협업하는 방법이 있나요? 320
APPENDIX C 이미 존재하는 인프라 리소스를 테라폼으로 관리하고 싶어요 325
APPENDIX D 테라폼 관련 서드파티 오픈소스 도구는 어떤 걸 쓰세요? 331
APPENDIX E 테라폼의 라이선스가 변경된다고 하는데 문제없을까요? 336

찾아보기 339

저자소개

홍수민 (지은이)    정보 더보기
카카오페이증권의 DevOps 플랫폼 개발자. AWS 파트너사, 오늘의집, 캐치테이블 등 다양한 IT 스타트업에서 밀도 높은 경험을 쌓으며 성장해왔다. 클라우드와 테라폼의 매력에 빠져 솔루션 아키텍트에서 DevOps 엔지니어로 전환했으며, 현재는 코드 기반으로 인프라 자원을 관리하고 새로운 기술을 우선적으로 검증하는 업무를 담당하고 있다. 최근에는 AI 기술에도 관심을 두고 다양한 프로젝트를 수행 중이며, 특히 카카오페이증권의 AI 챗봇 ‘춘시리’ 개발 경험을 기술 블로그를 통해 공유하기도 했다. 재미있고 새로운 기술에 끊임없이 도전하며, 오늘도 흥미로운 기술을 찾아 탐구 중이다. 현재 카카오톡 오픈채팅방을 통해 'Terraform 질문공부방'을 운영하고 있다.
펼치기
정윤의 (지은이)    정보 더보기
유저 리서치 SaaS를 서비스하는 스타트업인 디비디랩의 CTO. 최고의 개발팀을 경험하고 싶은 열망으로 오늘도 고군분투하고 있다. AWS와 오늘의집 등 국내외 다양한 규모의 조직에서 클라우드 기반의 개발과 시스템 설계를 수행하였으며, 수년간 테라폼과 같은 코드형 인프라를 기반으로 클라우드 자원을 운영해왔다. 패스트캠퍼스에서 ‘실무 장애 대응 프로세스로 끝내는 장애율 0% 서비스 운영의 모든 것’이라는 주제로 장애 대응 관련 온라인 강의를 하고 있으며, 멘토링 플랫폼 F-Lab에서는 현업 백엔드 및 DevOps 엔지니어를 대상으로 멘토로 활동하고 있다.
펼치기

책속에서



테라폼의 HCL은 배우기 어렵다는 인식이 있는 것이 사실이다. 하지만 HCL은 JSON이나 YAML과 같은 선언형 설정 언어일 뿐이며, 리소스의 필드 참조나 리소스 사이의 참조 등을 오히려 JSON이나 YAML보다 더 쉬운 방법으로 정의할 수 있게 해준다. 실제로 HCL로 작성할 수 있는 모든 스크립트는 동등한 JSON 기반 설정 문법(JSON Configuration Syntax)을 사용해 작성할 수 있다. 더 나아가면 HCL은 이론상 당연히 동등한 YAML로도 표현이 가능하다. JSON은 YAML의 부분집합이기 때문이다. / HCL은 그저 JSON과 YAML 설정 파일을 인프라 관리자의 입장에서 조금 더 수월하게 작성하기 위해 만들어진 언어이며, JSON과 동등하다.


모듈 안에 서브 디렉터리로서 모듈을 또 정의하여 사용할 수 있다. 이를 중첩 모듈(nested module)이라고 한다. 일반적으로 컬렉션을 순회하며 반복적으로 리소스를 생성하거나 할 때, 상당히 넓은 범위의 리소스가 매 순회 시마다 만들어져야 할 수도 있다. 이럴 때 단순히 for_each나 for 등을 많은 종류의 리소스에 동시에 사용해서 구현할 수 있는데, 쉽게 예상할 수 있듯이 오류의 소지가 크다. 이럴 때 중첩 모듈로 순회에 따르는 액션을 정의해서 루트 모듈의 가독성을 높이는 방법을 사용해볼 수 있다. 중첩 모듈은 테라폼의 공식 컨벤션상 /modules 서브 디렉터리에 두는 것이 일반적이나 합리적인 이유가 있다면 컨벤션을 따르지 않아도 올바르게 작동한다.


이 포스팅은 쿠팡 파트너스 활동의 일환으로,
이에 따른 일정액의 수수료를 제공받습니다.
이 포스팅은 제휴마케팅이 포함된 광고로 커미션을 지급 받습니다.
도서 DB 제공 : 알라딘 서점(www.aladin.co.kr)
최근 본 책
9791194587699