Study/오늘의 Youtube

(2020-04-08) Best Practices of Infrastructure as Code with HashiCorp Terraform

chronosa 2020. 4. 9. 00:06

https://www.youtube.com/watch?v=T56lZb7WNLc


Terraform을 관리하는 방법에 대한 동영상

실제 리소스를 state에 자동으로 가져오지 않음. 우리는 "명시적"인 선언문을 가지고 있을 뿐이고 이 선언문으로 변경된 상태만을 가지고 있다. 즉 terraform을 통해서만 업데이트해야 함 
remote state를 통해 가능은 하지만, 결국은 revert가 아닌 roll forward
K8S도 지원한다!
Terraform을 여러 작업자가 동시에 사용할 경우, repository(ex : github) & CI pipeline을 통해 관리가 되어야 하고 이것은 병렬적으로 이루어져서는 안된다. (Lock State during changes to prevent overrides)
Terraform Validate, Apply를 통해 보여지는 결과를 확인하더라도 결국 변경되는 인프라를 테스트할 별도의 방안 (test code 또는 수작업)은 반드시 필요.
secret(AWS Access Key 등)을 보호하기 위해서는 환경변수를 사용하거나, Hashcorp Vault를 사용해야 함
module 간 연동은 output을 통해서 이루어진다.