728x90
반응형
SMALL

terraform 16

AWS + Terraform (Variable)

Variables 이번엔 Variable을 사용해서 코드에서 사용할 수 있도록 해보자. 이전 포스팅에서 사용했던 main.tf 파일에서 다음을 추가한다. variable "vpc_name" { } 이 코드는 vpc_name 이라는 변수를 만든 것이다. 여기에 기본값을 설정하지 않으면 Apply를 할 때 변수 이름을 받도록 되어 있다. 그래서 이 변수를 사용해보기 위해 VPC의 name 값을 var.vpc_name 으로 변경해보자. module "vpc" { source = "tedilabs/network/aws//modules/vpc" version = "0.24.0" name = var.vpc_name cidr_block = "10.0.0.0/16" internet_gateway_enabled = tr..

카테고리 없음 2024.03.06

AWS + Terraform (Module)

목표 이번에는 모듈을 사용해서 인프라를 구축해보자. VPC, Subnet, Route Tables 등등을 모듈로 정의하고 가져다가 사용해서 인프라를 구축한다. Module 모듈은 쉽게 말해서, 어떤 특정 컴포넌트(예: VPC)를 만들기 위해 필요한 정보들을 미리 구현해놓은 누군가(또는 나의)의 것을 가져다가 사용한다고 생각하면 된다. 개발할 때 패키지나 모듈을 다운받아서 가져다가 쓰는 원리랑 동일하다. 그래서 테라폼 레지스트리에서 올려놓은 여러 모듈 중 하나를 가져다가 사용해서 인프라를 구성해보자. 테라폼 레지스트리에 등록된 모듈 중 이 모듈을 사용할 것이다. Terraform Registry registry.terraform.io 여기 보면 AWS 네트워크 관련된 모듈들이 있다. Terraform Re..

AWS + Terraform

이번엔 AWS Provider를 사용해서 Terraform을 이용해보자. AWS Provider 다음 링크는 AWS Provider 관련 링크이다. Terraform Registry registry.terraform.io 이 링크에서 우측 상단 "Documentation" 버튼을 클릭하면 어떻게 provider를 적어 넣을지 보여준다. 한번 우리가 기존에 만들었던 main.tf 파일에 다음 코드를 추가해보자. provider "aws" { region = "ap-northeast-2" } 그리고 그 다음에 위 예제대로 다음 코드를 추가해보자. resource "aws_vpc" "vpc" { cidr_block = "10.0.0.0/16" } 이 작업을 수행하기 앞서 AWS CLI가 있어야 하고 AWS C..

Terraform 소개 및 간단하게 다루어보기

Terraform 소개 Terraform으로 본격적으로 인프라를 코드로 관리하기 앞서 알고 가야할 기본 내용들이 존재한다. 우선 핵심이 되는 흐름인 "Write" - "Plan" - "Apply"에 대해서 알아보자. Write Write는 리소스를 정의하는 단계이다. 테라폼이 읽을 수 있는 언어로 여러 클라우드 프로바이더 중 내가 원하는 클라우드 프로바이더에 이것 저것 인프라를 구축하기 위해 필요한 리소스를 작성하고 설계하는 단계 Plan Plan은 Write 단계에서 작성한 리소스에 대한 정의를 가지고 어떻게 만들어질 것인가를 알려주는 단계이다. "무언가가 생겨나거나 지워지거나 등 이렇게 구성될 것이다."에 대한 내용을 보여주는 단계 Apply Apply는 Plan에서 보여준 내용을 실제로 적용하는 단..

Terraform 설치 및 설정하기

Terraform 설치 Install | Terraform | HashiCorp Developer Explore Terraform product documentation, tutorials, and examples. developer.hashicorp.com 해당 문서에서 본인의 운영체제에 맞게 설치를 하면 된다. 설치가 끝나면 다음 명령어로 설치가 정상적으로 됐는지 확인한다. terraform -version 버전이 잘 나오면 설치가 성공적으로 된 것이다. Terraform 자동완성 설정 Install Terraform | Terraform | HashiCorp Developer Install Terraform on Mac, Linux, or Windows by downloading the binary..

Part 8. DevOps 개념 이해와 Immutable Infra

AWS를 DevOps 개념과 엮어 사용하기 위해서 DevOps 개념에 대해 좀 자세히 이해해 보자. DevOps란? Develop + Operation의 합성어로 개발과 운영의 경계를 허물고 통합하고자 하는 문화 또는 철학을 의미한다. 기술이 아니다. 소프트웨어 개발 프로세스와 운영의 모든 단계의 통합과 자동화를 목표로 한다. 즉, 개발 - 빌드 - 테스트 - 배포 - 운영 - 모니터링의 이 영원히 반복되는 사이클을 통합하고 자동화하여 하나의 문화로 만드는 것을 목표로 삼는다고 보면 되겠다. 이 DevOps라는 개념이 도입되기 전엔 배포 방식은 개발과 운영의 철저한 분리 상태를 유지하고 개발자는 운영에 대해 생각하지 않고 운영자는 개발에 대해 생각하지 않는 그런 흐름이 진행됐다. 그러다 애자일(Agile..

AWS 2024.01.11
728x90
반응형
LIST