일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |
- Kubernetis
- mariaDB
- DevOps
- staticmethod
- AWS Security Hub
- Cognito
- taint
- Amazon DynamoDB
- Amazon VPC
- AWS EC2
- Terraform state
- SSL 인증서
- classmethod
- AWS
- Amazon GuardDuty
- Amazon RDS
- Backend
- k8s
- ConfigMap
- ReplicaSet
- DaemonSet
- CI CD
- Python
- Amazon Route 53
- Heartbleed
- Industry Week 2023
- deployment
- Terraform
- docker
- ansible
- Today
- Total
목록Terraform (8)
Nubes et Stella

01. Terraform Module 테라폼 모듈은 테라폼에서 여러번 재사용가능한 코드모음이라고 생각하면 될 것 같다. 모듈을 사용하는 주 목적은 여러번 사용되는 기능을 모듈화하여 코드 관리성을 높이기 위함이다. Terraform Module 구현 main.tf 파일 아래 account 디렉터리를 생성하여, 그안에 모듈 코드를 작성한다. (하나의 모듈은 하나의 디렉터리 라고 생각하면 편할 것 같다.) version.tf 파일에서 terraform 과 provider(aws)에서 요구하는 버전 정보를 명시한다. 1 terraform { 2 required_version = ">= 0.15" 3 4 required_providers { 5 aws = { 6 source = "hashicorp/aws" 7 v..

01. Terraform taint Terraform taint는 특정 리소스에 문제가 발생하여 해당 리소스를 강제로 교체해야 할 경우에 사용되는 옵션이다. Terraform state list 목록에서 교체하고자 하는 리소스를 확인한다. terraform taint "리소스 명" 명령어를 사용하여, aws_internet_gateway 리소스를 taint 한다. (한 번에 여러개 가능) terraform apply를 진행하게 되면 taint 상태의 리소스가 변경되려는 것을 볼 수 있다. 동시에 route_table 리소스에 설정된 internet_gateway 값이 같이 변경된다. (의존성) terraform apply후 실제로 internet_gateway가 변경된 것을 볼 수 있다. taint 상태..

01. Terraform Backend 테라폼 백엔드는 테라폼의 상태 정보를 저장하고 관리하는데 사용되는 구성 요소입니다. 테라폼 상태 정보는 테라폼이 관리하는 인프라스트럭처의 현재 상태를 추적하고 변경사항을 적용할 때 사용된다. 백엔드는 기본적으로 "Local State" 로 저장되며, 원격 저장소에 "Remote State" 방식으로 저장할 수도 있다. Remote State는 주로 "AWS S3" 에 저장하는 방식과 "Terraform Cloud (Remote Backend)" 에 저장하는 방식이 크게 사용된다. **Locking 이란? 락킹은 테라폼 상태파일을 원격으로 관리할 때 여러명이 동시에 작업을 진행할 경우, 동시성 이슈가 발생할 수 있다. 예를들면 작업자1이 s3-1, 작업자2가 s3-2..

01. Terraform 조건문(Conditional) 테라폼에는 프로그래밍에서와 비슷하게 조건문을 사용할 수 있다. 대표적인 조건 문법인 "Condition ? If_True : If_ False" 형태로 구현될 수 있다. 테라폼 문서 : https://developer.hashicorp.com/terraform/language/expressions/conditionals Conditional Expressions - Configuration Language | Terraform | HashiCorp Developer Conditional expressions select one of two values. You can use them to define defaults to replace invalid..

01. Terraform count 문 테라폼에는 프로그래밍에서와 비슷하게 반복문을 사용할 수 있다. 예를 들어 불특정 20개의 계정을 생성해야 한다면 resource를 20개 생성해야 하는 불편함이 있다. 이 때 반복문을 쓰게 되면 간단하게 구현할 수 있다. 테라폼 문서 : https://developer.hashicorp.com/terraform/language/meta-arguments/count The count Meta-Argument - Configuration Language | Terraform | HashiCorp Developer Count helps you efficiently manage nearly identical infrastructure resources without wri..

01. Terraform with AWS EC2 - AWS EC2 테라폼 공식링크 : https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/instance Terraform Registry registry.terraform.io - AWS EC2 자원 블록 생성 > data 블록 설정 aws_ami 유형으로 ami 불러오기 > data 메타인자 filter : 딕셔너리 형태로 name과 values값 입력 most_recent : 가장 최신버전으로 설치할지 여부 (true/false) > resource 블록 설정 aws_instance 유형에 web이라는 이름으로 설정 > resource 메타인자 instance_type..

01. Terraform 표현식 에는 인프라의 타입을 정의하고, 첫 번째 에는 인프라의 유형을 넣는다. 마지막 에는 인프라의 이름을 작성한다. 아래의 코드를 예로 들면 "resource" 타입을 지정하고 aws_vpc 유형으로 aws의 vpc를 설정한다. 이 때 Terraform내에서 해당 인프라의 명칭은 "main"으로 설정한다. resource "aws_vpc" "main" { cidr_block = var.base_cidr_block } "" "" { # Block body = # Argument } 02. Terraform 주요 커맨드 - alias 설정 terraform을 사용할 때 단어 전체를 치기에는 불편함이 있어 짧은 단어로 별칭을 설정해준다 - help 옵션 : terraform에서 쓸 ..

01. Terraform이란? 하시코프사에서 오픈소스로 개발한 대표적인 IaC 도구이다. 테라폼을 사용하면 여러 클라우드환경(AWS, Azure, GCP)에서 코드로 인프라 및 리소스를 관리할 수 있다. 링크 : https://www.terraform.io/ **IaC(Infrastructure as Code)란? 코드형 인프라를 뜻하는 단어로서, 기존 물리적 인프라 구성 방식을 탈피하여 코드로 간편하게 클라우드, 가상화, 컨테이너 환경을 프로비저닝 하는 것을 뜻한다. IaC의 대표적인 툴은 아래와 같다. Chef Puppet Red Hat Ansible Automation Platform Saltstack Terraform AWS CloudFormation 02. Terraform 동작 Terrafor..