terraform state

김성인·2023년 10월 31일
0

[CI/CD] 🪀Terraform

목록 보기
6/9

tfstate 파일

  • JSON 포맷 형식으로 이뤄져있음
  • 테라폼에 의해 관리되는 리소스에 대한 정보를 포함
  • 모든 정보가 포함되어 있으며, 리소스를 만들 때마다 state를 저장하고, 그에따라 참조함.

State Tracking

  • 상태를 계속해서 확인함
  • 리소에 대한 아이디가 저장 됨

Concurrency Management

  • 여러명의 유저가 TF State file에 접근할 때 활용되는 기준
  • lock 파일을 통해서 한번에 하나의 수정만 적용

Resource Dependency

  • 리소스의 생성 순서를 보장함

State Preservation

  • 실행할 때마다, 테라폼 어플라이를 하는데 스테이트를 저장하여 각각의 히스토리를 트래킹함

비교 sync

terraform apply 시에 로컬이나, 원격 클라우드 환경에 존재하는 InfraStructure와 tfstate파일을 항상 동기화함


Refrecy False

  • terraform plan, apply시에 원격에 존재하는 리소스의 상태를 확인하여 체크를 하게됨
    -> 너무 오래걸릴 수도 있음.

    terraform plan -refresh=false
    옵션을 통해서 원격에 있는 tfstate에 접근하여 상태를 확인하여 비교함.
    원격에 있는 상태와 로컬의 tfstate파일이 다르다면 문제가 발생함..


Sync 시 외부 저장소 활용

  • s3를 통해서 여러 사용자가 본인을의 로컬 파일을 로드하여 파일 유무 여부를 동기화함.

0개의 댓글