프로필사진

Go, Vantage point

가까운 곳을 걷지 않고 서는 먼 곳을 갈 수 없다.


Github | https://github.com/overnew/

Blog | https://everenew.tistory.com/





티스토리 뷰

반응형

 

 

VIP(Virtual IP)는 가상의 IP로, 여러 자원에 하나의 IP를 할당하는 기술이다.

VIP는 높은 가용성을 보장해야 하는 네트워크 분야에서 이중화를 위해 많이 사용된다.

그 대표적인 예가 Cisco에서 사용되는 HSRP 기술이다.

 

 

 

 

게이트웨이 다중화 프로토콜 - HSRP(Hot Standby Routing Protocol) 

 

아래의 그림에서 게이트웨이(R1 라우터)가 단 하나만 존재한다면, R1에 장애가 발생했을 때 내부망은 외부망과 통신이 불가능해진다.

게이트웨이를 두 개 (R1과 R2 라우터)를 배치하더라도, 게이트웨이 IP는 하나 밖에 할당할 수 없다.

R1 라우터의 문제가 발생한다면 이를 감지하고, 게이트웨이 IP를 R2 라우터의 IP(이를 Real IP라고 함)로 바꿔주는 수작업이 필요하다.

 

이를  해결하기 위해 Cisco에서 만든 기술이 HSRP(Hot Standby Routing Protocol)이다.

 

출처: Cisco Hot Standby Router Protocol (HSRP) Configuration - Study CCNA

 

HSRP는 두 개의 라우터를 하나의 가상의 IP(VIP)로 묶고, 이 VIP를 호스트의 게이트웨이 주소로 설정해 준다.

이러면 내부 프로토콜에 의해 Active-standby가 결정된다.

 

이후 active 라우터에 장애가 발생하더라도 standby가 active로 변경되어 트래픽을 전달한다.

특히 클라이언트가 되는 호스트는 게이트웨이 IP의 변경 없이도 정상적으로 네트워크 서비스를 받을 수 있다.

 

 

cisco 이외의 장비라면 IETF에서 정의한 게이트웨이 다중화 프로토콜인 VRRP(Virtual Router Redundancy Protocol)를 사용할 수 있다.

 

RFC 3768 - Virtual Router Redundancy Protocol (VRRP)

 

RFC 3768: Virtual Router Redundancy Protocol (VRRP)

This memo defines the Virtual Router Redundancy Protocol (VRRP). VRRP specifies an election protocol that dynamically assigns responsibility for a virtual router to one of the VRRP routers on a LAN. The VRRP router controlling the IP address(es) associated

datatracker.ietf.org

 

 

이처럼 VIP는 여러 개의 자원을 하나의 가상의 IP로 추상화하여 사용할 수 있으므로 이중화 구성에 매우 효과적이다.

따라서 네트워크 장비뿐만 아니라 다양한 장비에서도 활용된다.

 

 

 

 

Oracle VIP (in RAC)

게이트웨이뿐만 아니라 DB 서버도 가용성을 위해 이중화를 진행한다. 

이때의 문제는 위에서와 동일하게 클라이언트가 장애를 감지하고 다른 서버 IP로 변경해야 하는 부분에 있다.

 

클라이언트 측에서 연결의 timeout이 발생할 때까지 대기 후 다른 서버로 연결을 시도할 수도 있다.

하지만 이는 시간도 오래 걸리고, 정상 서버가 부하로 응답이 느린 상황이라면 이미 생성된 connection process가 또 다른 서버에 띄우는 작업에 의해 부하가 발생한다.

 

따라서 Oracle에서는 클라이언트와 서버를 VIP로 통신하도록 하고, 해당 서버의 장애를 수초 안에 빠르게 감지하여 다른 서버가 VIP를 가지도록 대처해 주는 기능을 Clusterware에서 제공한다.

 

 

단, Oracle RAC는 Active-Standby 형식에서 하나의 VIP가 장애 발생 시 standby 서버로 옮겨지는 failover 방식이 아니다. 

Active-Active로 동작하기 때문에 각 서버가 VIP를 가지고, Client들은 해당 VIP 정보들을 가지고 있다.

 

 

연결 시, Client는 우선순위에 따라 VIP1에 먼저 접근한다.

 

 

 

이때 서버 A에 문제가 발생 시, VIP1은 빠르게 서버 B로 이동한다.

Client는 VIP1로 서버 B에 접근하지만, 서버B Listener는 VIP2에서의 요청만을 받으므로 VIP1은 바로 거절된다.

클라이언트는 이를 통해 바로 다시 VIP2로 서버B에 연결을 요청할 수 있다.

 

 

 

이 작업을 통해 클라이언트는 장애가 발생했는지 알지 못하고 서비스를 이용할 수 있다.

 

 

 

 

Load Balancer

클라우드 환경의 Load Balancer들은 VIP의 역할을 수행한다.

클라이언트들은 Load Balancer의 IP를 통해 뒷단에 연결된 서버와 통신을 한다. 

뒷단의 서버들에 문제가 발생해도 Load balancer가 정상 서버로 연결을 진행해 주기 때문에 클라이언트들은 내부 서버의 장애를 알 수 없다.

 

 

 

 

 

 

 

 

참조

Cisco Hot Standby Router Protocol (HSRP) Configuration - Study CCNA

RAC 환경에서의 vip 역할 : 네이버 블로그

Oracle RAC 개념(Cluster, 구성요소)

 

반응형
댓글
반응형
인기글
Total
Today
Yesterday
«   2025/04   »
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30
글 보관함