참고
용어
단어 | full name | 설명 |
---|---|---|
ICT | Infrastructure As Code | 수동 프로세스가 아닌 코드를 통해 인프라를 관리하고 프로비저닝 하는 것 |
on-prem | on-premise | 기업의 서버를 클라우드 같은 원격환경에서 운영하는 방식이 아닌 자체적으로 보유한 전산실 서버에 직접 설치해 운영하는 방식 |
provisioning | 사용자의 요구에 맞게 시스템 자원을 할당, 배치, 배포해 두었다가 필요 시 시스템을 즉시 사용할 수 있는 상태로 미리 준비해 두는 것 |
terraform 이란
- ICT(Infrastructure As Code) 도구
- cloud 또는 on-prem 리소스를 사람이 읽을 수 있는 configuration 파일로 versioning, 재사용, 공유할 수 있게 한다.
- 이를 통해 지속적으로 인프라를 프로비저닝하고 관리 할 수 있음
- compute, storage, networking 리소스와 같은 low-level 구성요소는 물론 DNS나 SaaS와 같은 high-level 구성요소도 관리 할 수 있다.
terraform 의 작동 방식
- Terraform은 클라우드 플랫폼 또는 다른 서비스를 그들의 API를 통해 생성하고 관리
- Provider는 접근 가능한 API를 가진 거의 모든 플랫폼 또는 서비스를 테라폼과 함께 작동할 수 있도록 한다.
- 사용가능한 Provider는 링크 Terraform Registry 참고
핵심 워크플로우
- Write: 여러 클라우드 제공자 및 서비스에 걸쳐 리소스를 정의
- Plan: 기존의 인프라와 구성을 기반으로 생성, 업데이트 또는 삭제와 같은 실행계획을 생성
- Apply: 승인 시 Terraform은 리소스 종속성을 고려하여 제안된 작업을 올바른 순서로 수행