Load Balancer (부하 분산 장치)
외부에서 들어오는 트래픽을 특정 알고리즘을 기반으로 다수의 서버로 분산(OSI L4에서 작동)
언제 사용하는가?
- 내/외부 트래픽을 가상머신으로 부하분산
- 리전 내 리소스에 대한 가용성 상승
- 가상머신에 대한 아웃바운드 연결
- 상태프로브를 사용하여 분산된 리소스 모니터링
상태 프로브 : 백 엔드 풀의 인스턴스 상태를 확인함
백 엔드 풀 : 들어오는 요청을 처리하는 VM
프런트 엔드 IP : LB의 IP주소 > 공용IP, 개인IP
로드밸런서 알고리즘: 부하가 백엔드 노드에게 전달하는 규칙
- 라운드 로빈 : 순차적으로 서버에 트래픽 할당
- 가중치 라운드 로빈 : 가중치가 높은 순으로 처리
- 최소 연결 방식 : 가장 처리를 적게 한 서버순으로 할당
- 등등 ..
AZURE 로드밸런서 알고리즘 : 5-튜플 해시 알고리즘
패킷의 정보 5가지(소스IP, 목적지IP, 소스 포트, 목적지 포트, 프로토콜)를 기반으로 분배하는 방식
1. 부하 분산 장치 생성
- 공용ip 없음으로 가상머신 생성 후
고급탭 > 사용자 데이터 사용 > 아래 쉘 추가 > 만들기
#! /bin/bash
sudo apt-get -y update
sudo apt-get install -y apache2
sudo service apache2 start
sudo echo "This is LB TEST server1!" > /var/www/html/index.html
- 부하 분산 장치 만들기
- 프런트 엔드 IP추가 > 공용 IP주소도 추가 > 저장
- 백 엔드 풀 추가
- 백 엔드에 IP구성 추가 (앞에서 생성한 가상머신 2개) > 추가 후 저장
- 인바운드 규칙 > 부하 분산 규칙 추가
5-튜플 해시 알고리즘 : 포트와 상태프로브를 활용하여 트래픽 할당
- 상태 프로브도 만들기 > a000000-probe 입력 후 저장 > 저장 > 만들기
- 할당 후 리소스 이동 > 프론트 엔드 IP구성 보기 > IP주소 복사 후 접속
2. VMSS 추가하기
VMSS : 부하 분산된 VM의 그룹
- Horizontal Scaling(수평적 크기조정)을 진행
스케일 아웃 : 가상머신 추가
스케일 인 : 가상머신 제거
- Vertical Scaling(수직적 크기조정)
스케일 업 : 메모리, CPU 등의 리소스 용량 증설
스케일 다운 : 리소스 용량 축소
- 그룹, 가상머신 이름, 지역, 가용성 영역 1,2,3
- 자동 크기 조정 > 수정
- 우측 편집 버튼 클릭 > 인스턴스 제한 및 스케일 인 아웃 지정 > 저장 두번
- 네트워킹 가상네트워크 및 서브넷 선택
- 아래 부하분산 장치 클릭 만들기 클릭
- 고급텝 > 사용자 데이터 사용 체크 > 아래 코드 입력 > 만들기
#! /bin/bash
sudo apt-get -y update
sudo apt-get install -y apache2
sudo service apache2 start
sudo echo "This is LB vmss server!" > /var/www/html/index.html
- 리소스 이동 > 왼쪽 메뉴에 네트워크 > 네트워크 설정 > > 포트 규칙 만들기 > 인바운드 포트 규칙 클릭
- ssh 선택 후 추가
- vmss 가상머신 ip확인 후 스트레스 주기
cd .\Downloads\
ssh -i .\키이름-vm-key.pem 사용자이름@<vmss IP>
sudo apt-get install -y stress
stress -c 2
Ctrl+C로 취소 가능
- 그래프 확인
'KT AIVLE School > 가상화 클라우드' 카테고리의 다른 글
Kubernetes (0) | 2024.12.16 |
---|---|
Docker & Container (0) | 2024.12.16 |
Microsoft Azure (0) | 2024.12.05 |
가상화 (2) | 2024.12.05 |