테라폼은 인프라를 코드로 관리하는 툴이다.
AWS나 GCP나 네이버 클라우드 등 다양한 클라우드 모두 다 지원하는 툴이다.
개인적으로 작업 시간을 줄이고, 정확도를 높이는 툴이 될 수 있어 좋아한다.
데브 옵스 엔지니어라 꼭 배워야 할 툴 중 쿠버네티스, 테라폼 2가지는 필수로 공부해야 한다.
자~ 이제 책 내용을 보자~
테라폼을 만든 하시코프와 실제로 사용하는 LG유플러스의 경험을 녹여 만들어진 책
<1> 테라폼 설치
<2> 기본 사용법
<3> 프로 바이더
<4> State
<5> 모듈
<6> 협업
<7> 워크 플로
<8> 인프라 운영 관리
<9> 개인 정리
1
이론과 실무가 같이 있는 책이다.
2
책에 나온 예제 다운로드
3
코드형 인프라
IaC (Infra as Code)
코드로서의 인프라.
코드로 인프라를 관리한다.
4
IaC도입의 긍정적인 측면?
속도와 효율성
버전관리 - 버전 관리툴 (VCS)와 연계할 수 있다.
협업 - 파일 형태로 쉽게 공유할 수 있고, 버전관리툴과 연계하면 공동 작업을 위한 환경을 만들 수 있다.
재 사용성
5
IaC도입의 우려되는 측면?
코드의 문법 학습이 필요하다.
파이프라인 통합 - 기존 워크플로를 자동화하는 시간이 필요하다.
대상 인프라에 대한 이해 - 관리하려는 인프라에 대한 지식이 필요하다. 인프라를 알아야 코드와 할 수 있다.
6
테라폼 코어와 프로바이더의 호출관계?
테라폼 코어 ------ 프로바이더--------대상 API
7
테라폼과 다른 도구의 비교?
테라폼은 멀티 클라우드가 제공된다.
<1> 테라폼 설치
1
테라폼은 Go언어로 되어 있다.
Golang만 설치되어 있다면 빌드해 사용할 수 있다.
리눅스, macOS , 윈도에 대해서는 미리 빌드된 바이너리를 제공한다.
2
VS Code 설치
VS Code는 테라폼을 위한 다양한 확장 프로그램을 지원한다.
Ctrl키와 키보드(') 백 퀘스 단축기로 새로운 터미널을 추가할 수 있다.
<2> 기본 사용법
1
주요 커맨드
terraform
terraform init
init
validate
plan
apply
destroy
2
terraform init
테라폼 구성 파일이 있는 작업 디렉터리를 초기화하는 데 사용된다.
이 작업을 실행하는 디렉터리를 루트 모듈이라 부른다.
3
terraform validate
디렉터리에 있는 테라폼 구성 파일의 유효성을 확인한다.
원격 잡어이나 API작업은 발생하지 않고, 코드적인 유효성만 검토한다.
4
terraform plan
테라폼으로 적용할 인프라의 변경 사항에 관한 실행 계획을 생성하는 동작이다.
출력되는 결과를 확인하여 어떤 변경이 적용될지 사용자가 미리 검토하고 이해하는데 도움을 준다.
5
terraform apply
Plan에서 작성된 적용 내요을 토대로 작업을 실행한다.
6
참고
terraform plan --detailed-exitcode
0 : 변경 사항이 없는 성공
1 : 오류가 있음
2 :변경 사항이 있는 성공
7
terraform destroy
제거시 주의~
테라폼 구성에서 관리하는 모든 개체를 제거하는 명령어다.
8
자동 승인? --auto-approve
terraform destroy --auto-approve
9
HCL
HashCorp configuration language
하시코프사에서 laC와 구성정보를 명시하기 위해 개발된 오픈 소스 도구이다.
이후 프로바이더, 상태, 모듈, 협업, 워크 플로, 인프라 운영 관리에 대해 설명이 된다.
실제 사용하는 부분에 대해 설명이 되는 것이다.
자세한 설정은 책을 통해 알아보도록 하자 ~
<3> 프로 바이더
테라폼은 프로 바이더가 제공하는 API를 호출해 상호 작용을 한다.
여기서 테라폼이 대상과의 상호작용을 하도록 하는 것이 프로바이더이다.
AWS, 네이버 클라우드 등
<4> State
아래 내용이 추가로 설명 된다~~
<5> 모듈
<6> 협업
<7> 워크 플로
<8> 인프라 운영 관리
<9> 개인 정리
클라우드를 시작한다면 무조건 봐야 하는 책중 하나이다.
시간들어 인프라를 구축하는 시대는 끝났다.
빨리 구축하고 다른 공부를 하자.
테라폼으로 구축 정확도를 높여 장애를 줄일수 있다.
"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."
본인이 읽고 솔직하게 작성합니다.
책을 통한 스터디~~
https://brunch.co.kr/@topasvga/3347
다른 IT 책 보기
https://brunch.co.kr/@topasvga/1458
https://brunch.co.kr/@topasvga/1379
다른책 보기
https://brunch.co.kr/magazine/it-book
감사합니다.