대상 그룹은 무엇이고, 어떻게 생성할까?
대상 그룹 (Target Group)
--
대상 그룹은
ELB로 들어온 요청을 어떤 무언가에게 전달을 해줘야 하는데
이 어떤 무언가를 대상 그룹이라고 말한다.
즉, ELB로 들어온 요청을 어디로 보낼지 대상 그룹을 만들어 줘야 한다.
정리하면
ELB가 트래픽을 분배할 대상(주소 EC2 인스턴스, Lambda 함수, IP 주소 등)을 그룹화한 개념이다.
--
대상 그룹 생성 버튼 위치
--
EC2 -> 대상 그룹 -> 대상 그룹 생성 버튼
--
[대상 그룹 생성 과정] 기본 구성
--
대상 유형 선택은
ELB로 요청받은 트래픽을 어디로 전달할지 선택하는 파트다.
서버 배포 중인 EC2 인스턴스로 전달할 예정이므로 인스턴스를 선택했다.
대상 그룹 이름은
해당 대상 그룹의 이름을 작성하는 파트로
다른 대상 그룹과 구분하기 위해 작성된다.
프로토콜:포트는
전달할 대상에게 어떠한 방식으로 트래픽을 전달할지 작성하는 파트로
HTTP 방식인 80번 포트로 전달하도록 지정했다.
(EC2 인스턴스에서 배포 실행 중인 애플리케이션이 80번 포트에서 실행 중)
(EC2 인스턴스에 정의한 보안 그룹에서 80번 포트 접근은 허용되어 있다.)
IP 주소 유형은
어떠한 IP 주소 형태로 전달할지 정의하는 파트로
전달할 때 IPv4 주소 형태로 전달하도록 지정했다.
(EC2 인스턴스가 IPv4 주소를 가지고 있다.)
프로토콜 버전은
어떤 프로토콜 버전으로 전달할지 정의하는 파트로
일반적인 HTTP1을 선택했다.
VPC는 그대로 기본값을 사용했다.
--
[대상 그룹 생성 과정] 상태 검사
--
상태 검사는
ELB의 부가 기능으로
대상 그룹에 있는 대상에게 트래픽을 전달할 때
특정 대상이 에러가 난 상태라면 해당 대상에게 트래픽을 전송하는 것을 방지하기 위해
ELB에서 주기적으로 대상 그룹의 대상들에게 검사용 트래픽을 보내
상태가 어떤지 판별하는 기능이다.
예시로
실제 ELB로 들어온 요청을 대상 그룹에 있는 여러 EC2 인스턴스로 전달을 하는데
만약 특정 EC2 인스턴스가 에러난 생태라고 가정하면
ELB 입장에서 고장 난 서버에게 요청(트래픽)을 전달하는 것은 비효율적이게 된다.
이를 방지하기 위해 ELB는 주기적으로 (기본 30초 간격) 대상 그룹에 속해있는 각 EC2 인스턴스에 요청을 보내고
해당 요청에 대한 200번대 응답이 날아오면 해다 서버는 정상적임을 판단하고
200번대 응답이 오지 않으면 해당 서버는 고장 났다고 판단하게 된다.
이때 고장난 서버로는 트래픽을 전달하지 않도록 조금 더 효율적인 요청(트래픽) 분배가 가능해진다.
일반적으로 상태 검사용 요청 경로는
/health로 지정한다.
이때 상태 검사용 요청을 받을 대상 그룹의 속한 대상들에게 해당 요청을 받는
백엔드 서버 api (GET 방식)을 만들어 줘야 한다.
즉, 백엔드 서버에서 상태 검사용 api도 만들어줘야 한다.
--
[대상 그룹 생성 과정] 대상 등록
--
대상 그룹에 대상을 지정하는 파트로
EC2 인스턴스를 선택 후 대상으로 등록했다.
--
'AWS' 카테고리의 다른 글
IAM (Identity and Access Management) (0) | 2024.09.05 |
---|---|
탄력적 IP (Elastic IP) (0) | 2024.09.05 |
보안 그룹 (Security Group) (0) | 2024.09.02 |
키 페어 (key pair) (0) | 2024.09.02 |
[EC2] EC2 (Elastic Compute Cloud)란? (0) | 2024.07.07 |