PostList

2016년 7월 25일 월요일

FortiGate GW Detect / Link Monitor 기능 및 사용방법


FortiGate GW Detect / Link Monitor 기능 및 사용방법

Fortigate 장비를 Active / Standby 모드로 HA 구성 한 경우 상/하단 연결장비의 Link 가
끊어졌을 때 Active, Standby 전환을 하며 Failover 를 하게 됩니다.
*예외적으로 해당 Interface 가 Port Monitor Enable 이 되어 있지 않거나 Software Switch
로 Interface 를 묶는 경우 Port Monitor 추가가 불가하여 Link Down 발생 시 Failover 를
하지 않습니다.

아마 일반적인 경우에는 본 포스팅의 GW Detect 나 Link Monitor 같은 기능을 사용할
필요가 없는 경우가 대부분 이겠지만 앞서 설명한 일반적인 Link down 에 의한 Failover
가 아니라 아래 구성도와 같이 하단 장비의 하단에서 Link Down 이 발생 하였는데
해당 장비가 LLCF 를 지원하지 않는 경우, 그리고 해당 장비에서 LLCF 는 아니더라도
Fortigate 가 Failover 할 수 있도록 지원하는 기능이 없는 경우에는 임시로 본 포스팅에서
설명하는 기능을 사용 하여 Failover 를 지원 할 수 있습니다.

[GW Detect / Link Monitor]
GW Detect 와 Link Monitor 는 두가지 기능은 아니고, 동일한 기능인데 Fortigate 의
버전에 따라 명칭이 달라진 것 뿐 입니다.
설정하는 옵션등은 모두 동일하고, 편의상 Link Monitor 에 대한 내용만 담습니다.

- GW Detect, Link Monitor 가 필요한 경우
  아래와 같은 구성에서 WAF -> L4 간 Link 가 Down 되는 경우, WAF 에서 LLCF를
  지원하지 않는다면 해당 Link Down 정보를 Fortigate 에서는 인지 하지 못하고,
  이러한 경우 해당 기능을 사용하여 Fortigate 에서 하단 Link Down 사실을 인지
  하도록 하여 장애상황을 방지 할 수 있습니다.
  *Link Down 이 되었는데 Fortigate 에서 Active Line 을 유지하게 된다면 들어오는
   Packet 이 결국 목적지로 가지 못하기 때문에 장애 상황이 됩니다.


- GW Detect / Link Monitor 기능
  앞서 말씀드린 내용과 같이 동일한 기능이고, Fortigate 버전에 따라 이름만 다릅니다.
  만약 위와 같은 구성도에서 해당 기능을 사용하기 위해서는 L4 에 VRRP 를 설정하고,
  Fortigate 에서 해당 IP 를 지속적으로 Check 하며 L4 까지 도달하는 통신이 정상인지
  확인하게 됩니다. 체크하는 용도로 ICMP 가 사용되고, 별도 서비스포트 설정은 불가
  합니다.
  ICMP 를 보내는 주기나 몇회의 ICMP Fail 일 발생했을 때 Failover 를 할 것인지 등을
  설정 할 수 있습니다.

- 설정 예제
  GUI 에서는 해당 설정이 불가 하며, CLI 설정을 지원 합니다.

  1. HA Pingserver 기능 활성화
     #config system ha
     #set link-failed-signal enable
       Link Down 시 물리적인 Interface 의 Up/Down 수행
     #set pingserver-monitor-interface [인터페이스]
       해당 기능을 사용 할 Interface 지정
     #set pingserver-failover-threshold 1
       ICMP 체크가 되지 않을때 Failover 시간
     #set pingserver-slave-force-reset enable
       ICMP Fail 발생시 Force reset 사용 여부
     #set pingserver-flip-timeout 6
       최소 설정값은 6이며, Failover 후 Timeout 값을 초기화

  2. GW Detect / Link Monitor 설정
     GW Detect 인 경우 : #config router gwdetect 진입
     Link Monitor 인 경우 : #config system linkmonitor 진입
     #config system linkmonitor
     #set srcintf [인터페이스]
       해당 기능을 사용 할 Interface 지정
     #set server [IP]
       해당 기능을 사용 할 대상 IP 지정
     #set gateway-ip [IP]
       해당 기능을 사용 할 대상 IP 지정
     #set source-ip [IP]
       ICMP 체크를 수행하는 Source IP 지정, 보편적으로 Fortigate 에 할당된 IP 설정
     #set interval 1
       입력값은 (초) 를 의미하고, 몇초에 한번 ICMP 를 보낼 것인지 설정
     #set timeout 1
       ICMP 요청에 대한 Timeout 값 지정
     #set Failtime 3
       ICMP Fail Count 를 의미하고, 3으로 지정하는 경우 ICMP Fail 3회 발생 시
       Failover 하는것을 의미 함

설정 시 interval 이나 failtime 에 대한 설정은 잘 계산해서 적용 해야 합니다.
예를들어 Interval 이 1초이고 failtime 이 10 인 경우 1초마다 보내는 ICMP 의 Fail 이
10회 발생해야 Failover 가 되기 때문에 장애상황에서 10초가 소요되게 됩니다.

국내에서는 발생 할 가능성이 별로 없겠지만 네트워크의 어떤 문제로 인해 빈번하게
ICMP Fail이 발생하는 경우에는 interval 이나 timeout 값을 적당히 줘야 하고,
장애상황에 빠른 대응이 우선시 되는 경우라면 모든 값을 최소화 해서 적용 하는것이
좋습니다.

그리고 설정 2번에 테스트 하지 못해서 본포스팅에 넣지는 못했지만 recoverytime
이라는 옵션도 있습니다만 preempt 와 동일한 기능인지는 테스트 해보지 못했습니다.

보통의 경우는 문제가 되는 지점이 있으면, 해당 지점 즉, 해당 장비 에서 해결책을
찾는것이 정석이고, 찾다보면 해결책도 있긴 한데 간혹 장비 자체에서 아예 지원하지
못하는 경우도 있으니 유사한 경우에 참고하셔서 도움 되었으면 좋겠습니다.

감사합니다.

댓글 없음:

댓글 쓰기