본문 바로가기

분류 전체보기96

HCL이란 HCL (HashiCorp Configuration Language) - Hashicorp 사에서 개발한 툴을 이용하기 위한 언어 (ex: Terraform, Packer, Vault, 기타 등등...) - JSON 형식을 지원 - Variables를 통해 resource 선언에 필요한 값을 입력 (like functions arguments) - Outputs를 통해 resource 생성 후 필요한 정보를 출력 (like function return values) - Local을 통해 변수로 활용 (like a function's temporary local variables) - string interpolation 지원 ( ${...} ) - string directive ( %{...} ) "He.. 2022. 3. 15.
[Terraform] State, Terraform Cloud Terraform State - terraform으로 생성한 resource들의 정보 및 환경 설정값 Terraform Backend - terraform state가 저장되는 장소 - local에서는 terraform.tfstate에 저장되는데 환경 설정값을 통해, 기존 인프라에서 apply를 여러번 해도 변경된 인프라가 기존 인프라를 교체한다는 것을 알 수 있음 (같은 인프라를 새로 만들지 않음) - 협업을 하는 경우, 각자 local로 terraform code를 가져와 작업하고 push 하는 경우, 인프라가 동일함을 알 수 없어 충돌이 일어나거나 같은 인프라를 다시 만들 수 있음 - 위 협업 문제를 해결하기 위해 Remote Backend에서는 locking이 필요함 - 대표적인 Remote Ba.. 2022. 3. 14.
[Terraform] windows에서 Terraform Cloud 사용 순서 Terraform Cloud - Terraform Cloud IaC를 관리하기 위한 협업 도구 - Terraform + Github라 생각하면 편할 듯 Windows에서 Terraform Cloud 사용 순서 1. 계정 생성 2. window의 경우 terraform login command 입력 해당 정보는 (-/AppData\Roaming\terraform.d\credentials.tfrc.json) 3. terraform cloud에서 token 생성 후 local에서 생성한 token 입력 4. workspace -> settings -> general에서 Execution Mode를 Local로 변경 (Local로 변경하는 경우 실제 apply는 local에서 진행하고 workspace는 저장소.. 2022. 3. 14.