본문 바로가기

반응형

테라폼

[Terraform] 테라폼 ALB(로드밸런서) 생성 ALB(로드밸런서) 생성 (선행 작업) - Route 53 생성 - SSL 인증서 생성 - security group 생성 - 인스턴스 생성 - ./script/install_web1.sh 스크립트 생성 alb.tf 파일 생성 $ vim alb.tf ####################ALB 생성 resource "aws_alb" "tf_alb-web1" { name = "web1" internal = false load_balancer_type = "application" idle_timeout = 60 security_groups = [ aws_security_group.tf_vpc99_sg_alb-web1.id ] subnets = [ aws_subnet.tf_vpc99-sb11.id, aws_su.. 더보기
[Terraform] 테라폼 ec2 인스턴스 생성 ec2 인스턴스 생성 (선행 작업) - key pair 생성 - security group 생성 - ./script/install_web1.sh 스크립트 생성 instance.tf 파일 생성 $ vim instance.tf resource "aws_instance" "web31" { ami = "ami-047a51fa27710816e" instance_type = "t2.micro" #ebs_optimized = true #monitoring = true #count = 1 key_name = aws_key_pair.aws_key_4wxyz.key_name associate_public_ip_address = true # subnet_id = aws_subnet.sangchul_vpc11-sb3.id v.. 더보기
[Terraform] 테라폼 SSL 인증서 등록(Certificate_Manager) SSL 인증서 등록(Certificate_Manager) (선행 작업) route 53에 호스팅 영역이 등록되어 있어야 함 acm.tf 파일 생성 $ vim acm.tf ####################ACM SSL 인증서 생성 resource "aws_acm_certificate" "sangchulkr" { domain_name = "sangchul.kr" subject_alternative_names = [ "*.sangchul.kr" ] validation_method = "DNS" lifecycle { create_before_destroy = true } tags = { Name = "sangchulkr" Env = "stg" CreateUser = "terraform@email.com" O.. 더보기
[Terraform] 테라폼 Route 53 도메인 등록 Route 53 도메인 등록 route53.tf 파일 생성 $ vim route53.tf ####################Route 53 Zone(도메인) 등록 resource "aws_route53_zone" "sangchulkr" { name = "sangchul.kr" comment = "sangchul.kr" } ####################Route 53 MX Record(서브 도메인) 등록(G. Suite) resource "aws_route53_record" "sangchulkr_mx" { zone_id = aws_route53_zone.sangchulkr.id name = "sangchul.kr" type = "MX" ttl = "3600" records = [ "1 ASPMX... 더보기
[Terraform] 테라폼 리소스 그래프 생성 테라폼 리소스 그래프 생성 terraform graph terraform graph | dot -Tsvg > graph.svg or terraform graph | dot -Tpng > graph.png 브라우저에서 graph.svg 열기(브라우저로 graph.svg 파일 드래그 앤 드롭) graphviz 설치 https://sangchul.kr/910 [URL] GraphViz 설치(for MAC) GraphViz 설치(for MAC) $ brew install graphviz graphviz 사용 방법 > terraform graph | dot -Tsvg > graph.svg > open . graph.svg 파일을 브라우저에서 열기(드래그 앤 드롭) sangchul.kr 더보기
[Terraform] 테라폼 라우팅 테이블 생성 라우팅 테이블 생성 (선행 작업) - VPC 생성 rtb.tf 파일 생성 $ vim rtb.tf ###라우팅 테이블 생성 #Public default route table resource "aws_default_route_table" "sangchul_vpc11-rt" { default_route_table_id = aws_vpc.sangchul_vpc11.default_route_table_id route { cidr_block = "0.0.0.0/0" gateway_id = aws_internet_gateway.sangchul_vpc11-igw.id } tags = { Name = "sangchul_vpc11-rt" Env = "stg" CreateUser = "terraform@email.com" .. 더보기
[Terraform] 테라폼 인터넷 게이트웨이 생성 인터넷 게이트웨이 생성 (선행 작업) - VPC 생성 igw.tf 파일 생성 $ vim igw.tf ###인터넷 게이트웨이 생성 resource "aws_internet_gateway" "sangchul_vpc11-igw" { vpc_id = aws_vpc.sangchul_vpc11.id tags = { Name = "sangchul_vpc11-igw" Env = "stg" CreateUser = "terraform@email.com" Owner = "iac" Role = "internet_gateway" Service = "network" } } terraform apply 명령 실행 $ terraform apply aws_vpc.sangchul_vpc11: Refreshing state... [id=.. 더보기
[Terraform] 테라폼 서브넷 생성 서브넷 생성 (선행 작업) - VPC 생성 subnets.tf 파일 생성 $ vim subnet.tf ###Subnet 생성 # Public(WEB) resource "aws_subnet" "sangchul_vpc11-sb3" { vpc_id = aws_vpc.sangchul_vpc11.id cidr_block = "10.11.3.0/24" map_public_ip_on_launch = true availability_zone = "us-east-1a" tags = { Name = "sangchul_vpc11-sb3" Env = "stg" CreateUser = "terraform@email.com" Owner = "iac" Role = "subnet" Service = "network" } } reso.. 더보기

728x90
반응형