과제의 목표스냅샷 복원을 이용하여 RDS를 구축 하는 것이다.resource "aws_db_instance" "rds" { // DB 인스턴스 설정 engine = "oracle-se2" license_model = "license-included" identifier = "tokyo-stg-rds-gh" //복원 할 스냅샷 지정 snapshot_identifier = "tokyo-stg-rds-gh-1234" //인스턴스 구성 instance_class = "db.r5.large" //스토리지 storage_type = "gp2" allocated_storage = 171..
backend.tf 구성 예시terraform { backend "remote" { hostname = "app.terraform.io" organization = "ghpark" workspaces { name = "GH_ECS_STAGING" } }}위의 코드처럼 Terraform Cloud에 적용 시킬 수 있다.organization = "ghpark" : ghpark이란 조직이 생성 된다.name = "GH_ECS_STAGING" : GH_ECS_STAGING이란 workspace가 생성 된다.Module 이해관련있는 리소스 구성을 패키징하고 재사용하는 방법이다.module "gh_ecs_module" { source = "../modules/aws-gh_ecs..
Resource Name 선언ALB 이름 예시Variable Blockvariable "solution_name" { default = "AirRic3"}variable "environment" { default = "Development"}variable “solution_name”variable “solution_name” : solution_name에 대한 변수를 선언한다.default : solution_name 기본값을 AirRic3로 선언한다.variable “environment”variable “enviroment” : enviroment에 대한 변수를 선언한다.default : enviroment의 기본값을 Development로 선언한다.Development, Staging, Produ..
테라폼이란?테라폼은 HCL(HashiCorp Configuration Language)을 사용하여 인프라를 관리한다.HCL이란?HCL(HashiCorp Configuration Language)은 Terraform 같은 HashiCorp 도구에서 사용 된다.Variable 이해입력 변수 (variable)란?인프라의 구성 요소 값을 저장한다. 보통 변수들은 variable.tf 파일에 선언해 준다. (회사마다 다르다.)실제 변수 예시variable "solution_name" { default = "ghCOMMON"}위의 코드처럼 변수를 지정하고resource "aws_lb" "alb" { name = var.soulution_name위의 코드처럼 변수를 호출 한다.Output 이해출력 (OutPut)..
Terraform이란?Terraform은 오픈 소스 코드형 인프라 (IaC)도구이다.HCL이라는 언어를 사용해서, 클라우드 인프라 리소스 정의, 프로비저닝 및 관리할 수 있다.IaC란?IaC(Infrastructure as Code)는 코드로 인프라스트럭처를 관리한다는 개념이다.쉽게 말해, 인프라를 사람이 읽을 수 있는 코드로 만들 수 있다.IaC가 좋은 이유는 코드를 공유하거나 재사용이 가능하다는 것이다.기본 구성 개념프로비저닝 - 프로세스나 서비스를 실행하기 위한 준비 단계프로바이더 - 테라폼과 외부 서비스를 연결해주는 기능 (AWS, Github, GitLab)리소스 - 프로바이더가 제공해주는 조작 가능한 대상의 최소 단위계획 (Plan) - .tf 파일의 내용을 실제로 적용 가능한지 확인하는 작업..