고가용성이란 사용자가 원하는 서비스를 요청했을 때 얼마만금의 응답률을 보이는가? 고가용성이 구축되어있는 환경이라면 서비스 다운타임이 거의 없는 환경을 의미한다.
고가용성을 위해서는 이중화를 구축하여 서비스의 다운타임을 줄여아한다.
고가용성을 위해서는 Active/Standby(Master/Slave, Primary/Secondary)와 같은 환경을 구축해야 하며, 대기(Standby)는 두 가지로 구분한다.
Standby
데이터베이스 이중화 구성 방법
https://ko.wikipedia.org/wiki/%EA%B3%A0%EA%B0%80%EC%9A%A9%EC%84%B1
Database Replication(Master/Slave)
galera cluster(clustering. 동시 write 가능)
Master Slave 구성의 Replication 과는 다르게 모든 노드에서 Write가 가능합니다
FHRP(First Hop Redundancy Protocol)
일반적인 FHRP는 로드밸런싱을 지원하지 않는다.
HSRP에서는 vlan 별로 별도의 Active를 두고 이중화를 구현한다.
안정적으로 24시간 on-line(인터넷 연결 가능)을 유지시키기 위하여 FHRP를 사용한다.
192.168.1.101 ~ 192.168.1.126 -> 192.168.1.116
192.168.1.201 ~ 192.168.1.226 -> 192.168.1.216
Cloud1, Cloud2
PC -> VMnet1
[R1]
conf t
hostname KT
int fa0/0
ip add 192.168.1.116 255.255.255.0
no sh
[R2]
conf t
hostname LGU+
int fa0/0
ip add 192.168.1.216 255.255.255.0
no sh
[R1]
do ping 192.168.1.216
.!!!!
-> 인터넷을 통해서 R2에 도달했음
int fa0/1
ip add 172.16.1.101 255.255.255.0
no sh
[R2]
int fa0/1
ip add 172.16.1.102 255.255.255.0
no sh
do ping 172.16.1.101
.!!!!
-> switch를 통해서 R1에게 ping
[R1]
! ISP(KT)에 연결
ip route 0.0.0.0 0.0.0.0 192.168.1.1
[R2]
! ISP(LG U+)에 연결
ip route 0.0.0.0 0.0.0.0 192.168.1.1
[R1, R2]
! 인터넷과 연결 확인
do ping 8.8.8.8
.!!!!
[R1, R2]
access-list 1 permit any
ip nat inside source list 1 int fa0/0 overload
int fa0/0
ip nat outside
int fa0/1
ip nat inside
[centos1]
wired settings -> gw를 .254로 변경
netstat -nr
-> kernel IP routing table
ping www.google.com
-> 아직 인터넷 연결 안 됨
[R1]
int fa0/1
standby 10 ip 172.16.1.254
*Mar 1 00:32:21.003: %HSRP-5-STATECHANGE: FastEthernet0/1 Grp 10 state Speak -> Standby
[R2]
int fa0/1
standby 10 ip 172.16.1.254
Mar 1 00:30:37.655: %HSRP-5-STATECHANGE: FastEthernet0/1 Grp 10 state Speak -> Standby
Mar 1 00:30:38.155: %HSRP-5-STATECHANGE: FastEthernet0/1 Grp 10 state Standby -> Active
나중에 standby를 켠 R2가 Active가 되었음
[R1]
standby 10 priority 110
-> 기다려도 R1이 Active가 되지 않음
-> R2가 Active 권한을 내려놓지 않기 때문
[R2]
standby 10 preempt
-> Active 권한을 넘길 수 있음
[R1]
standby 10 preempt
-> Active 권한을 넘길 수 있음
[R1]
*Mar 1 00:36:08.443: %HSRP-5-STATECHANGE: FastEthernet0/1 Grp 10 state Standby -> Active
[R2]
Mar 1 00:34:45.175: %HSRP-5-STATECHANGE: FastEthernet0/1 Grp 10 state Active -> Speak
LGU+(config-if)#
Mar 1 00:34:55.175: %HSRP-5-STATECHANGE: FastEthernet0/1 Grp 10 state Speak -> Standby
[R1]
standby 10 track f0/0 20
! decrement value: 20
[centos1]
ping www.google.com
firefox -> www.naver.com 접속 -> 된다
arp
-> 00:00:0c:07:ac:0a
mac vendor 확인해보기
-> 00:00:0c -> oui -> Cisco
-> HSRP vRouter를 위한 mac address
[centos]
traceroute www.google.com
-> 172.16.1.101을 통해 인터넷에 접속됨
[R1]
sh
-> Active를 죽여보기
-> Standby로 변경
[centos]
traceroute www.google.com
-> 172.16.1.102를 통해 인터넷에 접속됨
[R1]
no sh
-> 다시 Active로 변경
[centos]
traceroute www.google.com
-> 172.16.1.101을 통해 인터넷에 접속됨
Dynamic Routing은 라우터 간 라우팅 프로토콜을 이용하여 서로 간에 네트워크 정보를 교환하고 목적지로 찾아갈 수 있는 최적 경로를 선택한 뒤 해당 경로를 라우팅 테이블에 인스톨 시킨다.
[R1]
conf t
int fa0/1
ip add 192.168.1.1 255.255.255.0
no sh
int fa0/0
ip add 10.10.10.1 255.255.255.252
no sh
[R2]
conf t
int fa0/0
ip add 10.10.10.2 255.255.255.252
no sh
int fa0/1
ip add 192.168.2.1 255.255.255.0
no sh
[R1]
do ping 10.10.10.2
.!!!!
OSPF(Open Shortest Path First)
BGP
MPLS
[R1]
router ospf 1
network 192.168.1.0 0.0.0.255 area 0
-> 내가 가지고 있는 인터페이스 중에 192.168.1.0 부터 192.168.1.255 사이에 해당하는 주소가 있다면 그 주소의 네트워크 정보를 상대방(area 0)에게 전달하겠다!
network 10.10.10.0 0.0.0.3 area 0
[R2]
router ospf 1
network 192.168.2.0 0.0.0.255 area 0
network 10.10.10.0 0.0.0.3 area 0
[R1]
*Mar 1 00:10:01.707: %OSPF-5-ADJCHG: Process 1, Nbr 10.10.10.2 on FastEthernet0/0 from LOADING to FULL, Loading Done
[R2]
*Mar 1 00:08:18.443: %OSPF-5-ADJCHG: Process 1, Nbr 192.168.1.1 on FastEthernet0/0 from LOADING to FULL, Loading Done
do show ip route
O
[R1]
do show ip route
O
do ping 192.168.1.1
[R1]
do ping 192.168.2.1 so 192.168.1.1