Virtual Machine (VM) คือซอฟต์แวร์ที่จำลองเครื่องคอมพิวเตอร์เสมือนขึ้นมาบนเครื่องจริง โดยใช้ทรัพยากร CPU, RAM และ Disk ของเครื่อง Host ในการสร้างเครื่อง Guest ที่สามารถติดตั้งระบบปฏิบัติการและรันแอปพลิเคชันได้เหมือนเครื่องจริงทุกประการ ช่วยให้องค์กรลดจำนวนเซิร์ฟเวอร์ ประหยัดพลังงาน และจัดสรรทรัพยากรได้อย่างคุ้มค่า
Virtual Machine คืออะไร
Virtual Machine หรือ VM คือซอฟต์แวร์ที่ใช้ทรัพยากรของเครื่องคอมพิวเตอร์ในการจำลองเครื่องคอมพิวเตอร์เสมือน เครื่องที่ถูกใช้ทรัพยากรเรียกว่า Host และเครื่องเสมือนเรียกว่า Guest โดยเครื่อง Guest สามารถติดตั้งระบบปฏิบัติการที่แตกต่างจาก Host ได้ เช่น Host ใช้ Windows แต่ Guest ติดตั้ง Linux
นอกจากนี้ยังสามารถสร้าง Guest ได้หลายเครื่องบน Host เดียวกัน ทำให้เซิร์ฟเวอร์หนึ่งเครื่องสามารถรันงานหลายอย่างพร้อมกันได้อย่างมีประสิทธิภาพ
ประเภทของ Hypervisor
Hypervisor คือซอฟต์แวร์ที่ทำหน้าที่สร้างและจัดการ Virtual Machine มีสองประเภทหลัก
Type-1 Hypervisor (Bare Metal)
Type-1 Hypervisor ติดตั้งบนฮาร์ดแวร์โดยตรง ไม่ต้องมีระบบปฏิบัติการรองรับ ทำให้ได้ประสิทธิภาพสูงสุด ตัวอย่างที่รู้จักกันดี ได้แก่ VMware ESXi, Microsoft Hyper-V, KVM และ Nutanix AHV ส่วนใหญ่ใช้ในระดับองค์กรและ Data Center
Type-2 Hypervisor (Hosted)
Type-2 Hypervisor ต้องติดตั้งบนระบบปฏิบัติการที่มีอยู่แล้ว เช่น VMware Workstation บน Windows หรือ VirtualBox บน macOS เหมาะสำหรับนักพัฒนาและผู้ใช้ทั่วไปที่ต้องการทดสอบระบบปฏิบัติการหลายตัวบนเครื่องส่วนตัว
ส่วนประกอบของ Virtual Machine
Virtual Machine ประกอบด้วยส่วนสำคัญหลายอย่าง ได้แก่ Guest OS ซึ่งเป็นระบบปฏิบัติการที่ติดตั้งบน VM, Virtual Hardware ที่จำลอง CPU, RAM, Disk และ Network Adapter ให้กับ VM รวมถึง Binary และ Library ที่จำเป็นสำหรับรันแอปพลิเคชัน
VM แต่ละตัวมีสภาพแวดล้อมที่แยกออกจากกันอย่างสมบูรณ์ ทำให้ปัญหาที่เกิดขึ้นใน VM หนึ่งจะไม่ส่งผลกระทบต่อ VM อื่นหรือ Host
ข้อดีของการใช้ Virtual Machine
ลดจำนวนเซิร์ฟเวอร์และค่าใช้จ่าย
แทนที่จะซื้อเซิร์ฟเวอร์แยกสำหรับแต่ละงาน สามารถรัน VM หลายตัวบนเซิร์ฟเวอร์เดียว ลดต้นทุนฮาร์ดแวร์ ค่าไฟ และพื้นที่ Data Center
ความยืดหยุ่นในการจัดสรรทรัพยากร
สามารถเพิ่มหรือลด CPU, RAM และ Disk ให้กับ VM แต่ละตัวได้ตามความต้องการ ทำให้จัดสรรทรัพยากรได้อย่างคุ้มค่า
ง่ายในการสำรองข้อมูลและกู้คืน
VM สามารถทำ Snapshot เพื่อบันทึกสถานะทั้งหมด ณ จุดเวลาใดเวลาหนึ่ง หากเกิดปัญหาสามารถ Restore กลับได้ทันที
การแยกสภาพแวดล้อม
แต่ละ VM มีสภาพแวดล้อมที่แยกจากกัน เหมาะสำหรับการทดสอบซอฟต์แวร์ การรัน Legacy Application หรือการสร้าง Development Environment ที่ไม่กระทบกับ Production
Virtual Machine กับ Container ต่างกันอย่างไร
VM จำลองฮาร์ดแวร์ทั้งหมดรวมถึงระบบปฏิบัติการ ส่วน Container อย่าง Docker แชร์ Kernel ของ Host ทำให้ Container เบากว่าและเริ่มต้นเร็วกว่า แต่ VM ให้ Isolation ที่สมบูรณ์กว่า
ในทางปฏิบัติ หลายองค์กรใช้ทั้งสองร่วมกัน โดยรัน Container บน VM เพื่อได้ทั้งความปลอดภัยจาก VM และความคล่องตัวจาก Container
Virtual Machine กับ Cloud Computing
Cloud Computing ใช้ Virtualization Technology เป็นพื้นฐาน ผู้ให้บริการ Cloud วางเซิร์ฟเวอร์จำนวนมากเพื่อสร้าง VM ให้ลูกค้าเช่าใช้ ผู้ใช้สามารถกำหนดทรัพยากรที่ต้องการและเข้าถึง VM ได้จากทุกที่ผ่านอินเทอร์เน็ต
บริการ VPS จาก DriteStudio คือตัวอย่างของ Virtual Machine ที่ให้บริการบน Cloud ผู้ใช้ได้ VM ที่มีทรัพยากรเฉพาะ ไม่ต้องแชร์กับใคร พร้อมสิทธิ์ Root Access เต็มรูปแบบ
การเลือก VM ให้เหมาะกับงาน
สำหรับนักพัฒนาที่ต้องการทดสอบ การใช้ Type-2 Hypervisor อย่าง VirtualBox หรือ VMware Workstation บนเครื่องส่วนตัวก็เพียงพอ
สำหรับองค์กรที่ต้องการรัน Production สามารถเลือกใช้ Dedicated Server ที่ติดตั้ง Hypervisor อย่าง VMware ESXi หรือ KVM หรือเช่า VPS ที่พร้อมใช้งานทันทีโดยไม่ต้องจัดการฮาร์ดแวร์เอง
คำถามที่พบบ่อย
VM กับ VPS ต่างกันอย่างไร
VPS (Virtual Private Server) คือ VM ที่ให้บริการเป็น Service โดยผู้ให้บริการ Cloud ผู้ใช้ไม่ต้องจัดการฮาร์ดแวร์เอง ส่วน VM เป็นคำทั่วไปที่หมายถึงเครื่องเสมือนที่สร้างขึ้นจาก Hypervisor ไม่ว่าจะเป็นบน Cloud หรือบนเครื่องส่วนตัว
VM ช้ากว่าเครื่องจริงหรือไม่
VM มี Overhead เล็กน้อยจากการจำลอง แต่ Type-1 Hypervisor สมัยใหม่ให้ประสิทธิภาพใกล้เคียงเครื่องจริงมาก โดยเฉพาะกับงานที่ใช้ CPU และ RAM เป็นหลัก
สร้าง VM ได้กี่เครื่องบน Host หนึ่งเครื่อง
ขึ้นอยู่กับทรัพยากรของ Host เช่น เซิร์ฟเวอร์ที่มี 64 Core CPU และ 256 GB RAM อาจสร้าง VM ได้หลายสิบเครื่อง ขึ้นอยู่กับสเปคที่จัดสรรให้แต่ละ VM
VM เหมาะกับงานอะไรบ้าง
VM เหมาะกับการรันเซิร์ฟเวอร์ การทดสอบซอฟต์แวร์ การสร้าง Development Environment การรัน Legacy Application และการแยก Workload ที่ต้องการ Isolation สูง
เริ่มต้นใช้ Virtual Machine กับ DriteStudio
หากคุณต้องการ Virtual Machine ที่พร้อมใช้งานทันที DriteStudio มีบริการ VPS ที่ให้ VM พร้อมทรัพยากรเฉพาะ รองรับทั้ง Linux และ Windows สำหรับองค์กรที่ต้องการเซิร์ฟเวอร์สำหรับรัน Hypervisor เอง Dedicated Server พร้อมระบบรักษาความปลอดภัยที่ครอบคลุม ติดต่อทีมงานเพื่อรับคำปรึกษา