Red Hat Training

A Red Hat training course is available for Red Hat Enterprise Linux

1.4.2. 직접 라우팅

직접 라우팅을 사용하는 LVS 설정은 다른 LVS 네트워킹 토폴로지와 비교하여 성능이 향상되었습니다. 직접 라우팅으로 실제 서버는 LVS 라우터를 통해 외부로 나가는 패킷을 전달하지 않고 요청 중인 사용자에게 직접 패킷을 처리하고 보냅니다. 직접 라우팅은 LVS 라우터의 작업을 들어오는 패킷이 처리하게 하여 네트워크 성능 문제 발생을 감소시켰습니다.
LVS Implemented with Direct Routing

그림 1.4. LVS Implemented with Direct Routing

전형적인 직접 라우팅 LVS 설정에서, LVS 라우터는 가상 IP (VIP)를 통해 들어오는 서버 요청을 받고 스케줄링 알고리즘을 사용하여 실제 서버에 요청을 보냅니다. 각각의 실제 서버는 요청을 처리하고 LVS 라우터를 바이패싱하여 클라이언트에게 직접 응답합니다. LVS 라우터에 추가된 처리량 없이 실제 서버에서 클라이언트로 나가는 패킷을 보내기위해 실제 서버에서 확장성을 감안한 직접 라우팅이 추가될 수 있어 과중한 네트워크 로드에서 병목 현상이 나타날 수 있습니다.

1.4.2.1. 직접 라우팅 및 ARP 한계

LVS에서 직접 라우팅을 사용하는데 있어서 여러 장점이 있는 반면 제한점도 있습니다. 직접 라우팅응 통한 LVS 사용에서 가장 일반적으로 발생하는 문제는 ARP (Address Resolution Protocol)와의 문제입니다.
In typical situations, a client on the Internet sends a request to an IP address. Network routers typically send requests to their destination by relating IP addresses to a machine's MAC address with ARP. ARP requests are broadcast to all connected machines on a network, and the machine with the correct IP/MAC address combination receives the packet. The IP/MAC associations are stored in an ARP cache, which is cleared periodically (usually every 15 minutes) and refilled with IP/MAC associations.
직접 라우팅 LVS 설정에 있는 ARP 요청에서의 문제는 IP 주소로의 클라이언트 요청이 처리될 요청에 대한 MAC 주소와 관련되어 있어야 하며, LVS 라우터의 가상 IP 주소도 MAC 주소와 관련되어 있어야 한다는 점입니다. 하지만, LVS 라우터와 실제 서버의 VIP가 같을 경우, ARP 요청은 VIP와 관련되어 있는 모든 컴퓨터로 브로드캐스트됩니다. 이는 VIP가 실제 서버 중 하나에 관련되어 직접적으로 요청을 처리하는 것, LVS 라우터를 바이패싱하여 LVS 설정 목적을 의미없게 하는 것과 같이 여러가지 문제를 발생시킬 수 있습니다.
이러한 문제를 해결하기 위해 들어오는 요청은 항상 실제 서버가 아닌 LVS 라우터로 보내야 합니다. 이러한 작업은 다음과 같은 이유로 arptables_jf 또는 arptables 패킷 필터링 도구를 사용하여 실행합니다:
  • arptables_jf는 ARP가 VIP를 실제 서버와 관련짓지 않게 합니다.
  • iptables 방식은 첫번째의 실제 서버에 있는 VIP 설정을 하지 않음으로 ARP 문제를 전적으로 회피합니다.
For more information on using arptables or iptables in a direct routing LVS environment, refer to 3.2.1절. “직접 라우팅 및 arptables_jf or 3.2.2절. “직접 라우팅 및 iptables.