본문 바로가기
terraform

[terraform] 테라폼이란

by devjh 2022. 4. 21.
반응형

1. terraform이란

terraform이란  HashiCorp에서 만든 IAC를 지원하는 솔루션입니다.

 

2. terraform을 사용하는 이유

aws console에 들어가서 gui를 보며 클릭하여 인프라를 구축할 수도 있습니다.

그러나 aws console을 이용하면 히스토리 추적이 힘들고 유지보수하기 힘들다는 단점이 생깁니다.

테라폼을 사용하면 이러한 단점이 해소됩니다.

인프라를 코드로 작성하므로 재사용성이 좋으며 유지보수에 유리합니다.

 

3. 테라폼 구성요소

테라폼 구성요소는 테라폼코드를 작성할때 사용되며 .tf의 확장자의 파일에 작성하게 됩니다.

  • provider - 인프라의 종류
  • resource - 인프라 자원
  • state - 자원의 상태(파일형태로 저장되는 테라폼의 결과물)
  • module - 모듈형태로 정의하는 것(템플릿 느낌으로 이해하시면 좋습니다)
  • remote - 다른 경로의 state를 참조하는 방식이며 output변수를 불러올때 사용됩니다.

하나도 이해하지 못해도 됩니다.

다음게시글에서 아주 기본적인 테라폼 사용법부터 정리하겠습니다.

4. 테라폼 명령어

아래의 명령어는 cli 환경에서 terraform 뒤에 붙는 명령어들입니다.(ex $ terraform init)

아래는 테라폼을 대표하는 명령어들입니다.

  • init - 테라폼 정보를 가져오는 명령어입니다. 
    • provider, module, state 등의 설정을 진행합니다.
  • plan - 테라폼 코드를 실제로 적용시켰을떄의 예측 결과를 보여줍니다. 
    • 가장 많이 사용되는 명령어로 plan을 통해 충분히 확인한후 반영해야합니다.
  • apply - 테라폼코드를 실제로 적용시키는 명령어입니다.
    • plan이후 실제 infra에 적용해도 될때 사용합니다.
  • import - 이미 만들어진 자원을 import를 사용하여 코드로 가져옵니다.
    • aws에 콘솔로 만든 service가 있고 그 서비스를 테라폼이 관리하고 있지 않다면 import 해줘야합니다.
  • state - state 파일을 다룰때 사용됩니다.

5. 마치며

다음 게시글에서는 terraform을 사용하여 aws 자원을 제어하는 방법에 대해 정리합니다.

aws의 이해가 없어도 할수있도록 아주 기본적인 자원을 이용해서 포스팅 하겠습니다.

 

[terraform] terraform 시작하기 (terraform tutorial, 테라폼 예제)

aws를 잘 몰라도 테라폼을 할 수 있도록 간단한 예제 게시글을 작성합니다 (vpc셋팅같이 어려운걸 하지 않고 s3버킷만 가지고 끝까지 가보겠습니다.) 이번 게시글에서는 테라폼을 aws와 연동하고 s3

frozenpond.tistory.com

 

반응형

댓글