이중화 기술

Jaca·2022년 8월 3일
0

끊김없는 안정적인 서비스를 제공하기 위해서는 네트워크, 서버, 스토리지와 같은 인프라뿐만 아니라 애플리케이션도 이중화 기술을 적용해야 한다.

이런 이중화 기술은 서비스 가용성을 높여주고 가용량을 확장해주기 때문에 안정적인 서비스 제공을 위해 이중화는 필수 이다.

이중화 기술의 개요

이중화를 하지 않았을 때 발생하는 SPoF(Single Point of Failure) 문제점과 이중화의 목적을 살펴본다.

SPoF

단일 장애점은 시스템 구성 요소 중 동작하지 않으면 전체 시스템이 중단되는 요소를 말한다.
예를 들어 이더넷 케이블과 전원, 이더넷 허브, 접속 단말들의 NIC 등으로 이루어진 간단한 이더넷 네트워크 시스템에서 네트워크 허브 장치의 전원은 SPoF이다.

고가용성을 추구하는 네트워크, 소프트웨어 애플리케이션, 상용 시스템에 단일 장애점이 있는 것은 바람직하지 않다.

인프라의 본질적 목표는 더 가용성 높은 서비스에 필요한 인프라를 안정적으로 제공하는 것이다.
인프라를 설계할 때 가용성, 연속성, 안정성 등의 항목을 보는 것도 인프라를 안정적으로 제공하는 데 필요한 주요 지표이다.

따라서 인프라를 설계할 때, 단일 장애점을 만들지 않아야 한다.

이중화의 목적

안정적인 서비스 제공을 위해 네트워크를 포함한 모든 인프라에서 반드시 갖추어야할 요소 중 하나는 이중화이다.
인프라를 구성하는 각 요소가 복수 개 이상으로 인프라를 구성해 특정 인프라에 문제가 발생하더라도 서비스가 지속되도록 해준다.

서비스에 필요한 출발 지점부터 끝 지점까지 모든 인프라에 이중화 구성을 고려해야 한다.

LACP

과거에는 각 벤더별로 장비 간 대역폭을 늘리기 위해 독자적으로 구현했지만, 다른 장비를 연결할 때 호환성 문제가 발생하여 표준화를 시작했다.
이 표준화가 LACP(Link Aggregation Control Protocol)이다.

링크 애그리게이션의 목적은 대역폭 확장을 통한 링크 사용률 향상과 향상된 장애 회복이다.

LACP를 사용하면 두 개 이상의 물리 인터페이스로 구성된 논리 인터페이스를 이용해 모든 ㅁ루리 인터페이스를 액티브 상태로 사용한다.
이것을 통해 네트워크 대욕폭이 물리 인터페이스 수량만큼 확장된다.
또한, 논리 인터페이스를 구성하는 물리 인터페이스 중 일부에서 문제가 발생하더라도 나머지 물리 인터페이스로 서비스를 유지해준다.

LACP를 구성할 때 유의사항이 있다.
LACP는 액티브-액티브 구조이므로 LACP로 구성하는 논리 인터페이스의 대역폭을 서비스에 필요한 전체 트래픽 기준으로 서비스 트래픽을 산정해서는 안된다.
LACP를 구성할 때 또 다른 유의사항은 LACP로 구성하는 물리 인터페이스의 속도가 동일해야 한다는 것이다.

LACP 동작 방식

LACP를 통해 장비 간 논리 인터페이스를 구성하기 위해 LACPDU라는 프레임을 사용한다.
LACPDU에는 LACP를 구성하기 위한 출발지 주소, 목적지 주소, 타입, 서브 타입, 버전 정보 등을 포함 해 매초마다 주고받는다.

LACP가 연결되려면 LACPDU를 주고받는 장비가 한 장비여야 한다.
LACP를 구성하는 두 개 이상의 물리 인터페이스가 서로 다른 장비에 연결되어 있으면 LACP를 통한 링크 이중화 구성을 할 수 없다.

LACP 모드는 액티브와 패시브가 있다.

  • 액티브
    LACPDU를 먼저 송신하고 상대방이 LACP 구성일 경우, LACP 구성

  • 패시브
    LACPDU를 송신하지 않지만 LACPDU를 수신하면 응답해, LACP 구성

LACP와 PXE

PXE를 이용할 때는 서버가 운영체제를 설치하기 전 이므로 서버의 인터페이스를 논리 포트로 묶는 본딩/티밍 기술을 사용할 수 없다.
이 경우, 네트워크 장비에서는 서버로부터 LACPDU를 수신할 수 없으므로 해당 인터페이스는 정상적으로 활성화되지 않는다.
따라서 LACP로 구성하려는 서버를 PXE로 운영체제를 설치할 때는 LACP 인터페이스가 아닌 일반 인터페이스로 구성해 운영체제를 설치하고 운영체제에서 LACP 설정을 다시 한 후 스위치 포트 설정을 다시 변경해야 한다.

서버 네트워크 이중화 설정

서버의 인터페이스 이중화 구성은 네트워크 인터페이스 이중화와 다르다.
네트워크 장비에서 네트워크 이중화를 위해 두 개 이상의 물리 인터페이스를 하나의 논리 인터페이스로 구성하면 각 인터페이스가 모두 활성화되는 액티브 액티브 상태가 된다.
하지만 서버는 하나의 논리 인터페이스를 만드는 것이 액티브 액티브 사용을 의미하지 않으며, 동작 모드중 하나일 뿐이다.

리눅스 본딩 모드

리눅스 본딩 모드는 0~4까지 있다.
실무에서는 이중화를 구성할 때, 액티브-스탠바이로는 모드 1을 사용하고 액티브 액티브는 4, 나머지는 잘 사용하지 않는다.

모드 1: 액티브 스탠바이

평소 액티브 인터펭스로만 패킷이 전달되지만 액티브가 죽으면 스탠바이 인터페이스가 자동으로 활성화되어 패킷을 전송한다.
우너래의 액티브 인터페이스가 다시 살아나면 설정에 따라 액티브 인터페이스가 자동으로 활성화되거나 수동으로 넘기기 전까지 스탠바이 인터페이스가 활성화 상태를 유지한다.

모드 4: LACP

표준 프로토콜인 LACP를 이용해 인터페이스를 액티브 액티브 방식으로 사용한다.

MC-LAG

LACP를 구성할 때 LACPDU를 주고받는 장비 상호 간 구성이 1:1이어야 한다.
더 명확히 말하면 LACP를 구성할 때, MAC 주소가 1:1 이어야한다.
그래서 서버에서 본딩이나 티밍과 같은 이중화 구성을 할 때, 각 네트워크 카드별로 물리 MAC 주소 중 하나를 Primary MAC 주소로 사용한다.

서버에서 인터페이스를 두 개 이상으로 구성하더라도 상단 스위치가 한 대로 구성된 경우 SPoF 구성이기 때문에, 서버의 인터페이스를 서로 다른 스위치로 연결한다.
이런 구성은 스위치 간 MAC 주소가 달라 LACP를 사용할 수 없다.
따라서 서버에서도 본딩이나 티밍 모드를 액티브 스탠바이로 구성해야한다.

스위치에서도 서버 이중화 구성처럼 서로 다른 스위치 간의 단일 MAC를 사용해 액티브 액티브 형태의 이중화 구성을 하려면 MC-LAG 기술로 서로 다른 스위치 간의 실제 MAC 주소 대신 가상 MAC 주소를 만들어 논리 인터페이스를 LACP로 구성해야 한다.

MC-LAG 기술을 이용하면 단일 스위치로 LACP를 구성해 대역폭을 확장할 지, 서로 다른 스위치로 구성해 장비 이중화로 가용성을 확보할 것인지 선택할 수 있다.
각 벤더별로 기술명이 조금씩 다르나 서로 다른 스위치에서 하나의 가상 논리 인터페이스를 만드는 기술이라고 이해하면 된다.

게이트웨이 이중화

만약 L3 통신을 하고자 하는데 게이트웨이 장비에 장애가 발생한다면,
게이트웨이를 바라보는 하단의 호스트들은 게이트웨이와 통신할 수 없으므로 외부 네트워크와 통신을 할 수 없게 된다.

이 뿐만 아니라, 게이트웨이와 연결된 하단 스위치의 장애, 연결된 하단 스위치의 해당 포트 장애 같은 게이트 웨이 장비로 가는 경로상의 문제가 발생하면 똑같이 외부 네트워크와 통신할 수 없다.

하지만 이런 경우에 동일한 역할을 할 수 있는 장비가 하나 더 연결되어 있어도 게이트웨이를 한 곳만 바라보기 때문에 다른 L3 장비를 사용하지 않는다.

이런 경우에 사용하는 프로토콜이 FHRP(First Hop Redundancy Protocol)라는 게이트웨이 이중화 프로토콜이다.

게이트웨이 이중화 프로토콜을 사용하면 두 라우터는 실제 IP 외에 추가로 가상 IP와 MAC 주소를 갖게 된다.

하단 호스트들이 사용할 게이트웨이 IP 주소가 이 가상 IP 주소이다.

FHRP

FHRP를 이용해 FHRP 그룹 내 장비가 동일한 가상 IP를 갖도록 설정하고 FHRP를 설정할 때는 우선순위 값을 이용해 어떤 장비가 가상 IP 주소에 대한 액티브 역할을 할 것인지 결정한다.

FHRP를 구성해 게이트웨이 장비가 동일 그룹으로 인식시키고, 동일한 가상 IP 주소를 각 장비에 설정한다.
하단 호스트가 이 가상 게이트웨이 주소로 ARP 요청을 보내면 이것은 브로드캐스트 통신으로 동일한 네트워크의 모든 장비로 전달되며 FHRP 그룹 장비 중 액티브 장비가 ARP 요청에 응답한다.
하단 서버는 FHRP 그룹 장비 중 액티브 상태의 장비를 게이트웨이 장비로 인식하고 액티브 장비를 통해 다른 네트워크와 통신할 수 있다.

올 액티브 게이트웨이 이중화

FHRP는 이중화된 장비에서 액티브 스탠바이로 동작한다.
이는 게이트웨이 외부로 가기 위한 경로가 스탠바이더라도 액티브 장비를 통해서만 외부로 나갈 수 있다.
이 말은 피어 장비 모두 게이트웨이 역할을 할 수 있지만 트래픽이 불필요하게 우회한다는 뜻이다.

그래서 MC-LAG 기술을 사용할 때 게이트웨이 이중화 가상 IP의 MAC 주소를 모두 사용할 수 있도록 해 게이트웨이를 액티브 액티브로 구성하는 기능을 제공한다.

애니캐스트 게이트웨이

액티브 액티브 게이트웨이는 네트워크가 한 위치에 존재할 때 게이트웨이를 이중화하는 방식이다.
오버레이 기반의 SDN 네트워크를 구현하면 네트워크가 여러 위치에 존재하게 네트워크를 디자인할 수 있는데 게이트웨이가 한 곳에 위치하게 되면 모든 트래픽이 하나의 게이트웨이를 거쳐 통신이 비효율적이다.

애니케스트 게이트웨이는 애니캐스트를 사용하여 여러 개의 같은 IP를 가지는 게이퉤이가 존재하지만 가장 가까운 곳에 위치한 게이트웨이가 서비스를 제공한다.
게이트웨이가 여러 개이므로 하나의 게이트웨이가 죽어도 문제가 없다.

profile
I am me

0개의 댓글