terraform 24

Terraform을 이용한 Fargate 서비스 구축

AWS Architecture Fargate에 웹/앱 서비스 배포 Fargate(web - was) - RDS 연동으로 3tier 아키텍처 구축 HPA AutoScaling 자동화 CloudWatch Container Insights로 EKS 모니터링 배치 작업으로 CloudWatch 로그를 매일 정각에 S3로 보관, 180일 경과된 로그는 S3 Glacier로 보관 EKS Pod CPU Utilization 및 Memory Utilization 에 따른 SNS 알림 ACM인증을 통한 Nginx Ingress(Network LoadBalancer) 목적 Terraform으로 3tier 인프라 구축을 자동화하여 안전하고 효율적인 프로비저닝 기대 모니터링과 SNS 알림으로 실시간 장애 탐지 S3 스토리지에 ..

[AWS Terraform]Wordpress EC2 인스턴스 생성

사전 작업: 프로바이더 설정, VPC, 키페어, 서브넷, 인터넷 게이트웨이, 라우트 테이블, 보안그룹, 로드발란서, RDS 생성 (퍼블릭 서브넷에 인스턴스를 올릴것이기 때문에 NAT 게이트웨이는 제외) (서브넷은 가용영역별로 애플리케이션용 퍼블릭 하나, RDS용 프라이빗 하나 생성) 생성 방법은 이전 포스팅 참조 1. Wordpress 실행 파일 작성 # wordpress.sh #! /bin/bash yum install -y httpd amazon-linux-extras enable php7.4 yum install -y php php-cli php-pdo php-fpm php-json php-mysqlnd mariadb wget https://ko.wordpress.org/wordpress-5.7.8..

AWS/Terraform 2023.07.15

[AWS Terraform 기초]19. AutoScaling Group에 ALB 연결

1. Terraform Docs 예시 https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/autoscaling_attachment Terraform Registry registry.terraform.io 예시: 인수 등: 2. Terraform 코드 작성 # 18_autosgatt.tf resource "aws_autoscaling_attachment" "pmh-autosgatt" { autoscaling_group_name = aws_autoscaling_group.pmh_autosg.id lb_target_group_arn = aws_lb_target_group.pmh_albtg.arn } resource "aws_a..

AWS/Terraform 2023.07.13

[AWS Terraform 기초]18. AutoScaling Group 생성

앞서 만들었던 시작 템플릿과 AMI로 오토 스케일링 생성 1. Terraform Docs 예시 https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/autoscaling_group Terraform Registry registry.terraform.io 예시: 인수 등: 2. Terraform 코드 작성 # 17_autosg.tf resource "aws_autoscaling_group" "pmh_autosg" { name = "pmh-autosg" min_size = 1 max_size = 6 desired_capacity = 1 health_check_grace_period = 60 health_check_type = ..

AWS/Terraform 2023.07.13

[AWS Terraform 기초]17. Launch Template(시작 템플릿) 생성

Auto Scaling에 사용될 시작 템플릿 생성 1. Terraform Docs 예시 https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/launch_template Terraform Registry registry.terraform.io 예시: 인수 등: 2. Terraform 코드 작성 # 16_lantemp.tf resource "aws_launch_template" "pmh_lantemp" { name = "pmh-lantemp" block_device_mappings { device_name = "/dev/sdf" ebs { volume_size = 10 volume_type = "gp2" } } image_i..

AWS/Terraform 2023.07.13

[AWS Terraform 기초]16. AMI 생성

Auto Scaling에 사용될 시작 템플릿을 만들기 위한 AMI 생성 1. Terraform Docs 예시 https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/ami_from_instance Terraform Registry registry.terraform.io 예시: 인수 등: 2. Terraform 코드 작성 # 15_ami.tf resource "aws_ami_from_instance" "pmh_ami" { name = "pmh-ami" source_instance_id = aws_instance.pmh_ma.id depends_on = [ aws_instance.pmh_ma ] } resource "aws_am..

AWS/Terraform 2023.07.13