0부터 시작하는 가상머신과 네트워크 공부 - FHRP & OSPF

Jaehong Lee·2022년 7월 13일
0
post-thumbnail

1. 고가용성 ( High Availability )

  • 가용성이란 사용자가 원하는 서비스를 요청했을 때 얼마만큼의 응답률을 보이는가를 의미한다. 고가용성이 구축되어 있는 환경이라면 서비스 Down time이 거의 없는 환경을 의미한다

  • 서버와 네트워크, 프로그램 등의 정보 시스템이 상당히 오랜 기간 동안 지속적으로 정상 운영이 가능한 성질로, 가용성이 높다는 뜻이다. 이는 절대 고장 나지 않음을 의미하며, 흔히 가용한 시간의 비율을 %로 표시한다

  • 고가용성을 위해서는 이중화를 구축하여 서비스의 Down time을 줄여야 한다. Active 서버에서 오류가 나면, 바로 Standby 서버가 서비스를 복구해줘야 한다

    • Active - Active 구조 : 이는 양 서버가 서로 다른 작업을 하다가, 한 서버에서 장애가 일어나면, 다른 서버가 두 작업을 모두 제공해주어 서비스를 복구해주는 방법이다. 허나, Active & Stand by 방식을 더 많이 사용한다
  • 고가용성을 위해서는 Active - Standby ( = Master - Slave = Primary - Secondary ... ) 와 같은 구조로 환경을 구축해야 하며 Standby는 두 가지로 구분한다

    • Host Standby : on 상태로 대기중인 서버, 항상 대기 상태를 유지하므로 Active가 Down 되었을 때, 이를 복구하는 시간이 매우 짧다. 허나, 비용이 발생된다

    • Cold Standby : off 상태로 대기중인 서버, 전원이 켜져있지 않으므로, 비용이 발생되지 않는다

  • Standby 서버는 Active 서버와 서로 Health Check를 지속적으로 하여 Active 서버가 살아있는지 확인한다

  • 서버 클러스터링 : 두 대 이상의 서버를 하나의 서버처럼 운영하는 기술

    • 고가용성 클러스터링 : 하나의 서버에 장애가 발생하면, 다른 서버가 대신 처리
    • 병렬 처리 클러스터링 : 하나의 작업을 여러 개의 서버에 분산해 처리
  • DBMS 안정화를 위한 선택

    • Replication : DB를 Master - Slave 구조로 나눠서 동일한 Data를 저장하는 방식. 이를 통해 백업, 복구가 가능하다. Master에 저장하면, Master에서 이 Data를 복사해서 Slave에 저장한다
    • Galera Cluster : 동기 방식의 복제구조를 사용하는 멀티마스터 RDB 클러스터로 Clustering 이기에 동시에 Write가 가능하다

2. FHRP

  • FHRP ( First Hop Redundancy Protocol )

    • 네트워크에서 사용하는 고가용성 기술 중에 하나다
    • 안정적으로 24시간 on-line ( 인터넷 연결 가능 )을 유지시키기 위하여 FHRP 를 사용한다
    • First Hop은 처음 도달하는 라우터다. 이 라우터를 두 개를 두어서, Active Router 에서 문제가 발생하면, 다른 Hot-Standby Router 를 통해 외부로 나가게 한다
  • 세부 작동 방식

    • SLA에 정해진 지정 시간 안에 Reply가 안오면 Down 되었다고 판단해, 해당 라우터의 Priority를 지정한 수만큼 깎아서 우선순위를 낮춘다. 이를 통해 Active 라우터를 Standby 라우터로 상태 변경한다
      • SLA : service level agreement로, 안정적인 서비스를 제공할 수 있도록 사전에 계약한 것. 이 정해진 규악을 interface나 Dns 서버와의 Ping을 통해서도 모니터링한다
    • 이렇게 우선순위가 바꾸면, 다른 Standby 라우터가 Active 라우터가 되며, 이 라우터는 가상 라우터의 Ip를 가지게 된다. 이때, 라우터의 Ip가 바뀌면 같은 네트워크 대역에 같은 Ip를 사용하는지 확인하는 gratuitous ARP를 보내는데, 이 ARP가 SWITCH에 도달하면, SWITCH의 MAC TABLE에 장비가 도달해야할 MAC 주소에 대한 PORT를 현재 ACTIVE 라우터 쪽 PORT로 변경한다
    • STANDBY 라우터와 ACTIVE 라우터는 서로 일정시간 마다 Health-Check 하는데, 만약 문제가 생긴 라우터가 복구되면, 현재 Active 라우터는 우선 순위를 낮추어 Standby 라우터로 돌아오고, 문제가 복구된 라우터가 Active 라우터가 된다
  • 이처럼, 스위치 위의 라우터에서 동작이 실행되므로 연결된 장비는 자신의 Default-Gateway 주소나 Ip를 바꿀 필요가 없다

  • FHRP 종류

    • FHRP는 일종의 기술의 분류로, 여러가지 종류가 있다
  1. HSRP ( Hot Standby Router Portocol )

    • 벤더 의존적인 프로토콜. CISCO의 표준 Protocol. 위 FHRP와 개념이 비슷하다. 왜 Routing이 아니라 Router 일까? Routing은 다른 네트워크로 넘어가는 것으로, 이 Portocol은 같은 네트워크에서 사용하는 것이기에 Router로 써야한다
    • HSRP에서는 VLAN 별로 별도의 Active를 두고 이중화를 구현한다

  2. VRRP ( Virtual Router Redundancy Protocol )

    • 표준 프로토콜로 IBM 에서 개발한 게이트웨이 이중화 솔루션이다
    • 로드밸런싱 지원
    • 일반적으로 FHRP는 로드밸런싱을 지원하지 않는다

3. HSRP 실습 환경 구현

  • 실습 환경을 구성하자. 위와 같이 설정하고, 연결한다
  • hostname으로 이름을 변경해준다
  • 양 라우터의 인터넷 쪽 Port에 Ip를 넣어준다. 각각 .118 , .218을 넣어줬다. no sh로 Interface 활성화를 해주자
  • 이렇게 Ip를 구성해야한다. 먼저 양 라우터의 f0/1에 Ip를 넣어준다
  • 양 라우터의 각 포트가 서로 통신이 잘 된다
  • default-route를 설정해준다. 이제, 인터넷에 잘 연결된다

4. 동적 PAT 구현

  • 양쪽 모두 서버에서 인터넷에 나가게 해야하므로, 동적 PAT를 해준다

5. V-ROUTER 및 HSRP 구현

  • centos 1에 접속해서 Gateway 주소를 바꿔주자. 이는 가상 라우터의 Ip이다
  • V-ROUTER는 연결된 장비의 Gateway가 되는 인터페이스에서 구현해야한다
  • ' standby 그룹 번호 가상라우터의 주소 '로 작성한다. 두 개의 라우터를 standby 10번 그룹에 넣어, standby 그룹을 통해 FHRP 서비스를 제공할 건데 그룹 번호는 10번 이라는 의미다. 이 그룹에서 제공해주는 주소는 다음과 같으며, 이 주소는 가상 라우터의 주소이자 Gateway 주소다
  • 설정하면 두 라우터의 상태가 설정된다. 이 상태는 불안정하므로 우선순위를 설정하자
  • 이 설정은 자동으로 권한이 변경되지 않는다. 이는 권한 변경에 대한 설정을 양 라우터에 안했기 때문이다
  • 두 라우터 모두 권한을 넘길 수 있게 해준다. 설정하니 우선순위에 따라 서로 권한이 바뀐다
  • standby 10 그룹에 대해서 f0/0에 대해 추적해여, 이 f0/0에 문제가 생기면 해당 라우터의 우선순위를 20 감소하게 설정한다
  • centos 1에서 확인해보면 gateway mac 주소에 그룹 번호인 10 ( a ) 이 포함된 것을 확인할 수 있다
  • 이 vendor 주소는 회사마다 정해져있다. 48 bit mac 주소의 앞 24 bit는 oui라고 회사마다 정해져있다
  • 앞 24 bit는 cisco systems의 제품이며, 뒤 16bit는 ciso systems에서 할당해준 mac 주소다. 따라서 해당 주소는, cisco에서 가상 라우터를 위해 정해준 mac 주소이며, 마지막은 그룹 번호이다
  • kt 쪽 라우터 인터페이스를 sh를 통해 비활성화시키면, 자동으로 오른쪽 LGU+ 쪽 라우터가 Active가 된다
  • listen은 대기중인 상태며, speak는 서로 통신하는 상태이다. 즉, 상태 변경이 되면, 각 라우터는 listen 상태로 변경되어 현재 권한을 내려놓고, speak 상태가 되어 서로 통신하여 우선순위를 계산하고, 권한을 결정한다
  • 경로 추적해주면 .102 쪽으로 가는 것을 확인할 수 있다
  • no sh으로 다시 활성화시키면, 다시 상태가 변경된다

6. 동적 라우팅 - OSPF

  • 동적 라우팅은 라우터간 라우팅 프로토콜을 이용하여 서로간에 네트워크 정보를 교환하고 목적지로 찾아갈 수 있는 최적 경로를 선택한 뒤 해당 경로를 라우팅 테이블에 인스톨 시킨다
    • 라우터와 라우터끼리 서로 통신을 하고, 해당 라우터가 그 다음 경로에 해당하는 또 다른 라우터와 통신을 해서 서로서로 정보를 주고 받으며 정보를 최신화 시킨다. 또한, 이를 유지하기 위해 끊임없이 통신을 해야한다
  • OSPF ( Open Shortest Path First ) : 인터넷 프로토콜인 IP 네트워킹에서 사용하기 위한 계층구조 동적 라우팅 프로토콜

  • OSPF Protocol을 사용할 것이다

  • 다음과 같은 환경을 구성한다
  • 두 라우터에 Ip를 입력해준다
  • 라우터를 구성할때 자신이 가진 네트워크 정보만 알려주면 된다
  • 라우터가 가진 인터페이스 중에 192.168.1.0~255 사이에 해당하는 주소가 있다면, 그 주소의 네트워크 정보를 상대방에게 전달하겠다고 전달한다. 이때 통신 범위를 area 0으로 지정해 해당 범위에 있는 라우터들에게 전달하겠다
  • 10.10.10.0 대역에 대한 정보도 추가한다
  • 다른쪽도 설정해주면, 메세지가 뜬다. 메세지에서 Nbr은 이웃이라는 뜻이다. 따라서 1.1과 2.1이 서로 이웃이 된 것이다. 이제 서로 서로의 네트워크 정보를 건네줄 수 있다
  • 확인해보면, O라고 표시된 부분이 있다. 이는 OSPF Protocol로 알아온 정보로, 이웃이 된 라우터의 네트워크 정보이다. 즉, R2의 네트워크 정보다
  • 동적 라우팅이 되었기에 따로 정적 라우팅을 하지 않아도 통신이 된다
profile
멋진 엔지니어가 될 때까지

0개의 댓글