09. 6. 1.

웹서버의 DSR(Direct Server Return)을 위한 Interface 설정


하드웨어 또는 소프트웨어(LVS)기반의 L4 장비를 통해 내부 웹서버의 DSR(Direct Server Return)을 구성하는 경우가 현업에서 종종 볼 수 있다.

이렇게 DSR로 웹서비스를 구성하는 이유는 다양하지만 크게는 L4 장비의 Transaction 부하 감소이거나 Inbound Traffice에 비해 Outbound Traffic의 양이 현저하게 많을 경우 Outbound Traffic이 L4 장비를 경유하지 않고 직접 사용자에게 전송할 때 사용한다.

기본적인 L4 스위치 장비에서는 DSR을 아래와 같이 구성을 한다.

이렇게 구성할 때 주의할 점은 L4 장비와 실제 웹서버는 L2 통신이 가능한 네트워크 환경이어야 한다. 그래서 L2 스위치를 사용하여 구성하는게 일반적이다.(요청한 IP가 변경되지 않도록 함이 목적)


그리고 윈도우 또는 유닉스 기반의 웹서버를 많이 사용하기 때문에 해당 서버에 VIP와 동일한 IP로 Loopback Interface를 설정해야 정상적인 통신이 가능하다. 아래는 리눅스 시스템에서 Loopback Interface를 설정하는 한 예이다.(윈도우 기반은 제어판에서 Loopback 인터페이스를 추가 생성하면 구성이 가능 함)


Loopback Interface 설정(Fedora Core 기반의 리눅스)

원래 구성된 Lo 인터페이스에 새로운 Alias를 할당하여 간단하게 구성할 수 있다.

# ifconfig Lo:0 192.168.100.1 netmask 255.255.255.255 up

(관련 설정은 리눅스 man페이지나 해당 메뉴얼을 참고하시기 바람)

댓글 1개:

  1. 일반적인 리눅스 및 윈도우 기반의 시스템에서 Loopback address를 이용하여 VIP를 설정하는 것으로 인해 L4 및 서버가 연결된 L2 Switch에서 L4의 VIP Mac이 아닌 실제 Real Server의 Mac이 L2 Switch에 학습되는 문제가 발생할 수 있다.

    이럴 경우에는 해당 서버 시스템에서 LoopBack Address에 대한 ARP Broadcast 설정은 변경해주어야 한다.

    리눅스의 경우 "/sbin/ip link set lo:0 arp off"라는 명령어를 통해 적용할 수 있다.(윈도우 기반의 시스템은 직접 동일 설정 화면이 있으니 설정을 변경하면 됨)

    간혹 발생할 수 있는 경우이나 장애 발생 시 꼭 필요한 설정이니 기억하면 도움이 될 것 같다.

    답글삭제