0002 | DNS Round Robin
ระบบ DNS นี้มีลูกเล่นอย่างนึงครับ
server admin ส่วนใหญ่น่าจะรู้จักกันดีในฐานะของผู้ช่วย load balancer
คือช่วยกระจายงานออกไปตามเครื่องต่างๆ
หลักการมันง่ายๆ ครับ
แค่ชี้ Domain เดียวกันไปที่มากกว่า 1 IP ในกรณีของ IP (A) record นะ
แล้วที่เหลือก็ปล่อยเป็นหน้าที่ของเครื่องที่ค้นหา IP แล้วละครับว่าจะแจก IP ไหนให้
ซึ่งโดยมากก็จะเป็นแบบหมุนเวียน (round-robin) คือ
การสอบถามครั้งที่ 1 แจก IP ที่ 1 ให้
การสอบถามครั้งที่ 2 แจก IP ที่ 2 ให้
การสอบถามครั้งที่ 3 กลับมาแจก IP ที่ 1 อีกรอบ (กรณีมีแค่ 2 IP)
ตัวอย่างการตั้งค่าครับ ที่ใช้อยู่ปัจจุบัน
ข้อดีของระบบ DNS Round Robin นี้
- ตั้งค่าง่ายมาก เพราะ DNS Server ส่วนมากในปัจจุบันรองรับอยู่แล้ว
- (ในระบบแบบพื้นฐาน) ไม่ต้องมีการติดตั้งอุปกรณ์ใดๆ เพิ่มเติม แม้แต่ชิ้นเดียว
- ช่วย network redundant ได้นิดหน่อย คือถ้าล่ม 1 IP, ที่เหลือก็ยังสามารถทำงานได้
แต่ในขณะเดียวกัน ข้อเสียใหญ่ที่สุด ที่เกิดขึ้นมาเพราะอยู่ในระบบ DNS เลยครับ
” มันติด cache ”
ทำให้เราไม่สามารถคาดคะเนผลลัพท์ได้เลยว่า เครื่องลูกข่ายจะสอบถามแล้วได้ IP อะไรตอบกลับไป
ทำให้ไม่สามารถควบคุมการเข้าถึง server ได้เลยว่า จะให้เน้นไปที่ server เครื่องไหน
ดังนั้น เครื่องที่จะทำ DNS-RR นี่ก็เลยควรจะเป็นเครื่องที่ spec ใกล้เคียงกันทั้งหมดครับ
ไม่เช่นนั้นจะเกิดเหตุการแบบนี้ครับ
server 1: CPU Xeon (p4) 3.0 GHz HyperThreading — load average: 2x.xx, 2x.xx, 1x.xx
server 2: CPU Xeon X3210 QuadCore 2.13GHz — load average: 3.xx, 2.xx, 2.xx
ผลปรากฎว่า คนไหนที่เข้าไปโผล่เครื่อง server 1 อืดจนแทบทำอะไรไม่ได้เลย T_T
ชีวิตมันน่าเศร้า
Tags: dns, IP Network, load balance
[…] http://www.icez.net/blog/5/dns-round-robin (ภาษาไทย) […]