리눅스 버추얼 서버

위키백과, 우리 모두의 백과사전.

리눅스 버추얼 서버
LVS 공식 로고
LVS 공식 로고
원저자Wensong Zhang
개발자et al.
발표일1998년 5월(24년 전)(1998-05)
프로그래밍 언어C
운영 체제리눅스
종류부하분산
라이선스GNU 일반 공중 사용 허가서
웹사이트www.linuxvirtualserver.org

리눅스 버추얼 서버(Linux Virtual Server, LVS)는 리눅스 커널 기반 운영 체제를 위한 부하분산 소프트웨어이다.

LVS는 1998년 5월 원쑹장이 시작한, GNU 일반 공중 사용 허가서(GPL) 버전 2의 요건을 따르는 자유-오픈 소스 소프트웨어 프로젝트이다. 이 프로젝트의 임무는 클러스터링 기술을 사용하여 리눅스를 위한 고성능, 고가용성 서버를 구축함으로써 양호한 확장성, 신뢰성, 서비스를 제공하는 것이다.

개요[편집]

위키미디어에 사용되는 LVS

LVS 프로젝트의 주요 작업은 현재 고급 IP 부하분산 소프트웨어(PVS), 애플리케이션 레벨 부하 분산 소프트웨어(KTCPVS), 클러스터 관리 컴포넌트를 개발하는 것이다.

스케줄러[편집]

LVS는 여러 밸런싱 스케줄러를 구현하며, 관련 소스 파일과 함께 아래에 나열한다:[1]

  • Round-robin (ip_vs_rr.c)
  • Weighted round-robin (ip_vs_wrr.c)
  • Least-connection (ip_vs_lc.c)
  • Weighted least-connection (ip_vs_wlc.c)
  • Locality-based least-connection (ip_vs_lblc.c)
  • Locality-based least-connection with replication (ip_vs_lblcr.c)
  • Destination hashing (ip_vs_dh.c)
  • Source hashing (ip_vs_sh.c)
  • Shortest expected delay (ip_vs_sed.c)
  • Never queue (ip_vs_nq.c)

용어[편집]

공통적으로 사용되는 용어는 다음을 포함한다:[2]

  • LVS director
  • Real servers
  • Client computers
  • VIP (Virtual IP address)
  • RIP (Real IP address)
  • DIP (Directors IP address)
  • CIP (Client IP address)

[편집]

2개의 실제 서버가 있는 가상 HTTP 서버를 구축하기:

ipvsadm -A -t 192.168.0.1:80 -s rr
ipvsadm -a -t 192.168.0.1:80 -r 172.16.0.1:80 -m
ipvsadm -a -t 192.168.0.1:80 -r 172.16.0.2:80 -m

IP 주소 192.168.0.1를 가상 서버에 TCP 포트 80으로 할당한다. 부하분산을 위해 선택된 스케줄링 알고리즘은 라운드 로빈(-s rr)이다. 두 번째와 세 번째 명령은 실제 서버의 IP 주소들은 LVS 설정에 추가하는 것이다. 포워드된 네트워크 패킷도 마스킹된다.(-m).

위에서 구성된 LVS 설정의 상태를 조회하기:

# ipvsadm -L -n
IP Virtual Server version 1.0.8 (size=65536)
Prot LocalAddress:Port Scheduler Flags
  -> RemoteAddress:Port           Forward Weight ActiveConn InActConn
TCP  192.168.0.1:80 rr
  -> 172.16.0.2:80                Masq    1      3          1
  -> 172.16.0.1:80                Masq    1      4          0

같이 보기[편집]

각주[편집]

  1. “Job Scheduling Algorithms in Linux Virtual Server”. linuxvirtualserver.org. 2011년 2월 8일. 2013년 11월 24일에 확인함. 
  2. “Linux Virtual Server: Load Balance Your Networked Services”. bobcares.com. 2008. 2013년 11월 24일에 확인함. 

외부 링크[편집]