하나의 환경에서 문제가 발생하더라도 다른 환경에 영향을 주지 않도록 상태 파일을 격리를 해야합니다. 상태 파일 격리에는 2가지 방법이 있습니다.
▷ 작업 공간을 통한 격리
테라폼은 별도의 이름을 가진 여러 개의 작업 공간에 저장할 수 있습니다.
테라폼은 default라는 기본 작업 공간에서 시작하며 작업 공간을 지저앟지 않으면 기본 작업 공간을 사용합니다.
# 테라폼 워크 스페이스를 생성합니다.
$ terraform workspace new example1
# 현재 사용중인 워크스페이스를 보여줍니다.
$ terraform workspace show
# 생성된 워크스페이스 목록을 보여줍니다.
$ terraform workspace list
# 워크스페이스를 전환할 수 있습니다.
$ terraform workspace select <workspace name>
워크스페이스 생성 후 적용 시 S3에는 ‘evn:’ 라는 폴더가 생성 되고, 각 워크스페이스 마다 각자의 상태 파일을 따로 가지고 있습니다.
GCP에서는 백엔드에 지정한 경로에 워크스페이스 명.tfstate 파일이 생성됩니다.
위의 워크스페이스에는 몇 가지 단점이 있습니다.
▷ 파일 레이아웃을 이용한 격리
환경을 완전히 격리하려면 다음과 같이 하면 됩니다.
각 환경별 VPC, 서비스, 데이터 베이스 같은 각 구성 요소를 별도의 테라폼 폴더 혹은 별도의 상태 파일에서 사용하는 것을 권합니다.
위와 같은 구성은 어떤 면에서 단점으로 작용합니다.
참조 : https://book.naver.com/bookdb/book_detail.naver?bid=20489970
테라폼 업앤러닝
이 책은 예제 소개를 뛰어넘어 실제 환경에서 테라폼을 사용하는 방법에 중점을 두고 만들어졌다. 외국어에 능통해지려면 원어민과 대화하고, 외국어 TV 쇼를 보고, 외국 음악을 듣는데 시간을
book.naver.com
[테라폼/Terraform] 테라폼 모듈이란? (0) | 2022.06.06 |
---|---|
[테라폼/Terraform]테라폼 상태 관리/terraform_remote_state 데이터 소스 (0) | 2022.05.31 |
[테라폼/Terraform]테라폼 상태 관리/백엔드 (0) | 2022.05.31 |
[테라폼/Terraform]테라폼 변수 (0) | 2022.05.31 |
[테라폼/Terraform]단일 웹 서버 배포 (0) | 2022.05.31 |
댓글 영역