본문 바로가기

분류 전체보기30

[T1014-이론] 6장 Module 해당 내용은 cloudNet@ 팀의 가시다 님이 진행하는 테라폼 스터디 T101 4기에서 다룬 내용과 "테라폼으로 시작하는 IaC" (한빛미디어) 저서 내용을 정리한 것입니다. 테라폼으로 인프라와 서비스를 관리하게 되면 시간이 지날수록 구성이 복잡해지고 관리하는 리소스가 늘어나게 된다. 따라서 단일 파일 구조로 관리하다 보면 다음과 같은 문제 발생한다.테라폼 구성에서 원하는 항목을 찾고 수정하는 것이 점점 어려워짐.리소스들 간의 연관 관계가 복잡해질수록 변경 작업의 영향도를 분석하기 위한 노력이 늘어남.개발/스테이징/프로덕션 환경으로 구분된 경우 비슷한 형태의 구성이 반복되어 업무 효율이 줄어듦.새로운 프로젝트를 구성하는 경우 기존 구성에서 취해야 할 리소스 구성과 종속성 파악이 어려움.루트모듈(Root.. 2024. 7. 10.
[T1014-실습] Terraform Backend: AWS S3 + DynamoDB 해당 내용은 cloudNet@ 팀의 가시다 님이 진행하는 테라폼 스터디 T101 4기에서 다룬 내용으로 악분님이 제공해준 실습 예제를 정리한 것입니다. 1. [사전준비 1] 리모트 공용 저장소 AWS S3 생성git clone https://github.com/sungwook-practice/t101-study.git examplecd example/state/step3_remote_backend/s3_backendtree# VSCODE에서 코드 파일들 확인 : main.tf, variables.tf , terraform.tfvars## S3 버킷에 버저닝 활성화 -hello-t1014-remote-backend"bucket_name = "smlim-hello-t1014-remote-backend"# 생.. 2024. 7. 7.
[T1014-이론] 5장 State 해당 내용은 cloudNet@ 팀의 가시다 님이 진행하는 테라폼 스터디 T101 4기에서 다룬 내용과 "테라폼으로 시작하는 IaC" (한빛미디어) 저서 내용을 정리한 것입니다. 1. State의 목적과 의미terraform apply 명령을 실행하면 이전에 생성된 리소스와 비교해 생성, 수정, 삭제 동작이 수행된다.이 때 테라폼은 State를 사용해 대상 환경에서 어떤 리소스가 테라폼으로 관리되는 리소스인지 판별하고 결과를 기록한다. State의 역할State에는 테라폼 구성과 실제를 동기화하고 각 리소스에 고유한 아이디(리소스 주소)를 매핑리소스 종속성과 같은 메타데이터를 저장하고 추적테라폼 구성으로 프로비저닝된 결과를 캐싱하는 역할을 수행예제 코드provider "aws" { region = "a.. 2024. 7. 7.
[T1014-이론] 4장 프로바이더 해당 내용은 cloudNet@ 팀의 가시다 님이 진행하는 테라폼 스터디 T101 4기에서 다룬 내용과 "테라폼으로 시작하는 IaC" (한빛미디어) 저서 내용을 정리한 것입니다. 1. 프로바이더 구성프로바이더 구성에 대한 요구사항은 공식 레지스트리 사이트인 테라폼 레지스트리에 공개되어 잇는 각 프로바이더의 구성 방식을 참고하는 것이 올바른 방법이다.테라폼 레지스트리의 프로바이더 목록에는 유지 보수 및 게시에 대한 권한에 따라 Tier 정보가 제공된다.Tier설명네임스페이스Official공식 프로바이더로 하시코프가 소유 및 관리한다.hashicorpPartner파트너 프로바이더는 하시코프사 외의 기술 파트너가 소유하고 관리한다. 프로바이더의 제공자에 대한 검증이 되어 있고 하시코프 기술 파트너임을 나타낸다... 2024. 7. 7.
[T1014-이론] 3장 기본 사용법 (6) 해당 내용은 cloudNet@ 팀의 가시다 님이 진행하는 테라폼 스터디 T101 4기에서 다룬 내용과 "테라폼으로 시작하는 IaC" (한빛미디어) 저서 내용을 정리한 것입니다. 10. 조건문Terraform 에서 조건식은 3항 연산자 형태를 가진다. 조건은 true / false 로 확인 되는 모든 표현식을 사용할 수 있다.일반적으로 비교, 논리 연산자를 사용해 조건을 확인한다.조건식은 ? 기호를 기준으로 왼쪽은 조건이며, 오른쪽은 : 기호를 기준으로 왼쪽이 조건에 대해 true 가 반환되는 경우이고 / 오른쪽은 false가 반환되는 경우다.# ? : var.a != "" ? var.a : "defalut-a"위 예시에서 var.a 가 빈 문자열이 아니라면 var.a를 나타내고, 빈 문자열일 경우 ".. 2024. 6. 30.
[T1014-이론] 3장 기본 사용법 (5) 해당 내용은 cloudNet@ 팀의 가시다 님이 진행하는 테라폼 스터디 T101 4기에서 다룬 내용과 "테라폼으로 시작하는 IaC" (한빛미디어) 저서 내용을 정리한 것입니다. 9. 반복문for_eachfor-each는 반복(for)을 할 때 타입 값에 대해 하나하나 each object로 접근한다는 의미입니다.each object는 key, value 2개의 속성을 가지고 있습니다.아래 속성은 for_each가 선언된 블록에서만 사용할 수 있다.each.keyeach.valuemap, set 타입에 대해서만 each object로 접근할 수 있다.map, set 타입이 아닌 expression은 toset, tomap 등을 사용해서 타입 변환을 해야한다.예제코드resource "local_file" ".. 2024. 6. 30.