ลองนึกภาพว่าบริษัทของคุณมีเซิร์ฟเวอร์ 5 เครื่อง เครื่องหนึ่งรันระบบบัญชี เครื่องหนึ่งเป็นไฟล์เซิร์ฟเวอร์ อีกเครื่องรันเว็บไซต์ภายใน แต่ละเครื่องใช้กำลังประมวลผลจริงแค่ 10-20% ของที่มี ที่เหลือคือเงินลงทุนที่นอนเฉย ๆ พร้อมค่าไฟและค่าดูแลที่จ่ายเต็ม นี่คือปัญหาที่ Virtualization เกิดมาเพื่อแก้

Virtualization ทำงานอย่างไร

Virtualization คือเทคโนโลยีที่ทำให้เครื่องเซิร์ฟเวอร์กายภาพ 1 เครื่อง สามารถรัน "เครื่องเสมือน" (Virtual Machine หรือ VM) ได้หลายเครื่องพร้อมกัน แต่ละ VM ทำงานเป็นอิสระต่อกัน มีระบบปฏิบัติการของตัวเอง เสมือนเป็นคนละเครื่องจริง ๆ โดยมีซอฟต์แวร์ตัวกลางที่เรียกว่า Hypervisor (เช่น VMware vSphere, Microsoft Hyper-V, Proxmox) คอยจัดสรรทรัพยากรให้แต่ละ VM

ผลคือจากเซิร์ฟเวอร์ 5 เครื่องที่ใช้งานไม่เต็มประสิทธิภาพ อาจยุบเหลือเครื่องแรง ๆ เพียง 2 เครื่องที่รัน VM ทั้ง 5 ตัว โดยแต่ละระบบยังแยกจากกันเหมือนเดิม

ประโยชน์ที่ธุรกิจได้จริง

ลดต้นทุนฮาร์ดแวร์และค่าไฟ — ซื้อเครื่องน้อยลง ใช้แต่ละเครื่องคุ้มขึ้น ค่าไฟและพื้นที่ห้องเซิร์ฟเวอร์ลดตาม

กู้คืนระบบเร็วขึ้นมาก — VM คือไฟล์ชุดหนึ่ง จึงสำรองและย้ายได้ง่ายกว่าเครื่องกายภาพหลายเท่า ถ้าฮาร์ดแวร์พัง สามารถย้าย VM ไปรันเครื่องอื่นได้ในเวลาอันสั้น แทนที่จะต้องลงระบบใหม่ทั้งเครื่องซึ่งอาจใช้เวลาเป็นวัน

ทดสอบอะไรก็ได้โดยไม่กระทบระบบจริง — อยากทดลองอัปเกรดซอฟต์แวร์ ก็โคลน VM ขึ้นมาทดสอบก่อน พังก็ลบทิ้ง ไม่กระทบใคร

ขยายระบบได้ตามโต — ต้องการเซิร์ฟเวอร์ใหม่ ไม่ต้องรอสั่งซื้อเครื่อง สร้าง VM ใหม่ได้ในไม่กี่นาที ตราบใดที่ทรัพยากรรวมยังพอ

เมื่อไหร่ที่ธุรกิจควรเริ่มคิดเรื่องนี้

สัญญาณที่ชัดที่สุดคือ เซิร์ฟเวอร์เดิมใกล้หมดอายุและกำลังจะต้องซื้อเครื่องใหม่ นั่นคือจังหวะที่ดีที่สุดในการเปลี่ยนมาใช้ Virtualization เพราะแทนที่จะซื้อเครื่องแทนของเดิมแบบหนึ่งต่อหนึ่ง สามารถวางระบบใหม่ที่รวมทุกอย่างไว้บนคลัสเตอร์เดียวได้เลย สัญญาณอื่น ๆ เช่น มีเซิร์ฟเวอร์เกิน 2-3 เครื่อง เคยเจอเหตุการณ์เครื่องพังแล้วระบบหยุดนาน หรือทีมอยากมีสภาพแวดล้อมทดสอบแยกจากระบบจริง

ข้อควรระวัง

Virtualization ไม่ใช่ยาวิเศษ การรวมทุกระบบไว้บนเครื่องน้อยลงแปลว่าถ้าเครื่องเดียวพังจะกระทบหลายระบบพร้อมกัน จึงต้องออกแบบเผื่อ High Availability (มีเครื่องสำรองรับช่วงต่ออัตโนมัติ) และมีระบบสำรองข้อมูลที่ทดสอบกู้คืนได้จริงเสมอ นี่คือเหตุผลว่าทำไมการวางระบบ Virtualization ที่ดีจึงควรออกแบบทั้งคลัสเตอร์ ไม่ใช่แค่ลง Hypervisor บนเครื่องเดียวแล้วจบ