Network Infra 쉽게 이해하기/L4 & L7 Network 쉽게 이해하기

L4 스위치 쉽게 이해하기 #10(이중화)

네트워크 엔지니어 환영 2021. 3. 2. 00:25
반응형
이번 문서 'L4 스위치 쉽기 이해하기'와 '서버 부하 분산 쉽게 이해하기', 다음에 이어질 문서인 'L4/L7 로드밸런싱 쉽게 이해하기'는 L4/L7 Network Swtich인 'F5 Networks' 장비를 기준으로 설명합니다. Alteon(Radware), Brocade, Cisco, Piolink, Pumkin, Citrix의 관점에서는 다소 다를 수 있습니다.

서버, 네트워크, 데이터 베이스 등과 같은 IT 인프라(IT 서비스의 기반이 되는 정보 기술 구성 요소 집합)에서 장애는 매우 민감한 요소입니다. 다른 산업분야와는 달리 수많은 사용자의 접근이 쉽고 잦으며, 24시간 쉬지 않고 돌아가는 서비스가 대부분이기에 잠깐의 장애에도 큰 피해가 발생할 수 있습니다. 고가용성이라는 단어는 이러한 이유로 탄생했습니다.

고가용성(高可用性, HA, High Availability)이란 서버와 네트워크, 프로그램 등의 정보 시스템이 상당히 오랜 기간 동안 지속적으로 정상 운영이 가능한 성질을 말한다. 고(高) 가용성이란 "가용성이 높다"는 뜻으로서, "절대 고장 나지 않음"을 의미한다.

- 출처 : 위키백과 - 

위키백과의 설명처럼 고가용성은 오랜 시간 장애 없이 시스템을 운영하는 것을 뜻합니다. 네트워크 인프라 또한 오랜 시간 장애 없이 서비스를 제공해야 하기 때문에 당연히 고가용성을 신경 써야 합니다. 다중화(이중화)도 이러한 맥락에서 나온 하나의 방법입니다.

다중화(이중화)는 시스템의 일부에 어떠한 장애가 발생했을 경우에 대비하여, 장애 발생 다음에도 시스템 전체의 기능을 계속 유지하도록 예비 장치를 평상시부터 백업으로서 배치해 운용하는 일이다.

- 출처 : 위키백과 -

즉 네트워크에서의 다중화(이중화)는 시스템의 일부를 차지하는 네트워크 장비에 어떠한 장애가 발생했을 경우를 대비해 장애 후에도 계속 기능을 제공할 수 있도록 예비 장비를 백업으로서 배치하여 운용하는 것(Active - Standby) 혹은 다수의 장비를 모두 활성화시켜 운용하는 것(Active - Active)을 의미합니다. 이 문서에서는 Active - Standby 구성에 대해 설명합니다.

<만약에 백본스위치에 장애가 발생한다면?>

만약 위의 그림에서 보는 것처럼 이 장비들이 한 대씩만 운영되는 상태에서 어느 한 장비(예를 들어 백본 스위치)에 문제가 생긴다면 통신에 심각한 문제가 발생하게 될 것은 불 보듯 뻔합니다. 이러한 상황을 막기 위해 아래 그림처럼 주요 장비를 두 대씩 운용하여 장애 상황에 대비하는 것입니다.

<네트워크 인프라 구성의 예시>

첫 번째 그림에 더해 네트워크 장비를 이중화한 그림입니다. 가장 위쪽부터 인터넷망, 외부 라우터, 방화벽, L2 스위치, IPS, 백본 스위치가 보입니다. 왼쪽의 'DMZ Zone'에는 L4 스위치도 있군요. 열거한 장비들은 내부의 사용자들과 인터넷망이 통신하기 위해서 반드시 필요한 핵심장비들입니다. 외부 인터넷 연결(외부 라우터), 내부 리소스 보호(방화벽, IPS), 내부 리소스 연결(L2 스위치, 백본 스위치)에 사용되는 장비들이죠. 예를 들어 백본 스위치 중 Active Device 역할을 하던 스위치가 다운되면 남아 있는 한 대의 스위치가 바통을 이어받아 Active Device로서의 역할을 수행합니다. 이것을 Failover라고 부릅니다.

반응형

L4 스위치의 이중화(In-line 구성의 이중화)

L4 스위치 또한 장애가 발생할 가능성이 존재하는 네트워크 장비이므로 보통의 경우 이중화 구성을 염두에 두고 구축하는 것이 대부분입니다. Active - Standby 혹은 Active- Active로 운용할 수 있으며 Active - Standby로 운용하는 사례가 더 많습니다. Active - Standby 구성이 이중화 구성과 운용에 있어 난이도가 낮아 더 선호하는 듯합니다.

<이중화된 L4 스위치>

위 그림을 보시면 이중화된 L4 스위치(Active - Standby), 이중화된 L2 스위치(Active - Active) 그리고 서버를 보실 수 있는데요. 이 그림을 좀 더 자세히 그리면 다음과 같습니다. L4 스위치가 두 대가 있고 이중화가 맺어져 있습니다. 그리고 왼쪽 L4 스위치는 'Active'의 역할을 맡고 있고 오른쪽 L4 스위치는 'Standby'의 역할을 맡고 있습니다. L4 스위치와 백본 스위치는 Virtual IP가 있으며, L4 스위치의 중간 경로인 Inter Link에는 HA VLAN이 존재합니다.

<L4 스위치 In-line 이중화의 상세 구성>

여기서 이중화를 이해하기 위해 자세히 봐야 할 3가지는 HA(High Availability) VLAN, Virtual IP 그리고 Virtual Server IP입니다. 하나하나 살펴보면서 각 단어가 갖는 의미가 무엇인지 살펴보겠습니다.

첫 번째는 HA(High Availability) VLAN입니다. HA는 처음에 언급했던 고가용성(HA, High Availability)입니다. 거기에 VLAN이 붙어있죠. 구성도에서는 HA VLAN으로 표현되어있습니다. L4 스위치는 이중화를 맺기 위해 서로의 정보를 공유하고 누가 Active 스위치로서 역할을 수행할 것인지를 정해야 하는데, 별도로 독립된 네트워크(Virtual LAN)인 HA VLAN이 그 통로 역할을 합니다. 이 통로는 별도의 VLAN과 별도의 IP를 보유하고 이중화 구성과 정보 공유만을 위해 사용하며 다른 데이터 통신이 허용되지 않습니다. 아래에서 설명할 Virutal IP, Virutal Server IP에 대한 소유권 역시 HA VLAN의 통로를 통해 공유됩니다. (HA VLAN은 특정 벤더에서 VLAN을 별도로 두고 이중화를 맺는 한 방식입니다. 일반화된 방식이 아닙니다.)

트래픽이 지나다니는 VLAN과 분리시켜 별도의 VLAN인 HA VLAN을 만들어 다른 트래픽이 접근하지 못하도록 막고 IP 또한 10.10.10.x/24이 아닌 다른 IP 대역을 사용합니다. 예를 들어 IP를 1.1.1.1/30과 1.1.1.2/30을 사용하여 서로를 목적지로 삼아 통신하고 정보를 공유하며 이중화를 구성합니다. 또한 어느 한 스위치가 설정이 변경되면 HA VLAN을 통해 'Config Sync'를 실시하고 설정을 동기화하죠. 물론 L2 스위치로 연결되는 링크를 통해서 L4 스위치의 이중화를 구성할 수 있습니다만 그 링크가 끊어질 경우, 이중화가 흔들리고 장애가 발생할 가능성이 있기 때문에 HA VLAN을 두고 이중화를 맺는 것이 매우 안전합니다.

두 번째는 Virtual IP(이하 VIP)입니다. 말그대로 가상의 IP를 뜻하죠. 이 IP는 Active/Standby 역할을 하는 L4 스위치 모두 갖고 있지만 GARP와 ARP Response, ICMP Response는 오로지 Active 스위치만이 합니다. 즉 Active 스위치만 사용하는 IP나 마찬가지라는 뜻이죠. 또한 이 IP는 L4 스위치를 위한 IP가 아닌 주변 장비를 위한 IP입니다. 이 VIP가 없다고 생각해볼까요? 

<Virtual IP가 없다면?>

VIP가 없는 상태입니다. 서버와 L4 스위치 모두 Gateway를 잡아야 하는데요. 서버는 왼쪽 L4 스위치가 Active 스위치이므로 Gateway를 10.10.10.12로 잡았습니다. 그런데 왼쪽 L4 스위치에 장애가 발생하여 Active 스위치로서의 역할이 오른쪽 L4 스위치로 넘어갔습니다. 그렇다면 서버의 Gateway를 10.10.10.13으로 바꿔야겠죠. 장애가 발생하고 나서 서버의 게이트웨이를 수동으로 바꾸기까지 걸리는 시간은 결코 짧은 시간이 아닙니다. 게다가 서버는 한 대가 아니죠. 일일이 하는 것이 매우 어렵습니다.

그래서 필요한 것이 VIP입니다. 서버의 게이트웨이를 L4 스위치 혹은 백본 스위치의 VIP로만 설정해주면 모든 것이 해결됩니다. 왼쪽 L4 스위치에 장애가 발생하여 Failover가 실시되면 오른쪽 L4 스위치가 VIP를 활성화시키고 모든 요청에 대한 응답을 할 것입니다. 그렇다면 굳이 서버에서 무언가 바꾸어줄 필요가 없게 됩니다. 그 반대의 경우도 마찬가지죠.

마지막으로 Virtual Server IP입니다. 사용자의 요청을 처리하는 Virtual Server 또한 이중화가 필요합니다. 위의 Virtual IP처럼 Virtual Server IP를 Active/Standby 스위치 모두 가지고 있지만 Active 역할의 스위치만이 서비스 요청, ARP Reqeust에 대해 응답하고 GARP를 실시합니다. 아래 그림과 같습니다.

<Virtual Server IP에 대해 응답하는 Active 스위치>

Active 스위치에 문제가 생겨 Failover가 실시되었을 때 Virtual Server IP 또한 같이 넘어가 Standby 스위치가 Active로 올라오며 자신이 Virtual Server IP를 갖고 있음을 알리는 GARP를 전송합니다. 그리고 Virtual Server IP에 대한 ARP Reqeust에 응답하며 사용자 요청을 처리합니다. 아래 그림과 같습니다.

<Failover 후 Virtual Server IP에 대해 응답하는 새로운 Activ 스위치>

추가로 제가 지금까지 이중화와 관련된 설정에 대해서만 말씀드리고 있으나 'In-line' 구성의 이중화에 대한 설명을 겸하고 있으니 In-line 구성을 떠올리면서 보시는 것이 좋습니다. 

 

One-Arm 구성에서의 이중화

이번에는 One-arm 구성에서의 이중화에 대해 살펴보도록 하겠습니다. 물리적인 모양이 달라졌을 뿐 One-arm에서의 이중화 또한 In-line과 동일합니다. 아래 그림을 보시면 L4 스위치가 HA VLAN을 통해 이중화를 구성한 것을 확인하실 수 있습니다. 백본 스위치를 거쳐서 이중화를 하는 것이 아닌 L4 스위치간 물리적인 링크를 이용하여 HA VLAN을 구성하고 서로의 정보를 공유하며 이중화 구성을 생성합니다.

<L4 스위치 One-arm 이중화의 상세 구성>

위에서 언급한 3요소인 HA VLAN, Virutal IP, Virtual Server IP 모두 One-arm 구성에서 모두 동일하게 적용됩니다. 이중화의 경우, In-line과 One-arm에서 큰 차이를 보이지 않기 때문에 위 그림을 주로 참조하면 될 듯 합니다.

이중화는 벤더마다 설정 방법과 특징에 있어 차이가 많은 것 같습니다. F5 Networks는 Fortinet Firewall, Juniper Firewall가 위 그림과 비슷한 구성을 띠며 Alteon(Radware)는 VRRP를 사용하여 이중화를 구성합니다. Alteon의 경우, Cisco에 훨씬 가깝죠. 이렇게 이중화의 구성 방법은 다양하지만 Virutal IP와 Virtual Server IP 설정 그리고 HA를 위한 VLAN 생성은 대부분 비슷합니다. 그러므로 위 3가지 요소와 역할을 잘 알고 계신다면 실무에 있어 큰 어려움은 없을 듯합니다. 

이 문서를 마지막으로 <L4 스위치 쉽게 이해하기> 시리즈가 끝났습니다. 반년 넘게 연재한 것이 끝나 홀가분합니다. 다음에는 다른 내용으로 찾아 뵙겠습니다. 감사합니다.

 

- 도움 : 아프리카TV L4/L7 Network Engineer 곽문봉 -