본문 바로가기

IAC14

3 Tier Architecture 구성 1. Provider 지정 provider : aws를 provider로 지정 region : aws의 “us-east-2” 리전에서 인프라 생성 provider "aws" { region = "us-east-2" } 2. VPC 생성 resource : 실제로 생성할 인프라 자원을 의미. 리소스 타입은 “aws_vpc”, terraform에서 정의하는 이름은 “vpc”로 정한다. “vpc”는 aws에서 사용되는 이름이 아니고 terraform 내부에서 참조하기 위한 이름이다. cidr_block : vpc가 사용하는 ip 대역 tag : vpc의 이름, 등록 날짜, 사용자 이름 지정 # vpc 생성 resource "aws_vpc" "vpc" { cidr_block = "10.0.0.0/16" tags.. 2024. 1. 21.
[AWS and 테라폼: Infrastructure as Code] GITHUB로 협업하기 Terraform with Github IaC는 Infrastructure as Code 코드로써의 인프라를 이야기한다. Terraform 은 IaC 도구이며, 즉 테라폼은 코드를 수행한다. 그렇기 때문에 반드시 코드로써의 관리가 필요하며, 팀원간의 코드리뷰가 필요하다. 코드 리뷰란 팀원들끼리 서로의 코드를 점검하고, 서로의 코드를 배우는 것이다. 올바른 DevOps 문화를 만들기 위해서, 코드 리뷰를 하는 습관과 문화 그 자체로 운영하는 것은 정말 중요하다. 코드 리뷰 예제다. 보통 Pull Request 를 이용하여 팀원들끼리 리뷰를 진행한다. 코드 리뷰를 통해 변경사항을 정확히 파악해야 한다. 코드의 변경사항을 파악하고 추적하는건 정말 중요하다. 어느 시간대에 무슨 변경이 이루어졌는지를 알아야 한다.. 2024. 1. 21.
[AWS and 테라폼: Infrastructure as Code] FUNCTIONS 활용하기 Terraform fuction 사용하기 Terraform 을 프로그래밍 언어라 볼 수 는 없지만, 그래도 언어적 특성과 장점을 가지고 있다. 그렇기 때문에 프로그래밍처럼 기본 내장된 다양한 fuction 사용할 수 있다. 사용자는 이 함수를 이용하여 리소스를 보다 효율적으로 생산할 수 있고, 간략하게 코드를 만들 수 있다. 현재는 built-in 함수만 지원하고 있다. Functions Numeric functions String functions Collection functions Encoding functions Filesystem functions Date and Time functions Hash and Crypto functions IP Network functions Type Convers.. 2024. 1. 21.
[AWS and 테라폼: Infrastructure as Code] VARIABLES 활용하기 Terraform variables 사용하기 Terraform 은 HCL Syntax를 가진 언어다. 언어적 특성을 가지고 있기 때문에 당연히 변수를 정의하고 주입해서 사용할 수 있다. Variable Types string number bool Complex variable types list() set() map() object({ = , … }) tuple([, …]) 변수를 정의하기 variables.tf 변수의 정의는 .tf 파일 어느 곳에서나 정의는 가능하다. 보통 variables.tf 파일을 만들어 해당 파일에 정의한다. variable "image_id" { type = string } variable "availability_zone_names" { type = list(string) .. 2024. 1. 21.