처음 시작하는 Infrastructure as Code: AWS & 테라폼을 수강하며 정리한 내용입니다.
- 테라폼은 인프라를 만들고, 변경하고 기록하는 IaC를 위해 만들어진 도구
- provider: 테라폼으로 생성할 인프라의 종류
- resource: 테라폼으로 실제 생성할 인프라 자원
- state: 테라폼을 통해 생성한 자원의 상태, 파일 형태로 남게 됨, 테라폼 명령어를 실행한 결과물, 인프라의 실제 상태는 아님
- output: 테라폼으로 만든 자원을 변수 형태로 state에 저장하는 것
- module: 공통적으로 활용할 수 있는 코드를 모듈 형태로 정의하는 것
- remote: 다른 경로의 state를 참조하는 것, output 변수를 불러올 때 주로 사용
테라폼 기본 명령어
- init: 테라폼 명령어를 사용하기 위해 각종 설정을 진행
- plan: 테라폼으로 작성한 코드가 실제로 어떻게 만들어질지에 대한 예측 결과를 보여줌
- apply: 테라폼 코드로 실제 인프라를 생성
- import: 이미 만들어진 자원을 테라폼 state 파일로 옮김
- state: 테라폼 state를 다루는 명렁어, 하위 명령어로 mv, push와 같은 명령어가 있음
- destroy: 생성된 자원들을 state 파일 기준으로 모두 삭제