IT/Terraform

    [Terraform] 테라폼 프로젝트 폴더 구조 전략

    Intro 오늘은 Terraform 프로젝트 구조를 어떻게 가져가면 좋을지 고민했던 내용들을 공유해보도록 하겠습니다. (참고로 폴더구조는 정해진 정답은 없으며 팀구성원과 관리 특성에 맞게 구성하시면 됩니다.) 환경별 구성은 어떻게 가져갈까 ? 대부분의 소스코드와 인프라는 DEV(개발), PROD(운영), QA(검증) 이렇게 3가지 환경으로 나누어 구성을 하게 됩니다. (물론 비용을 줄이기위해 DEV나 QA를 생략하기도 합니다) 이 경우 테라폼 프로젝트에서는 DEV, PROD, QA 환경을 어떻게 나누어서 가져가야 할까요? 이것이 첫번째 이슈 였습니다. 크게 3가지 방법이 있겠는데요. 방법1 : git repository를 각각 가져간다. 방법2 : git repository는 1개로 가져가고 branch..

    [Terraform] 테라폼 소스 git push가 안돼는 이슈 해결책 (git push 특정 경로 제외시키기)

    Intro 테라폼 소스를 git에 push를 할때 파일 사이즈가 크다는 에러가 발생할 수 있습니다. 그 이유는 테라폼 프로젝트 폴더안에 .terraform폴더가 있는데 여기에 terraform-provider 가 포함되기 때문입니다. .terraform 폴더는 소스를 공유할 필요가 없기 때문에 해당 경로를 제외하고 git push를 하는 방법을 알아보도록 하겠습니다. 에러 메시지 terraform 소스를 git push를 할때 아래와 같이 파일 사이즈가 너무 커서 push할 수 없다는 에러메시지를 확인할 수 있습니다. remote: error: File .terraform/providers/registry.terraform.io/hashicorp/aws/3.71.0/darwin_arm64/terrafor..

    [DevOps]테라폼(Terraform)이란?

    안녕하세요 오늘은 테라폼에대해 설명해보도록 하겠습니다. 테라폼은 프로그램 코드를 통해 인프라 서버를 구축/운영 할 수 있게 해주는 오픈 소스 소프트웨어 입니다. 코드형 인프라를 뜻하는 "IAC(Infra as a code) 도구(Tool)" 입니다. IT에 종사 하면서 도구(Tool)의 사용법을 익히기는것도 중요하지만, 그 뒷 배경 또한 중요합니다. 아는 만큼 보이는 법이니까요 코드형 인프라(IAC, Infra as a code)개념은 왜 생겨나게되었을까요? 1. 가상화 기술의 발전 그 시작은 가상화 기술의 발전으로부터 시작됩니다. VM ware, Hyper-V와 같은 기술을 통해서 여러대의 서버를 더 많이 더 쉽게 만들 수 있게 되었습니다. 기하급수적으로 늘어나는 서버들에대한 프로비저닝과 운영에 대한 ..