남들이 똥이라고 해도 된장인지 똥인지 직접 찍어먹어보는 사람으로써 IaC를 수동부터 terraform cloud까지 직접 겪어보며 느낀점입니다.
데브옵스로 취직 후 1개월 반동안 aws 서비스를 사용해서 블록체인 가상 거래소 인프라를 구축하였다.
한 번에 40개의 ec2 인스턴스를 올려야 하는 상황이 왔을 때 aws의 기술인 cloudformation을 사용하기 시작했다.
수동으로 올릴 때와 비교하였을 때 여러가지 인스턴스를 한번에 올릴 수 있어 효율적이었다.
SKYCC HACKERTONE에서 멘토분들과 여러가지 얘기를 나누던 중 너무 aws 서비스에만 종속되지 않게 terraform을 이용해서 IaC를 하는 것이 어떻겠냐고 조언을 해주셨고, terraform을 시도해보았다.
cloudformation과 비교하였을 때, 코드를 수정할 수 있어서 변경과 관리가 쉬웠다. 특정 클라우드나 인프라에 종속되지 않고 멀티 클라우드에 적용할 수 있었고, 온프레미스 지원도 가능하다.
terraform을 사용하던 중 terraform cloud를 사용하면 vcs와 연동해서 파이프라인 돌아가는 과정을 확인할 수 있고, api 기반으로 많은 시도를 해볼 수 있다고 하셨다.
terraform cli와 비교하였을 때
리소스를 더 보기 좋게 할 수 있고, output도 한번에 확인할 수 있다.
가격도 쉽게 확인할 수 있어 효율적이다.
secret key, github token은 코드로 바로 작성하기엔 보안의 위험성이 있어 variables로 관리하며 terraform을 실행할 때마다 직접 입력하였는다. terraform cloud는 variables를 설정할 수 있고 심지어 sensitive를 체크하면 값을 볼 수 없기 때문에 보안에도 좋다.