๐ŸŒ ๋„คํŠธ์›Œํฌ

VRRP๋ž€? - ๊ฒŒ์ดํŠธ์›จ์ด ์ด์ค‘ํ™”

๋ฏธ์ธ์ฃผ 2023. 7. 17. 14:59

VRRP๊ฐ€ ๊ถ๊ธˆํ•ด์ง„ ๊ณ„๊ธฐ๋Š” ์•„๋ž˜์™€ ๊ฐ™์Šต๋‹ˆ๋‹ค.

 

MySQL MMM ๊ตฌ์„ฑ์„ ๊ณต๋ถ€ํ•˜๋ฉด์„œ MMM VIP์— ๋Œ€ํ•ด ์•Œ๊ฒŒ ๋˜์—ˆ๋Š”๋ฐ์š”.

MMM VIP๋ž€,

MySQL MMM ๊ตฌ์„ฑ์—์„œ ์œ ๋™์ ์œผ๋กœ writer ๋ฐ ๋งˆ์Šคํ„ฐ ์—ญํ• ์„ ๋ณ€๊ฒฝํ•  ์ˆ˜ ์žˆ๋„๋ก writer์— ๊ตฌ์„ฑํ•˜๋Š” Virtual IP์ž…๋‹ˆ๋‹ค.

์ฆ‰, MMM์—์„œ ๋กค ์ฒด์ธ์ง€๋ฅผ ํ•  ๋•Œ ์ด๋™ํ•˜๊ฒŒ ๋˜๋Š” VIP์ธ๋ฐ์š”.

 

๐Ÿค” ๊ทธ๋ ‡๋‹ค๋ฉด VIP๋Š” ์–ด๋–ป๊ฒŒ ์ƒํ™ฉ์„ ํŒ๋‹จํ•˜๊ณ  ์ด๋™ํ•˜๋Š” ๊ฑธ๊นŒ? ๋ผ๋Š” ๊ถ๊ธˆ์ฆ์ด ์ƒ๊ฒจ ์ฐพ์•„๋ณด๋‹ˆ

VIP๋ฅผ ๋ˆ„๊ฐ€ ์†Œ์œ ํ•˜๋Š”์ง€ ํŒ๋ณ„ํ•˜๊ธฐ ์œ„ํ•ด์„œ VRRP๋ผ๋Š” ํ”„๋กœํ† ์ฝœ์„ ์‚ฌ์šฉํ•œ๋‹ค๋Š” ๊ฒƒ์„ ์•Œ๊ฒŒ ๋˜์–ด ์ •๋ฆฌํ•ด๋ณด๊ณ ์ž ํ•ฉ๋‹ˆ๋‹ค.


๋„คํŠธ์›Œํฌ ์ด์ค‘ํ™” ์ž‘์—…์„ ํ•˜๋Š” ์ด์œ ๋Š” ํฌ๊ฒŒ ๋‘ ๊ฐ€์ง€์ž…๋‹ˆ๋‹ค.

1. Load balancing: ๋˜‘๊ฐ™์€ ๊ธฐ๋Šฅ์„ ์ˆ˜ํ–‰ํ•˜๋Š” ์žฅ๋น„๋ฅผ ์—ฌ๋Ÿฌ ๊ฐœ ๊ตฌ์„ฑํ•˜์—ฌ ๋„คํŠธ์›Œํฌ ๋ถ€ํ•˜๋ฅผ ๋ถ„์‚ฐ

2. Failover: ํ•˜๋‚˜์˜ ์žฅ๋น„๊ฐ€ ์ฃฝ์—ˆ์„ ๋•Œ ๋‹ค๋ฅธ ์žฅ๋น„๋กœ ์ „ํ™˜๋˜์–ด ์„œ๋น„์Šค ๋‹จ์ ˆ ์ตœ์†Œํ™”

 

VRRP๋Š” ์ฃผ๋กœ Failover๋ฅผ ๋ชฉ์ ์œผ๋กœ Master/Slave ์žฅ๋น„ ๊ฐ„ ์ „ํ™˜์„ ์œ„ํ•ด ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.

๊ทธ๋Ÿผ VRRP๋Š” ์–ด๋–ค ํ”„๋กœํ† ์ฝœ์ด๊ณ  ์–ด๋–ป๊ฒŒ ๋™์ž‘ํ• ๊นŒ์š”?

 

 

VRRP(Virtual Router Redundancy Protocol)

  • ๊ฐ€์ƒ ๋ผ์šฐํ„ฐ ๋‹ค์ค‘ํ™” ํ”„๋กœํ† ์ฝœ, ๊ฐ€์ƒ ๋ผ์šฐํ„ฐ ์žฅ์•  ๋ณต๊ตฌ ํ”„๋กœํ† ์ฝœ
  • ๊ฒŒ์ดํŠธ์›จ์ด ์ด์ค‘ํ™” ํ”„๋กœํ† ์ฝœ(FHRP, First Hop Redundancy Protocol) ์ค‘ ํ•˜๋‚˜๋กœ ๊ฒŒ์ดํŠธ์›จ์ด ์žฅ์•  ๋ณต๊ตฌ๋ฅผ ์œ„ํ•œ ํ”„๋กœํ† ์ฝœ
    • FHRP์—๋Š” VRRP, HSRP(Cisco), GLBP ๋“ฑ์ด ์žˆ์œผ๋ฉฐ VRRP์™€ HSRP๋Š” ๋™์ž‘๋ฐฉ์‹์ด ๊ฑฐ์˜ ์œ ์‚ฌ

 

 

Master ์„ ์ถœ ๊ธฐ์ค€

์ด์ค‘ํ™”์— ์‚ฌ์šฉ๋˜๋Š” ๊ฒŒ์ดํŠธ์›จ์ด ์—ญํ• ์„ ํ•˜๋Š” ๋‘๊ฐœ์˜ ์žฅ๋น„๋Š” Master/Slave ์žฅ๋น„๋กœ ๋™์ž‘ํ•ฉ๋‹ˆ๋‹ค.

Master์™€ Slave๋Š” ํ•˜๋‚˜์˜ VIP(Virtual IP)๋กœ ๋ฌถ์—ฌ์žˆ์œผ๋ฉฐ, ๊ฐ๊ฐ RIP(Real IP)๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

 

VIP๋ฅผ ๋ˆ„๊ฐ€ ์†Œ์œ ํ•˜๊ณ  ์žˆ๋Š๋ƒ์— ๋”ฐ๋ผ Master(O)/Slave(X)๋ฅผ ๊ตฌ๋ถ„ํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ

Master์˜ ์„ ์ถœ ๊ธฐ์ค€์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

  • VIP์™€ RIP๊ฐ€ ๊ฐ™์€ ์žฅ๋น„
  • VRRP Priority(์šฐ์„ ์ˆœ์œ„) ๊ฐ’์ด ํฐ ์žฅ๋น„(default: 100)
  • RIP์˜ ์ฃผ์†Œ๊ฐ€ ํฐ ์žฅ๋น„

 

 

Master๊ฐ€ ์‚ด์•„์žˆ๋Š”์ง€ ์–ด๋–ป๊ฒŒ ์•Œ๊นŒ?

Master ์žฅ๋น„๊ฐ€ ์‚ด์•„์žˆ๋Š”์ง€ ์ฃฝ์—ˆ๋Š”์ง€ VRRP์—์„œ ํ™•์ธํ•˜๋Š” ๋ฐฉ๋ฒ•์€ ํ—ฌ์Šค ์ฒดํฌ์™€ ๊ฐ™์ด ๋ฐ˜๋ณต์ ์œผ๋กœ ํŒจํ‚ท์„ ๋ณด๋‚ด๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

 

  1. Master ์žฅ๋น„๋Š” VRRP Advertisement Packet์„ ๊ฐ€์ƒ ๊ทธ๋ฃน์— ๋ฐ˜๋ณต์ ์œผ๋กœ ์ „์†ก(advertisement-interval ์ฃผ๊ธฐ ๋ณดํ†ต 2์ดˆ) 
    • VRRP๋Š” Singel Virtual Router ๋ฐฉ์‹์œผ๋กœ ๋ฌผ๋ฆฌ ์ธํ„ฐํŽ˜์ด์Šค์— ์„ค์ •ํ•˜๊ฒŒ ๋˜์–ด ๊ฐ€์ƒ ๊ทธ๋ฃน์„ ํ•˜๋‚˜๋งŒ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋‹ค. (VLAN ์„ค์ • ์‹œ ์—ฌ๋Ÿฌ ๊ฐœ์˜ ๊ทธ๋ฃน ์ƒ์„ฑ ๊ฐ€๋Šฅ -> ๋” ์•Œ์•„๋ณผ ๋‚ด์šฉ)
  2. ๊ฐ€์ƒ ๊ทธ๋ฃน์— ์†ํ•œ Slave ์žฅ๋น„๋Š” ํ•ด๋‹น ํŒจํ‚ท์„ ๋ฐ›๋Š” ์ค‘์—๋Š” Master ์žฅ๋น„๊ฐ€ ์‚ด์•„์žˆ๋‹ค๊ณ  ํŒ๋‹จ(Standby ์ƒํƒœ๋ฅผ ์œ ์ง€)
  3. ํŒจํ‚ท์ด ์ˆ˜์‹ ๋˜์ง€ ์•Š์œผ๋ฉด ์ผ์ • ์‹œ๊ฐ„(Master Down Timer = Dead Timer) ํ›„์— Master๊ฐ€ ์ฃฝ์—ˆ๋‹ค๊ณ  ํŒ๋‹จ
  4. Slave์—์„œ๋Š” ์ž์‹ ์ด Master๊ฐ€ ๋˜์—ˆ์Œ์„ ์•Œ๋ฆฌ๊ธฐ ์œ„ํ•ด VRRP Advertisement Packet๊ณผ GARP Packet์„ ์ „์†ก
    • GARP๋Š” ์ž์‹ ์˜ IP์—๊ฒŒ ARP ์š”์ฒญ์„ ๋ณด๋‚ด๋Š” ๊ฒƒ์œผ๋กœ ๋™์ผ ์„œ๋ธŒ๋„ท ์ƒ์— ์กด์žฌํ•˜๋Š” ํ˜ธ์ŠคํŠธ/๋ผ์šฐํ„ฐ์˜ ARP table์„ ๊ฐฑ์‹ ํ•  ์ˆ˜ ์žˆ์Œ
      GARP๋ฅผ ์ˆ˜์‹ ํ•œ ๋…ธ๋“œ๋“ค์€ GARP๋ฅผ ์†ก์‹ ํ•œ IP์™€ MAC ์ฃผ์†Œ๋ฅผ ํ…Œ์ด๋ธ”์— ์ €์žฅํ•˜๊ฒŒ ๋จ
      ์—ฌ๊ธฐ์„œ๋Š” Slave์™€ ์—ฐ๊ฒฐ๋œ ์Šค์œ„์น˜๋‚˜ ๋ผ์šฐํ„ฐ๋กœ GARP ํŒจํ‚ท์„ ํ†ตํ•ด ARP table๋ฅผ ๊ฐฑ์‹ ํ•˜์—ฌ Slave ์žฅ๋น„๊ฐ€ VIP๋ฅผ ์†Œ์œ ํ•˜๊ฒŒ ๋˜์—ˆ์Œ์„ ์•Œ๋ฆด ์ˆ˜ ์žˆ์Œ

 

 

์ •๋ฆฌ

  • ์—ฌ๋Ÿฌ ๋Œ€(์ตœ์†Œ 2๋Œ€ ์ด์ƒ)์˜ Router๋ฅผ ํ•˜๋‚˜์˜ group์œผ๋กœ ๋ฌถ์–ด์„œ, Client๊ฐ€ ๋ฐ”๋ผ๋ณด๋Š” Gateway์— ๋Œ€ํ•œ IP Address๋ฅผ ๊ณต์œ ํ•˜๋Š” ๊ฒƒ
  • Priority๊ฐ€ ๋†’์€ Router๊ฐ€ ๋™์ž‘ํ•˜๋‹ค๊ฐ€ Router์— ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•˜๋ฉด ๊ทธ ๋‹ค์Œ Priority๋ฅผ ๊ฐ€์ง„ Router๊ฐ€ Active role๋ฅผ ๊ฐ€์ง€๊ณ  Gateway IP Address๋ฅผ ๋„˜๊ฒจ ๋ฐ›์•„ ๋™์ž‘
  • Client ์ž…์žฅ์—์„œ๋Š” Router์˜ ์žฅ์• ์™€ ๊ด€๊ณ„ ์—†์ด Gateway์˜ IP Address๋ฅผ ๋ณ€๊ฒฝํ•˜์ง€ ์•Š๊ณ  Data๋ฅผ ์ „๋‹ฌ

 

 

 

์ฐธ๊ณ  ์‚ฌ์ดํŠธ