본문 바로가기

IaC

(25)
[Terraform]count와 for_each를 사용하여 반복되는 resource 작성하는 방법 count와 for_each와 같은 Terraform의 반복 구문을 사용하면 코드의 반복을 줄이고, 관리를 용이하게 할 수 있습니다. 단순 반복하여 작성한 Terraform resource code # provider provider "aws" { region = "ap-northeast-2" } # resource resource "aws_iam_user" "user_1" { name = "user-1" } resource "aws_iam_user" "user_2" { name = "user-2" } resource "aws_iam_user" "user_3" { name = "user-3" } # output output "user_arns" { value = [ aws_iam_user.user_1.a..
[Terraform]테라폼 Output Values 사용법 Terraform에는 명명된 값을 요청하거나 게시하기 위한 몇 가지 종류의 블록이 포함되어 있습니다. Input Variables 는 Terraform 모듈의 매개변수 역할을 하므로 사용자는 소스를 편집하지 않고도 동작을 커스터마이징할 수 있습니다. Output Values 은 Terraform 모듈의 반환(return) 값과 같습니다. Local Values 은 표현식에 간단한 이름을 지정할 수 있는 편리한 기능입니다. 2023.02.07 - [IaC/Terraform] - [Terraform]테라폼 Input Variables 사용법 2023.02.09 - [IaC/Terraform] - [Terraform]테라폼 Local Values 사용법 Output Values doc Link Output V..
[Terraform]테라폼 Local Values 사용법 Terraform에는 명명된 값을 요청하거나 게시하기 위한 몇 가지 종류의 블록이 포함되어 있습니다. Input Variables 는 Terraform 모듈의 매개변수 역할을 하므로 사용자는 소스를 편집하지 않고도 동작을 커스터마이징할 수 있습니다. Output Values 은 Terraform 모듈의 반환(return) 값과 같습니다. Local Values 은 표현식에 간단한 이름을 지정할 수 있는 편리한 기능입니다. 테라폼의 Local Values(지역 변수)란? 테라폼에서는 값(value)을 다루기 위한 다양한 방법이 있습니다. 여기서는 그 중 'Local Values'라는 것에 대해 알아보겠습니다. Local Values란, 테라폼 코드 내에서 반복하여 사용되는 값을 간편하게 표현하기 위해 만든..
[Terraform]테라폼 Input Variables 사용법 Terraform에는 명명된 값을 요청하거나 게시하기 위한 몇 가지 종류의 블록이 포함되어 있습니다. Input Variables 는 Terraform 모듈의 매개변수 역할을 하므로 사용자는 소스를 편집하지 않고도 동작을 커스터마이징할 수 있습니다. Output Values 은 Terraform 모듈의 반환(return) 값과 같습니다. Local Values 은 표현식에 간단한 이름을 지정할 수 있는 편리한 기능입니다. 2023.02.07 - [IaC/Terraform] - [Terraform]테라폼 Input Variables 사용법 2023.08.14 - [IaC/Terraform] - [Terraform]테라폼 Output Values 사용법 2023.02.09 - [IaC/Terraform] -..
[Terraform]AWS Provider로 Ubuntu AWS EC2 Instance 만들기 개요 Terraform은 각 provider가 제공하는 많은 리소스와 상호작용할 수 있다. Terraform Registry에서 원하는 provider를 찾은 뒤 사용 가능한 리소스를 정의하고 해당 리소스를 관리할 수 있다. 여기서는 aws provider의 resource(aws_instanace)와 data source(aws_ami)를 이용하여 최신버전의 ec2 instanace를 기동시킨다. Resource: aws_instance ubuntu instance 만들기 terraform { required_providers { aws = { source = "hashicorp/aws" version = "~> 4.0" } } } # Configure the AWS Provider provider "..
[Terraform]테라폼 workspace 이해하기 Terraform Workspace란 무엇인가요? Terraform Workspace는 Terraform으로 인프라를 코드로 관리할 때 중요한 부분입니다. 이를 이해하기 위해서는 먼저 '상태'의 개념을 알아야 합니다. 상태 (State)란 무엇인가요? 테라폼을 사용하여 인프라를 변경하거나 관리할 때, 그 변경사항을 기록하는 파일입니다. .terraform.tfstate라는 파일에 이 정보가 저장되며, 이 파일을 통해 테라폼은 어떤 변경이 필요한지를 알 수 있습니다. 그리고 이 상태 파일을 기준으로 여러 프로젝트를 관리하는 것이 '워크스페이스'입니다. 그럼 테라폼 워크스페이스란? 워크스페이스는 **상태 관리의 '단위'**라고 볼 수 있습니다. 한 프로젝트 내에서 여러 개의 .tf 파일을 가진 디렉토리가 여..
[Terraform]테라폼 기본 사용법 with aws provider 원하는 provider 선택 Terraform provider doc https://registry.terraform.io/browse/providers 테라폼 AWS Provider 사용하기 AWS provider doc https://registry.terraform.io/providers/hashicorp/aws/latest/docs terraform { required_providers { aws = { source = "hashicorp/aws" version = "4.48.0" } } } provider "aws" { # Configuration options } aws provider는 region에 연결된다. aws sts get-caller-identity 위 명령어로 현재 설정된 aws..
[Terraform]테라폼 기본 사용법 with local provider 원하는 provider 선택 Terraform provider doc https://registry.terraform.io/browse/providers 위 링크에서 원하는 테라폼에서 사용할 provider를 검색한다. 테라폼 local provider 사용하기 local provider는 파일과 같은 로컬 리소스를 관리하는데 사용한다. local provider doc https://registry.terraform.io/providers/hashicorp/local/latest/docs 테라폼 local provider 사용하기 - local_file (Resource) resource "local_file" Generates a local file with the given content. Exam..