[AWS] ELB 로드밸런싱 테스트

sunnyjjang·2024년 10월 6일

AWS

목록 보기
15/21
post-thumbnail

LAB. Server LoadBalancer

워크플로우
1. vpc 생성
2. 보안 그룹 생성
3. 인스턴스 생성
4. 대상 그룹 생성
5. 로드밸런서 생성

1. VPC 생성

  • name : lab
  • IPv4 CIDR 블록 : 10.0.0.0/16
  • az : a, c
    • 프리티어는 t2에서 a랑 c를 지원하기 때문에
  • subnet
    • public : 10.0.0.0/24(2a), 10.0.1.0/24(2c)
    • private 4 : 10.0.2.0/24(2a), 10.0.4.0/24(2a), 10.0.3.0/24(2c), 10.0.5.0/24(2c)
  • NAT 게이트웨이 : 1개의 AZ에서
  • VPC 엔드포인트 : 없음
  • DNS 옵션 : 활성화

2. 보안 그룹 생성

  • ALB-SG
    • vpc : lab-vpc
    • inbound : 80 - anywhere
  • WEB-SG
    • vpc : lab-vpc
    • inbound : 80 - ALB-SG

3. 인스턴스 생성

  • web1
    • AMI : Amazon Linux 2023 AMI
    • 인스턴스 유형: t2.micro
    • key : lab-key
    • vpc : lab-vpc
      • 서브넷 : private1(10.0.2.0/24)
      • 퍼블릭 IP : 비활성화
      • 보안그룹 : WEB-SG
    • 스토리지: 8G
    • 사용자 데이터
      #!/bin/bash -ex
      # Install http php, mysql
      dnf update
      dnf install httpd php php-mysqlnd php-fpm php-json mariadb105 -y

      #Web Service start
      systemctl enable --now httpd

      #Download web data
      cd /var/www/html/
      wget https://aws-largeobjects.s3.ap-northeast-2.amazonaws.com/AWS-AcademyACF/lab7-app-php7.zip
      unzip lab7-app-php7.zip -d /var/www/html/
      chown apache:root /var/www/html/rds.conf.php
  • web2
    • AMI : Amazon Linux 2023 AMI
    • 인스턴스 유형 : t2.micro
    • key : lab-key
    • vpc : lab-vpc
      • 서브넷: private2(10.0.3.0/24)
      • 퍼블릭 IP : 비활성화
      • 보안 그룹 : WEB-SG
    • 스토리지: 8G
    • 사용자 데이터
      #!/bin/bash -ex
      # Install http php, mysql
      dnf update
      dnf install httpd php php-mysqlnd php-fpm php-json mariadb105 -y

      #Web Service start
      systemctl enable --now httpd

      #Download web data
      cd /var/www/html/
      wget https://aws-largeobjects.s3.ap-northeast-2.amazonaws.com/AWS-AcademyACF/lab7-app-php7.zip
      unzip lab7-app-php7.zip -d /var/www/html/
      chown apache:root /var/www/html/rds.conf.php

4. 대상 그룹 생성

  • 대상 그룹 생성
    • 1단계 : 그룹 세부 정보 지정
      • 유형 : 인스턴스
      • name : web-alb-tg
      • 프로토콜/포트 : HTTP/80
      • IP 주소 유형 : IPv4
      • vpc : lab-vpc
      • 프로토콜 버전 : HTTP1
      • 상태 검사
        • 프로토콜 : HTTP
        • 상태 검사 경로 : /
    • 2단계 : 대상 등록
      • 사용 가능한 인스턴스
        • web1
        • web2
      • 선택한 인스턴스를 위한 포트 : 80
      • [아래에 보류 중인 것으로 포함 선택 후 대상 그룹 생성] 클릭

5. 로드밸런서 생성

  • 로드 밸런서 생성
    • 유형 : Application Load Balancer
    • name : web-alb
    • 체계 : 인터넷 경계 (외부 접속용)
    • 로드 밸런서 IP 주소 유형 : IPv4
    • 네트워크 매핑
      • vpc : lab-vpc
      • 매핑
        • az (ALB가 있을 위치 지정-퍼블릭 서브넷에 있어야 외부 연결 가능) : public
    • 보안 그룹 : ALB-SG
    • 리스너 및 라우팅
      • 프로토콜 : HTTP
      • 포트 : 80
      • 대상 그룹 : web-alb-tg

동작 확인

  • ALB의 DNS 이름으로 접속 요청
profile
지금 이 순간이 다시 넘겨볼 수 있는 한 페이지가 될 수 있게

0개의 댓글