![](https://seokwoo.kim/wp-content/uploads/2020/06/load-balancing-1-e1595713417494.png)
Open Source Load Balance for HA
애플리케이션 고 가용성을 설정하고 성능을 향상시키는 가장 빠르고 쉬운 방법 중 하나는 Load Balance 를 구현하는 것입니다.
세 가지 유형의 Load Balance가 있습니다.
- 하드웨어 기반
- 클라우드 기반
- 소프트웨어 기반
하드웨어 기반은 Load Balance(이하 LB) 기능을 제공하는 전용 장치이며 인기있는 LB 하드웨어 벤더 일부는 다음과 같습니다.
- F5
- TP-Link
- Barracuda
하드웨어 기반 장치는 구매 가격이 비싸지 만 많은 기능들을 제공 합니다.
클라우드로 전환이 활발해 지면서 클라우드로드 밸런서 는 그 어느 때보다도 인기가 급상승 중입니다.
클라우드 LB를 사용하는 것은 하드웨어 어플라이언스에 투자하지 않고도 완전한 기능을 즐길 수있는 경제적 인 방법 중 하나입니다.
다음은 클라우드 LB 중 일부입니다.
- AWS
- Google Cloud
- Cloudflare
- Incapsula
- DigitalOcean
클라우드 LB는 한 달에 20 달러 정도부터 시작할 수 있습니다.
마지막으로 LB 소프트웨어를 직접 설치, 관리 및 구성하는 소프트웨어 기반 소프트웨어입니다. 상업용 또는 오픈 소스 / 무료 중 하나 일 수 있습니다.
예산이 없거나 무료 솔루션로드 밸런서 를 탐색하고 싶다면 아래가 도움이 될 것입니다.
무료 / 오픈 소스로드 밸런서
- Seesaw
- KEMP Loadmater
- HAproxy
- Zevenet
- Neutrino
- Balance
- Pen
- Nginx
- Traefik
- Gobetween
1 Seesaw
에서 사용하는 구글 , 신뢰할 수있는 리눅스 기반의 가상 부하 분산 서버는 동일한 네트워크에 필요한 부하 분산을 제공합니다.
Seesaw 는 Go 언어로 개발되었으며 우분투 / 데비안 배포판에서 잘 작동합니다. Anycast, DSR (직접 서버 반환)을 지원하며 두 개의 Seesaw 노드가 필요합니다. 그들은 물리적이거나 가상 일 수 있습니다.
Seesaw는 레이어 4 네트워크 와 작동 하기 때문에 레이어 7로드 균형 조정을 원할 경우 다른 옵션을 탐색 할 수 있습니다.
2 LoadMaster by KEMP
KEMP 의 무료 고급 응용 프로그램 제공 컨트롤러 는 모든 주요 하이퍼 바이저에서 지원됩니다. 데이터 센터에서 다운로드하여 사용하거나 AWS 또는 Azure와 같은 클라우드 DC에 배포 할 수 있습니다.
![](http://3.34.98.191/wp-content/uploads/2020/06/kemp.jpg)
무료이지만 다음과 같은 상업 기능을 제공합니다.
- 라운드 로빈 또는 최소 연결 알고리즘을 사용하는 TCP / UDP에 대한 레이어 4로드 밸런싱
- 레이어 7 밸런싱
- 내장 된 웹 응용 프로그램 방화벽 (WAF)
- 내장 된 침입 방지 엔진 (IPS)
- 진정한 글로벌 서버로드 밸런싱, 다중 사이트 지원
- 캐싱, 컨텐트 압축, 컨텐트 스위칭
- 웹 쿠키 지속성
- IPSec 터널링
KEMP LB는 Apple, Sony, JP Morgan, Audi, Hyundai 등의 대형 브랜드에서 사용됩니다. 무료 버전은 충분한 기능을 제공합니다. 그러나 더 많은 정보가 필요하면 상용 라이센스를 확인할 수 있습니다.
귀하 또는 조직이 KEMP LB를 탐색하고 온라인 교육이 필요한 경우 Mike Walton의 온라인 과정을 참조하십시오 .
3 HAProxy
고 가용성, 프록시, TCP / HTTP로드 밸런싱 을 제공하는 시장에서 인기있는 제품 중 하나 입니다. HAProxy 는 아래에서와 같이 전 세계 유명 유명 브랜드에서 사용됩니다.
- 에어 비앤비
- GitHub
- Imgur
- MaxCDN
가치있는 특징 중 일부는 언급하고 있습니다.
- IPv6 및 UNIX 소켓 지원
- Deflate & Gzip 압축
- 건강 체크
- 소스 기반 세션 끈적 함
- 내장 된 통계보고 (체크 아웃 데모 )
HAProxy는 엔터프라이즈 에디션, 하드웨어 및 가상 어플라이언스를 기대할 수 있습니다.
![](http://3.34.98.191/wp-content/uploads/2020/06/haproxy.jpg)
HAProxy에 대해 아는 가장 좋은 방법은 시도하는 것입니다. 커뮤니티 에디션에는 많은 기능이 포함되어 있으며 어쨌든 무료입니다.
4 Zevenet
Zevenet 은 L3, L4 및 L7을 지원합니다. 소스 코드, IOS 이미지 및 도커 저장소에서 사용할 수 있습니다.
![](http://3.34.98.191/wp-content/uploads/2020/06/zevenet.png)
또한 고급 상태 점검 모니터링을 지원 하므로 장애가 발생한 서버 / 서비스가 신속하게 작동하지 않아 원활한 사용자 환경을 제공 할 수 있습니다. 이전에 Zen으로 알려진 Zevenet은 FTP, SIP, SSL, HTTP 등과 같은 TCP 기반 프로토콜로 잘 작동합니다.
5 Neutrino
Neutrino 는 eBay에서 사용되고 Scala & Netty를 사용하여 제작되었습니다. 다음 스위칭 기능으로 최소 연결 및 라운드 로빈 알고리즘을 지원합니다.
- 정식 이름 사용
- 컨텍스트 기반
- TCP 포트 번호를 사용하는 L4
![](http://3.34.98.191/wp-content/uploads/2020/06/neutrino.png)
Neutrino는 2 코어 VM에서 초당 300 개 이상의 요청 을 처리하도록 테스트되었습니다 . HAProxy와 비교한다면, Neutrino를 사용할 때의 한 가지 주요 이점은 L7 스위칭입니다.
그러나 항상 그렇듯이 두 가지 방법을 시도해보고 환경에 가장 적합한 것이 무엇인지 확인하십시오.
6 Balance
실험실 네트워크의 Balance 은 수신 측에서 IPv6을 지원하는 TCP 프록시 라운드 로빈 LB입니다. 즉, 프런트 엔드에는 IPv4를, 백엔드에는 IPv6을 사용할 수 있습니다.
모든 기본 LB 기능을 가지고 있습니다.
7 Pen
Pen 은 Linux, FreeBSD, HP-UX, Solaris, Windows에서 테스트되었지만 다른 Unix 배포판에서는 작동하지 않아야합니다. 그것은 HTTP, SNMP, DNS 등과 같은 UDP 기반 프로토콜과 TCP 기반 프로토콜을 지원합니다.
일부 기능에는 기본 기능과 함께 다음 기능이 포함됩니다.
- GeoIP 필터
- SSL 종료
- IPv4 및 IPv6 호환성
8 Nginx
네가 뭘 생각하는지 알 겠어. Nginx는 웹 서버, 프록시 서버 등입니다. 그러나 오픈 소스 Nginx는 기본 수준의 컨텐츠 스위칭을 지원하고 여러 서버에 라우팅 라우팅을 요청합니다.
그러나 Nginx Plus 판은 그 이상입니다.
![](http://3.34.98.191/wp-content/uploads/2020/06/nginx-lb.png)
Nginx Plus는 로드 밸런싱, 컨텐츠 캐싱, 웹 서버, WAF, 모니터링 등을 포함한 올인원 웹 애플리케이션 딜리버리 솔루션 입니다. 초당 수백만 건의 요청을 처리 할 수있는 확장형 애플리케이션을위한 고성능로드 밸런서 솔루션을 제공합니다.
9 Traefik
현대적이고 빠른 HTTP 예약 프록시 및 GO로 작성된 LB. Traefik 은 여러 백엔드 서비스를 지원합니다. Amazon ECS, Docker, Kubernetes, Rancher 등
![](http://3.34.98.191/wp-content/uploads/2020/06/traefik.png)
그것은 Websockets, HTTP / 2 , 자동 SSL 인증서 갱신, 암호화, 인터페이스 관리 및 리소스 모니터링을 지원합니다.
10 Gobetween
Gobetween 은 최소한이지만 강력한 고성능 L4 TCP, TLS 및 UDP 기반로드 밸런서입니다.
![](http://3.34.98.191/wp-content/uploads/2020/06/gobetween-lb.png)
Windows, Linux, Docker, Darwin과 같은 여러 플랫폼에서 작동하며 관심이있는 경우 소스 코드로 빌드 할 수 있습니다. 균형 조정은 구성에서 선택한 다음 알고리즘을 기반으로 수행됩니다.
- IP 해시
- 세계적으로 유명한 라운드 로빈
- 최소 대역폭
- 최소 연결
- 무게
이 벤치 마크를 기반으로 Gobetween은 HAProxy보다 빠르지 만 Nginx에서는 그렇지 않습니다.
![](http://3.34.98.191/wp-content/uploads/2020/06/gobetween-benchmark.png)
동적 환경을위한 자동 검색 기능을 갖춘 최신 L4 밸런싱 솔루션을 찾고 있다면 Gobetween이 유망한 것으로 보입니다. 그것이 어떻게되는지 보도록하십시오.