구성 예시
다음 섹션에서는 다양한 OS 및 디바이스 조합에 대한 드레이닝 모드 구성 예를 제공합니다.
드레이닝 스파인 디바이스(L2 및 L3 청사진)
스파인을 배수할 때 다음이 발생합니다.
-
아웃바운드 경로가 디바이스의 라우팅 테이블에서 제거됩니다.
-
AS-PATH에 디바이스의 ASN(Autonomous System Numbers)이 있는 목적지로의 경로는 네트워크의 모든 디바이스에서 제거됩니다.
-
패킷은 모든 대상에 대해 나머지 ECMP(Equal Cost Multi-Path) 경로를 통해 전달됩니다.
전송 중인 단일 패킷이 손실될 가능성은 거의 없습니다. 그러나 이는 하드웨어 및 NOS의 L3 ECMP-L2 경로 해싱 알고리즘에 따라 달라집니다.
드레인(NX-OS)
ip prefix-list Drain seq 5 permit 0.0.0.0/0 le 32
route-map Drain deny 10
match ip address prefix-list Drain
exit
!
neighbor 172.16.0.1 remote-as 64514
address-family ipv4 unicast
route-map Drain out
route-map Drain in
exit
exit
neighbor 172.16.0.3 remote-as 64514
address-family ipv4 unicast
route-map Drain out
route-map Drain in
exit
exit
드레이닝(Junos)
[edit policy-options]
+ route-filter-list Drain {
+ 0.0.0.0/0 upto /32;
+ }
[edit policy-options]
+ policy-statement Drain {
+ term Drain-10 {
+ from {
+ family inet;
+ route-filter-list Drain;
+ }
+ then reject;
+ }
+ }
[edit protocols bgp group l3clos-s neighbor 172.16.0.7]
+ import ( Drain );
- export ( SPINE_TO_LEAF_FABRIC_OUT && BGP-AOS-Policy );
+ export ( Drain );
[edit protocols bgp group l3clos-s neighbor 172.16.0.9]
+ import ( Drain );
- export ( SPINE_TO_LEAF_FABRIC_OUT && BGP-AOS-Policy );
+ export ( Drain );
[edit protocols bgp group l3clos-s neighbor 172.16.0.11]
+ import ( Drain );
- export ( SPINE_TO_LEAF_FABRIC_OUT && BGP-AOS-Policy );
+ export ( Drain );
[edit protocols bgp group l3clos-s-evpn neighbor 10.0.0.0]
+ import ( Drain );
- export ( SPINE_TO_LEAF_EVPN_OUT );
+ export ( Drain );
[edit protocols bgp group l3clos-s-evpn neighbor 10.0.0.1]
+ import ( Drain );
- export ( SPINE_TO_LEAF_EVPN_OUT );
+ export ( Drain );
[edit protocols bgp group l3clos-s-evpn neighbor 10.0.0.2]
+ import ( Drain );
- export ( SPINE_TO_LEAF_EVPN_OUT );
+ export ( Drain );
드레이닝 리프 디바이스(MLAG가 있는 서버 대면 포트)
MLAG에서 서버 대면 포트가 있는 리프 디바이스를 드레이닝할 때 다음과 같은 상황이 발생합니다.
-
인바운드 및 아웃바운드 경로를 제한하는 모든 BGP 인접 라우터에 경로 맵이 배치됩니다.
-
서버 대면 인터페이스가 종료됩니다.
-
MLAG 피어 인터페이스가 종료됩니다.
L3에서는 어떻게 되나요?
-
아웃바운드 경로가 디바이스의 라우팅 테이블에서 제거됩니다.
-
AS-PATH에 디바이스의 ASN이 있는 목적지로의 경로는 네트워크의 모든 디바이스에서 제거됩니다.
-
패킷은 모든 대상에 대해 나머지 ECMP 경로를 통해 전달됩니다.
단일 전송 패킷이 손실될 가능성은 거의 없지만, 이는 하드웨어 및 NOS의 L3 ECMP-L2 경로 해싱 알고리즘에 따라 달라집니다.
L2에서는 어떻게 되나요?
-
이 디바이스에 대한 서버 인터페이스가 종료됩니다.
-
MLAG를 통해 이 디바이스로 해시되는 서버의 패킷은 전송 프로세스의 위치에 따라 삭제될 수 있습니다.
-
MLAG를 통해 이 디바이스로 해시되는 서버의 패킷은 전송 프로세스의 위치에 따라 MLAG 피어 링크를 통해 전달될 수 있습니다.
-
대체 MLAG 인터페이스에서 흐름이 다시 설정됩니다.
-
나머지 MLAG 인터페이스에 새 흐름이 설정됩니다.
드레인(NX-OS)
interface Ethernet1/1
shutdown
exit
!
interface Ethernet1/2
shutdown
exit
!
interface port-channel1
shutdown
exit
!
ip prefix-list Drain seq 5 permit 0.0.0.0/0 le 32
ipv6 prefix-list DrainV6 seq 5 permit 0::0/0 le 128
route-map Drain deny 10
match ip address prefix-list Drain
exit
!
route-map DrainV6 deny 10
match ipv6 address prefix-list DrainV6
exit
!
router bgp 64514
neighbor 10.0.0.0 remote-as 64512
address-family l2vpn evpn
route-map Drain out
route-map Drain in
exit
exit
neighbor 172.16.0.0 remote-as 64512
address-family ipv4 unicast
route-map Drain out
route-map Drain in
exit
exit
드레인(EOS)
interface Ethernet5 shutdown exit ! interface Ethernet6 shutdown exit ! interface port-channel1 shutdown exit ! interface port-channel2 shutdown exit ! ip prefix-list Drain seq 5 permit 0.0.0.0/0 le 32 route-map Drain deny 10 match ip address prefix-list Drain exit ! router bgp 102 neighbor 10.10.4.0 route-map Drain out neighbor 10.10.4.0 route-map Drain in neighbor 10.10.4.8 route-map Drain out neighbor 10.10.4.8 route-map Drain in default neighbor 10.10.4.19 route-map MlagPeer out neighbor 10.10.4.19 route-map Drain out neighbor 10.10.4.19 route-map Drain in !
드레인 해제(NS-OS)
L2에서는 어떻게 되나요?
-
이 디바이스에 대한 서버 인터페이스가 켜집니다.
-
새 flow는 새로 사용 가능한 MLAG 인터페이스에 해시됩니다
interface Ethernet1/1
no shutdown
exit
!
interface Ethernet1/2
no shutdown
exit
!
interface port-channel1
no shutdown
exit
!
no ip prefix-list Drain seq 5 permit 0.0.0.0/0 le 32
no ipv6 prefix-list DrainV6 seq 5 permit 0::0/0 le 128
no route-map Drain deny 10
!
no route-map DrainV6 deny 10
!
router bgp 64514
neighbor 10.0.0.0 remote-as 64512
address-family l2vpn evpn
default route-map Drain out
default route-map Drain in
exit
exit
드레인 해제(EOS)
L2에서는 어떻게 되나요?
-
이 디바이스에 대한 서버 인터페이스가 켜집니다.
-
새 flow는 새로 사용 가능한 MLAG 인터페이스에 해시됩니다
interface Ethernet5 no shutdown exit ! interface Ethernet6 no shutdown exit ! interface port-channel1 no shutdown exit ! interface port-channel2 no shutdown exit ! no ip prefix-list Drain seq 5 permit 0.0.0.0/0 le 32 no route-map Drain deny 10 ! router bgp 102 default neighbor 10.10.4.0 route-map Drain out default neighbor 10.10.4.0 route-map Drain in default neighbor 10.10.4.8 route-map Drain out default neighbor 10.10.4.8 route-map Drain in default neighbor 10.10.4.19 route-map Drain out neighbor 10.10.4.19 route-map MlagPeer out default neighbor 10.10.4.19 route-map Drain in !
드레이닝 리프 디바이스(L2 서버 대면 포트, MLAG 없음)
MLAG 없이 서버 대면 포트가 있는 리프 디바이스를 드레이닝할 때 다음과 같은 상황이 발생합니다.
-
모든 BGP 인접 라우터에 경로 맵이 배치되어 인바운드 및 아웃바운드 경로를 제한합니다
-
서버 대면 인터페이스가 종료됨
드레이닝(Junos)
[interfaces replace: ae1] + disable; [interfaces replace: xe-0/0/2] + disable; [interfaces replace: xe-0/0/3] + disable; [routing-instances blue protocols bgp group l3rtr neighbor 192.168.0.11] - import ( RoutesFromExt-blue-Default_immutable ); - export ( RoutesToExt-blue-Default_immutable ); + import ( Drain ); + export ( Drain ); [routing-instances red protocols bgp group l3rtr neighbor 192.168.0.7] - import ( RoutesFromExt-red-Default_immutable ); - export ( RoutesToExt-red-Default_immutable ); + import ( Drain ); + export ( Drain ); [protocols bgp group l3clos-l neighbor 172.16.0.2] - export ( LEAF_TO_SPINE_FABRIC_OUT && BGP-AOS-Policy ); + import ( Drain ); + export ( Drain ); [protocols bgp group l3clos-l neighbor 172.16.0.8] - export ( LEAF_TO_SPINE_FABRIC_OUT && BGP-AOS-Policy ); + import ( Drain ); + export ( Drain ); [protocols bgp group l3clos-l-evpn neighbor 10.0.0.3] - export ( LEAF_TO_SPINE_EVPN_OUT && EVPN_EXPORT ); + import ( Drain ); + export ( Drain && EVPN_EXPORT ); [protocols bgp group l3clos-l-evpn neighbor 10.0.0.4] - export ( LEAF_TO_SPINE_EVPN_OUT && EVPN_EXPORT ); + import ( Drain ); + export ( Drain && EVPN_EXPORT ); [protocols bgp group l3rtr neighbor 192.168.0.3] - import ( RoutesFromExt-default-Default_immutable ); - export ( RoutesToExt-default-Default_immutable ); + import ( Drain ); + export ( Drain ); + [policy-options route-filter-list Drain] + 0.0.0.0/0 upto /32; + [policy-options policy-statement Drain term Drain-10 from] + route-filter-list Drain; + family inet; + [policy-options policy-statement Drain term Drain-10] + then reject
드레인(NX-OS)
interface Ethernet1/41
shutdown
exit
!
ip prefix-list Drain seq 5 permit 0.0.0.0/0 le 32
route-map Drain deny 10
match ip address prefix-list Drain
exit
!
router bgp 64516
neighbor 172.16.0.8 remote-as 64512
address-family ipv4 unicast
route-map Drain out
route-map Drain in
exit
exit
neighbor 172.16.0.22 remote-as 64513
address-family ipv4 unicast
route-map Drain out
route-map Drain in
exit
exit
exit
!
드레인(EOS)
interface Ethernet5
shutdown
exit
!
ip prefix-list Drain seq 5 permit 0.0.0.0/0 le 32
route-map Drain deny 10
match ip address prefix-list Drain
exit
!
router bgp 104
default neighbor 9.0.0.1 route-map RoutesToExt out
neighbor 9.0.0.1 route-map Drain out
default neighbor 9.0.0.1 route-map RoutesFromExt in
neighbor 9.0.0.1 route-map Drain in
neighbor 10.10.4.4 route-map Drain out
neighbor 10.10.4.4 route-map Drain in
neighbor 10.20.30.4 route-map Drain out
neighbor 10.20.30.4 route-map Drain in
neighbor 10.10.4.12 route-map Drain out
neighbor 10.10.4.12 route-map Drain in
neighbor 10.20.30.5 route-map Drain out
neighbor 10.20.30.5 route-map Drain in
vrf Finance
default neighbor 9.0.0.1 route-map RoutesToExt-Finance out
neighbor 9.0.0.1 route-map Drain out
default neighbor 9.0.0.1 route-map RoutesFromExt-Finance in
neighbor 9.0.0.1 route-map Drain in
exit
!
드레인 해제(NX-OS)
interface Ethernet1/41
no shutdown
exit
!
no ip prefix-list Drain seq 5 permit 0.0.0.0/0 le 32
no route-map Drain deny 10
!
router bgp 64516
neighbor 172.16.0.8 remote-as 64512
address-family ipv4 unicast
default route-map Drain out
default route-map Drain in
exit
exit
neighbor 172.16.0.10 remote-as 64512
address-family ipv4 unicast
default route-map Drain out
default route-map Drain in
exit
exit
neighbor 10.0.0.1 remote-as 64513
address-family l2vpn evpn
default route-map Drain out
default route-map Drain in
exit
exit
neighbor 172.16.0.20 remote-as 64513
address-family ipv4 unicast
default route-map Drain out
default route-map Drain in
exit
exit
neighbor 172.16.0.22 remote-as 64513
address-family ipv4 unicast
default route-map Drain out
default route-map Drain in
exit
exit
exit
!
드레인 해제(EOS)
interface Ethernet5
no shutdown
exit
!
no ip prefix-list Drain seq 5 permit 0.0.0.0/0 le 32
no route-map Drain deny 10
!
router bgp 104
default neighbor 9.0.0.1 route-map Drain out
neighbor 9.0.0.1 route-map RoutesToExt out
default neighbor 9.0.0.1 route-map Drain in
neighbor 9.0.0.1 route-map RoutesFromExt in
default neighbor 10.10.4.4 route-map Drain out
default neighbor 10.10.4.4 route-map Drain in
default neighbor 10.20.30.4 route-map Drain out
default neighbor 10.20.30.4 route-map Drain in
default neighbor 10.10.4.12 route-map Drain out
default neighbor 10.10.4.12 route-map Drain in
default neighbor 10.20.30.5 route-map Drain out
default neighbor 10.20.30.5 route-map Drain in
vrf Finance
default neighbor 9.0.0.1 route-map Drain out
neighbor 9.0.0.1 route-map RoutesToExt-Finance out
default neighbor 9.0.0.1 route-map Drain in
neighbor 9.0.0.1 route-map RoutesFromExt-Finance in
exit
!
드레이닝 리프 디바이스(L3 연결 서버)
드레인(EOS)
ip prefix-list Drain seq 5 permit 0.0.0.0/0 le 32 route-map Drain deny 10 match ip address prefix-list Drain exit ! router bgp 102 neighbor 10.10.4.0 route-map Drain out neighbor 10.10.4.0 route-map Drain in neighbor 10.10.4.8 route-map Drain out neighbor 10.10.4.8 route-map Drain in neighbor 11.0.0.1 route-map Drain out neighbor 11.0.0.1 route-map Drain in !
드레인 해제(EOS)
no ip prefix-list Drain seq 5 permit 0.0.0.0/0 le 32 no route-map Drain deny 10 ! router bgp 102 default neighbor 10.10.4.0 route-map Drain out default neighbor 10.10.4.0 route-map Drain in default neighbor 10.10.4.8 route-map Drain out default neighbor 10.10.4.8 route-map Drain in default neighbor 11.0.0.1 route-map Drain out default neighbor 11.0.0.1 route-map Drain in !