큰소리 LVS 부하 균형

LVS 는 리 눅 스 버 추 얼 서버 의 줄 임 말로, 장문 숭 박사 가 주도 하 는 오픈 소스 부하 균형 프로젝트 로, 현재 LVS 는 리 눅 스 커 널 모듈 에 통합 됐다.이 프로젝트 는 리 눅 스 커 널 에서 IP 기반 데이터 요청 부하 균형 스케줄 링 방안 을 실현 하여 4 층 교환 을 실현 했다.LVS 의 작업 모델 은 NAT 모드, TUN 모드, DR 모드, FULL - NAT 모드, ENAT 모드 가 있다.다른 4 층 기반 부하 균형 을 이 루 는 것 은 HAProxy 와 Nginx 도 있다.
(1) 흔히 볼 수 있 는 용어
  • CIP: Client IP, 클 라 이언 트 IP
  • VIP: 가상 IP, 가상 IP
  • RIP: Real IP, 백 엔 드 RS 의 IP
  • RS: Real Server, 백 엔 드 에서 진정 으로 서 비 스 를 제공 하 는 서버
  • LB: 부하 밸 런 스, 부하 이퀄 라이저
  • SIP: 소스 IP, 소스 IP
  • DIP: 대상 IP, 대상 IP
  • NAT: 네트워크 주소 변환
  • SANT: 원본 주소 변환
  • DNAT: 목적 주소 변환
  • (2) LVS 의 다섯 가지 모델
    (1) DR 모드 (직접 경로 모드):
    요청 한 트 래 픽 이 먼저 LVS 에 도달 한 뒤 LVS 는 이번 요청 의 목적 인 MAC 주 소 를 수정 해 패 킷 을 교환기 에 기록 하고, RS 는 MAC 이 자기 것 임 을 탐지 하면 이번 요청 을 처리한다.요청 처리 가 완료 되면 원본 MAC 이 Client 의 MAC 이기 때문에 요청 결 과 를 직접 되 돌려 줍 니 다.LVS 와 RS 는 모두 DIP 가 VIP 인 패 킷 을 수신 하기 때문에 VIP 는 네트워크 카드 에 연결 해 야 한다. VLAN 내 에 여러 개의 장치 가 같은 VIP 에 대해 ARP 방송 이나 응답 을 할 수 없 음 을 감안 하여 RS 는 VIP 를 로 리 턴 네트워크 카드 에 설정 하고 ARP 에 대해 관련 설정 을 해 야 한다.
    장점: LVS 는 요청 한 패 킷 만 수정 해 LVS 의 압력 을 크게 낮 춘 다.단점: LVS 와 RS 는 같은 VLAN 에 있어 야 한다.RS 는 로 망 카드 를 설정 하고 ARP 를 특수 하 게 설정 해 야 합 니 다.
    (2) NAT 모드 (네트워크 주소 변환 모드):
    요청 과 응답 데 이 터 는 모두 LVS 로 가 고 LVS 는 SIP 와 DIP 를 수정 합 니 다.입구 트 래 픽 은 DIP 를 RIP 로, 출구 트 래 픽 은 SIP 를 VIP 로 수정 했다.장점: 설정 이 간단 하고 유 니 버 설 이 강 합 니 다.NAT 맵 을 지원 합 니 다.RIP 는 개인 네트워크 에 있 을 수 있 습 니 다.단점: LVS 와 RS 는 같은 VLAN 에 있어 야 합 니 다. 같은 VLAN 에 없 으 면 패 킷 을 되 돌려 주 고 공유 기 게 이 트 웨 이 를 통 해 바로 가 야 합 니 다.RS 는 LVS 를 게 이 트 웨 이 로 설정 해 야 한다.입구 유량 이 모두 LVS 를 걸 으 면 병목 이 생기 기 쉽다.
    (3) FULL - NAT 모드 (전체 네트워크 주소 변환 모드):
    LVS 와 RS 가 같은 VLAN 에서 유연 하지 않 아야 하 는 문 제 를 해결 하기 위해 이 모델 이 등장 하면 서 수출입 트 래 픽 은 모두 LVS 를 거 친다. 그러나 NAT 와 달리 클 라 이언 트 는 LVS 에 요청 을 보 내 고 LVS 는 DIP 와 SIP 를 동시에 수정 하 며 LVS 가 RS 에 요청 한 다음 에 RS 가 LVS 에 데 이 터 를 답장 하 는 것 과 같다. LVS 는 SIP 와 DIP 를 다시 수정 하 는 것 은 LVS 응답 클 라 이언 트 와 같다.장점: LVS 와 RS 가 같은 VLAN 에 있어 야 하 는 문 제 를 해결 하고 LVS 를 RS 로 설정 하 는 게 이 트 웨 이 를 요구 하지 않 습 니 다.단점: RS 는 CIP 가 보이 지 않 고 수출입 트 래 픽 이 모두 LVS 로 걸 어가 병목 에 걸 리 기 쉽다.
    (4) ENAT 모드 (NAT 모드 강화):
    장점: LVS 와 RS 가 같은 VLAN 에 있 는 것 을 요구 하지 않 고 수출 유 동량 이 LVS 를 가지 않 으 며 LVS 의 압력 이 적다.단점: 사용자 정의 프로젝트 입 니 다. 모든 RS 는 CTK 구성 요 소 를 설치 해 야 합 니 다.FULL - NAT 모드 와 유사 하지만, 요청 데이터 가 RS 에 도달 하면 CTK 에 의 해 캡 처 되 고, CTK 가 TCP Option 정 보 를 읽 고, RS 가 패 킷 에 응답 할 때 도 CTK 에 의 해 캡 처 되 어 응답 데이터 에 CIP 를 기록 합 니 다.
    (5) IP TUN 모드 (IP 터널 모드):
    요청 한 패 킷 이 LVS 에 도착 하면 LVS 는 요청 한 패 킷 을 새로운 IP 메시지 로 패키지 합 니 다.새로운 IP 메시지 의 DIP 는 RIP 이 고 이 패 킷 을 RS 에 전송 합 니 다.RS 는 메 시 지 를 받 은 후 IPIP 커 널 모듈 을 통 해 패 키 징 을 풀 고 사용자 메 시 지 를 꺼 냅 니 다.DIP 가 VIP 인 것 을 발 견 했 지만 RS 의 tunl 0 네트워크 카드 에 VIP 가 있어 서 이 요청 을 처리 합 니 다.장점: 클 러 스 터 노드 는 VLAN 을 뛰 어 넘 을 수 있 습 니 다.DR 모드 와 마찬가지 로 클 라 이언 트 에 데 이 터 를 직접 응답 하여 보 낼 수 있 습 니 다.단점: RS 에서 IPIP 커 널 모듈 을 실행 해 야 합 니 다.IP 헤드 를 하나 더 추가 합 니 다.LVS 와 RS 의 tunl 0 네트워크 카드 는 같은 VIP 를 설정 해 야 합 니 다.
    (3) 10 대 LVS 부하 균형 스케줄 링 알고리즘
    (1) 폴 링 스케줄 링 (RR):
    요청 을 다른 서버 로 순서대로 순환 합 니 다.
    (2) 가중 폴 링 스케줄 링 (WRR):
    가중치 가 높 은 서버 일수 록 처리 요청 이 많 습 니 다.
    (3) 최소 연결 스케줄 링 (LC):
    현재 연결 수가 가장 작은 서버 에 새 연결 요청 을 할당 합 니 다.클 러 스 터 시스템 의 실제 서버 는 비슷 한 시스템 성능 을 가지 고 있 으 며, 최소 연결 스 케 쥴 링 알고리즘 을 사용 하면 비교적 균형 적 으로 부하 할 수 있다.
    (4) 가중 최소 연결 스케줄 링 (WLC):
    가중 최소 연결 스케줄 링 은 새 연결 을 예약 할 때 가능 한 한 서버 의 이미 만들어 진 연결 수 와 그 권한 값 을 비례 하 게 합 니 다.스케줄 러 는 실제 서버 의 부하 상황 을 자동 으로 물 어보 고 권한 을 동적 으로 조정 할 수 있다.
    (5) 부분 적 최소 연결 기반 (LBLC):
    요청 메시지 의 대상 IP 주소 에 대한 부하 균형 스케줄 링 은 주로 Cache 집단 시스템 에 사 용 됩 니 다. 왜냐하면 Cache 집단 클 라 이언 트 에서 요청 메시지 의 목표 IP 주 소 는 변화 하기 때 문 입 니 다.알고리즘 의 디자인 목 표 는 서버 의 부하 기본 균형 상황 에서 같은 목표 IP 주소 의 요청 을 같은 서버 에 배치 하여 각 서버 의 방문 국 지성 과 Cache 명중률 을 향상 시 켜 전체 클 러 스 터 시스템 의 처리 능력 을 향상 시 키 는 것 이다.LBLC 스 케 쥴 링 알고리즘 은 먼저 요청 한 대상 IP 주소 에 따라 해당 대상 IP 주소 가 최근 에 사 용 된 서버 를 찾 습 니 다. 이 서버 가 사용 가능 하고 과부하 가 없 으 면 이 서버 에 요청 을 보 냅 니 다.서버 가 존재 하지 않 거나 이 서버 가 과부하 되 고 서버 가 절반 에 있 는 작업 부하 가 있 으 면 '최소 연결' 원칙 으로 사용 가능 한 서버 를 선택 하여 서버 에 요청 합 니 다.
    (6) 복 제 된 부분 적 기반 최소 연결 (LBLCR):
    또한 대상 IP 주소 에 대한 부하 균형 이기 도 합 니 다. 현 재 는 주로 Cache 클 러 스 터 시스템 에 사용 되 고 있 습 니 다. LBLC 알고리즘 과 다른 점 은 대상 IP 주소 에서 서버 에 대한 매 핑 을 유지 해 야 한 다 는 것 입 니 다. LBLC 알고리즘 은 대상 IP 주소 에서 서버 에 대한 매 핑 을 유지 합 니 다.'최소 연결' 원칙 에 따라 이 서버 그룹 에서 서버 한 대 를 선택 하고 서버 가 과부하 되 지 않 으 면 이 서버 에 요청 합 니 다.서버 가 과부하 되면 '최소 연결' 원칙 에 따라 전체 클 러 스 터 에서 서버 한 대 를 선택 하여 이 서버 그룹 에 가입 하여 이 서버 에 요청 합 니 다.또한 이 서버 그룹 이 한동안 수정 되 지 않 았 을 때 가장 바 쁜 서버 를 서버 그룹 에서 삭제 하여 복사 정 도 를 낮 춘 다.
    (7) 대상 주소 해시 스케줄 링 (DH):
    먼저 요청 한 대상 IP 주소 에 따라 해시 키 (Hash Key) 로 정적 으로 분 배 된 산 목록 에서 해당 하 는 서버 를 찾 습 니 다. 이 서버 가 사용 가능 하고 과부하 되 지 않 으 면 이 서버 에 요청 을 보 냅 니 다. 그렇지 않 으 면 비어 있 습 니 다.
    (8) 원본 주소 산열 스케줄 링 (SH):
    먼저 요청 한 원본 IP 주소 에 따라 해시 키 (Hash Key) 로 정적 으로 분 배 된 산 목록 에서 해당 하 는 서버 를 찾 습 니 다. 이 서버 가 사용 가능 하고 과부하 되 지 않 으 면 이 서버 에 요청 을 보 냅 니 다. 그렇지 않 으 면 비어 있 습 니 다.
    (9) 가장 짧 은 기대 지연 (SED):
    WLC 알고리즘 기반.SED=( + )/ , SED 는 새로운 요청 을 최소 화 합 니 다.
    (10) 최소 대기 열 예약 (NQ):
    대기 열 이 필요 하지 않 습 니 다. realserver 의 연결 수가 0 이면 직접 할당 되 며, SED 연산 을 할 필요 가 없습니다.

    좋은 웹페이지 즐겨찾기