หากพูดถึง VM (Virtual Machine) ผู้ใช้งานทั่วไปอาจจะไม่คุ้นหูมากนัก แต่ VM เรียกได้ว่าเป็นของคู่กันของนักพัฒนาซอฟต์แวร์ ผู้ดูแลระบบ รวมถึงองค์กรขนาดใหญ่ บทความนี้จะพาผู้อ่านไปทำความเข้าใจเกี่ยวกับ Virtual Machine ว่า คือ อะไร มีหลักการทำงานอย่างไร และทำไมต้องใช้ Virtual Machine
VM คือ อะไร
Virtual Machine (VM) คือ การจำลองอุปกรณ์คอมพิวเตอร์ขึ้นมา เสมือนว่าคุณมีคอมพิวเตอร์ในคอมพิวเตอร์อีกที ในจำลองนี้ จำลองลึกลงไปถึงระบบปฏิบัติการ ทรัพยากรหลักที่จำเป็น เช่น CPU, RAM และ Storage จะถูกจัดสรรให้กับอุปกรณ์ที่ถูกจำลองขึ้นมา แต่ยังคงใช้งานบนอุปกรณ์เดียวกัน
มีหลักการทำงานยังไง
สำหรับหลักการทำงานนั้นก็ค่อนข้างเรียบง่าย มีสิ่งที่จำเป็นต้องเตรียม 2 ส่วน คือ
- เครื่องหลักที่จะใช้เป็นโฮสต์ 1 เครื่อง (Physical Hardware) โฮสต์จำเป็นต้องมีทรัพยากรในเครื่อง (CPU, RAM, Storage และ Network card) และติดตั้งระบบปฏิบัติการ (OS) ให้เรียบร้อย
- ซอฟต์แวร์สำหรับจัดสรรทรัพยากรจากโฮสต์ สร้าง และควบคุมการจำลองอุปกรณ์คอมพิวเตอร์ (Hypervisor) ซ่อนการทำงานของระบบปฏิบัติการของโฮสต์ไว้เบื้องหลัง เพื่อให้ VM เข้าใจว่าตัวเองเป็นคอมพิวเตอร์ 1 เครื่องจริง ๆ เช่น VirtualBox, VMware, Microsoft Hyper-V และอื่น ๆ อีกมากมาย เพื่อทำหน้าที่รัน Guest OS บน Hypervisor
VM มีกี่ชนิด มีอะไรบ้าง
Virtual Machine (VM) สามารถจำแนกได้หลายแบบ ในบทความนี้จะแบ่งตามวัตถุประสงค์การใช้งาน ซึ่งสามารถแบ่งได้เป็น 2 แบบ คือ System Virtual Machine และ Process Virtual Machine
System Virtual Machine
System Virtual Machine เป็นการจำลองทั้งระบบที่สามารถรัน Guest OS ให้เสมือนคอมพิวเตอร์อีก 1 เครื่อง ซึ่งแยกออกจากเครื่องหลัก (Host) ซึ่งกิจกรรมใด ๆ ที่เกิดขึ้นบน System Virtual Machine จะไม่ส่งผลกระทบต่อโฮสต์หลักโดยสิ้นเชิง มักใช้เพื่อการทดสอบเครือข่าย ทดสอบการโจมตี และบริหารจัดการระบบในองค์กร
Process Virtual Machine
Process Virtual Machine เป็นการจำลองเฉพาะ Program ไม่ได้จำลองทั้งระบบ ไม่จำเป็นต้องมี Guest OS แต่ยังคงเบ่งทรัพยากรมาจากเครื่องเพื่อจำลองขึ้นมา Process VM เป็นการจำลองสภาพแวดล้อมที่จำเป็นสำหรับการรันโปรแกรมเท่านั้น ออกแบบมาเพื่อใช้ในการทดสอบการทำงานของซอฟต์แวร์ในสภาพแวดล้อมที่ถูกจำลองขึ้น (Sandbox) ทำให้ง่ายต่อการจัดการจากเกิดข้อผิดพลาดใดๆ ที่เกิดจากการทดสอบ ความเสียหาย และข้อผิดพลาดที่เกิดขึ้นจากการทดสอบบน
Sandbox จะไม่ส่งผลกระทบใด ๆ ต่ออุปกรณ์หลัก เช่น Windows Sandbox (มีเฉพาะ Windows 10/11 เวอร์ชัน Pro หรือ Enterprise เท่านั้น), Java VM, .NET Command Language Runtime และ Node.js Runtime เป็นต้น
ประโยชน์และข้อดีของ VM
การใช้งาน Virtual Machine (VM) สำหรับบุคคลทั่วไปแล้ว อาจไม่มีความจำเป็นมากนัก แต่สำหรับนักพัฒนาซอฟต์แวร์ และผู้ดูแลระบบเครือข่าย VM คือ สิ่งที่มีความจำเป็น และมีประโยชน์หลายอย่าง เช่น ประหยัดค่าใช้จ่าย, ง่ายต่อการ Deploy งาน, มีความปลอดภัยสูง, Snapshot และ Rollback ได้ง่าย
ประหยัดค่าใช้จ่าย
อย่างที่ทราบกันแล้วว่า Virtual Machine คือ การจำลองอุปกรณ์คอมพิวเตอร์ ซึ่งการใช้ VM ในการจำลองขึ้นมาทำให้ประหยัดค่าใช้จ่ายได้ เพราะหากอยากทดลองใช้ OS อื่น ๆ เช่น เครื่องโฮสต์ใช้ Windows แต่ต้องการใช้ Ubuntu เพื่อทำหน้าที่ที่ต่างกันก็ไม่จำเป็นต้องซื้อคอมพิวเตอร์ใหม่ แต่สามารถใช้ VM ในการจำลอง OS ขึ้นมาบนอุปกรณ์เครื่องเดียวกัน
ง่ายต่อการ Deploy และทดสอบ
สำหรับ Developer, Tester และ DevOps ที่ต้องพัฒนา และทดสอบโปรแกรมก่อนส่งมอบ ต้องมีการทดสอบความเข้ากันของโปรแกรมกับ OS หลากหลายเวอร์ชัน เช่น การทดสอบโปรแกรม X บนระบบปฏิบัติการ A และ B การทดสอบบนเครื่องจริงมีข้อจำกัด คือ ต้องใช้อุปกรณ์มากกว่า 1 เครื่อง ทำให้เป็นการยาก และสิ้นเปลืองโดยใช่เหตุ หากใช้ VM ก็สามารถทดสอบโปรแกรม X บนระบบปฏิบัติการ A และ B ได้ในเครื่องเดียว
มีความปลอดภัยสูง
VM แต่ละตัวทำงานแยกจากกันโดยสมบูรณ์ ทำให้การทดลองใด ๆ ที่มีความเสี่ยงบน VM หนึ่ง จะไม่ส่งผลกระทบต่อ VM หนึ่ง แม้ว่า VM ตัวหนึ่งติดมัลแวร์ หรือไวรัส แต่ VM ตัวอื่น ๆ รวมถึงโฮสต์หลักจะไม่ถูกโจมตีด้วย และลด Downtime ในการดูแลระบบได้โดยการย้าย VM ไปยัง Host อื่นเมื่อต้องมีการ Maintain โฮสต์หลัก (เรียกกระบวนการนี้ว่า Live Migration) ทำให้ระบบสามารถทำงานได้อย่างต่อเนื่อง
Snapshot และ Rollback ได้ง่าย
ในการใช้งาน VM 1 ในฟีเจอร์ที่โดดเด่น คือ เรื่อง Snapshot & Rollback ทำให้สามารถลดความเสี่ยงที่จะเกิดกับระบบได้ ก่อนที่จะทำการทดสอบ อัปเดต หรือการทำกิจกรรมใด ๆ ก็ตาม ที่อาจส่งผลต่อระบบให้เกิดปัญหาหรือเสียหาย
หากผู้ใช้ได้ทำการบันทึกสถานะปัจจุบันไว้ (Snapshot) เมื่อเกิดข้อผิดพลาดใดขึ้นหลังจากทำการทดสอบผู้ใช้สามารถย้อนกลับไปยังสถานะที่บันทึกไว้ได้ (Rollback) เพื่อป้องกันระบบใช้งานไม่ได้หรือเสียหายหลังการทดสอบ
ข้อจำกัด และข้อควรระวังในการใช้ VM
แม้จะบอกว่า Virtual Machine (VM) มีประโยชน์มากมาย แต่ก็มีข้อจำกัดด้วยเช่นกัน เพราะต้องมีการจัดสรรทรัพยากรจากโฮสต์ให้กับ VM ผู้ใช้งานจึงจำเป็นต้องมีความรู้ ความเข้าใจเกี่ยวกับการจัดการทรัพยากรคอมพิวเตอร์ และถึงแม้ว่า VM ล่มจะไม่ส่งผลใด ๆ กับโอสต์ แต่หากโฮสต์ล่มนั้นส่งผลโดยตรงกับ VM ทำให้ VM ทุกตัวที่อยู่ในโฮสต์เดียวกันหยุดทำงานตามไปด้วย
ปัญหาจาก Host ส่งผลต่อ VM
หากอุปกรณ์ไม่ได้มีประสิทธิภาพเท่าที่ควร ทำให้เมื่อจัดสรรทรัพยากรให้กับ VM แล้ว โฮสต์คงเหลือทรัพยากรไม่เพียงพอต่อการจัดการงาน หรือโฮสต์โดนมัลแวร์จนทำให้โฮสต์หยุดทำงาน ส่งผลให้ VM หยุดทำงานตามไปด้วย
สิ้นเปลืองทรัพยากร
อย่างที่ทราบกันดีว่าการใช้งาน VM จำเป็นต้องแบ่งทรัพยากรจากโฮสต์ (CPU, RAM, Storage, Network card) เพื่อจำลองขึ้นมา แน่นอนว่าส่งผลเครื่องโฮสต์ไม่สามารถใช้งานทรัพยากรได้เต็มที่ ทำให้ประสิทธิภาพโดยรวมลดน้อยลง
มือใหม่ใช้ยาก
สำหรับมือใหม่ หรือผู้ใช้งานทั่วไปที่ไม่ได้มีความรู้ในเรื่องการจัดการทรัพยากรคอมพิวเตอร์ แน่นอนว่าเป็นเรื่องยากเมื่อต้องกำหนดค่าใด ๆ ด้วยตนเอง และไม่มีความจำเป็นสำหรับผู้ใช้ทั่วไป เพราะนอกจากจะไม่เกิดประโยชน์อะไรในการใช้งานแล้ว ยังทำให้เครื่องโฮสต์หลักทำงานช้าลง
ตัวอย่าง Software ที่ใช้สร้าง VM
Software ที่นิยมใช้สำหรับสร้าง และจัดการ VM ในท้องตลาดมีด้วยกันหลายตัว แต่ตัวที่นิยมมีด้วยกัน 4 ตัว คือ VMware ESXi (สำหรับ Server), Microsoft Hyper-V (สำหรับ Server), VirtualBox (สำหรับ Desktop) และ VMware Workstation/Pro (สำหรับ Desktop)
VMware ESXi
VMware ESXi เป็น Hypervisor Type 1: Bare Metal (รันบนฮาร์ดแวร์โดยตรง) VMware Elastic Sky X integrated (VMware ESXi) ใช้สำหรับสร้าง และจัดการ VM บนเซิร์ฟเวอร์ จำเป็นต้องซื้อ License vSphere และ vCenter สามารถรัน OS ได้หลากหลาย มีความยืดหยุ่นด้านการใช้งานมากกว่า Microsoft Hyper-V
Microsoft Hyper-V
Microsoft Hyper-V เป็น Hypervisor Type 1: Bare Metal (รันบนฮาร์ดแวร์โดยตรง) ใช้สำหรับสร้าง และจัดการ VM บนเซิร์ฟเวอร์ เช่นเดียวกันกับ VMware ESXi ซึ่ง Microsoft Hyper-V มีอยู่ใน Windows Server อยู่แล้ว รองรับระบบปฏิบัติการ Windows และ Linux ไม่รองรับ macOS เหมาะสำหรับองค์กรที่ใช้งาน Microsoft เป็นหลัก
VirtualBox
VirtualBox เป็น Hypervisor Type 2: Hosted (รันบนระบบปฏิบัติการของโฮสต์) VirtualBox เป็น VM ที่เป็น Open Source คือ เปิดให้ดาวน์โหลด และใช้งานได้ฟรี เหมาะสำหรับผู้เริ่มต้น เพราะมีอินเตอร์เฟซที่เรียบง่าย ไม่ซับซ้อน แต่มีเพียงฟีเจอร์พื้นฐานเท่านั้น เหมาะสำหรับนักศึกษา หรือธุรกิจขนาดเล็ก
VMware Workstation Player/Pro
VMware Workstation Player/Pro เป็น Hypervisor Type 2: Hosted (รันบนระบบปฏิบัติการของโฮสต์) VMware Workstation Player สามารถใช้งานได้ฟรี สำหรับการใช้งานส่วนตัว/การศึกษา และ VMware Workstation Pro (Windows/Linux), VMware Fusion (macOS) ต้องซื้อ License เพื่อใช้งาน มีฟีเจอร์ครบครัน เหมาะสำหรับมืออาชีพ
Add In Business
จำหน่าย
อุปกรณ์ไอที
ราคาถูก
ภายใต้บริษัท แอด อิน บิซิเนส จำกัด ตัวแทนจำหน่าย
ได้รับการแต่งตั้งโดยตรงจากแบรนด์ชั้นนำ
ราคา พิเศษ ส่งฟรี
สนใจสั่งซื้อหรือสอบถามรายละเอียดเพิ่มเติม สามารถติดต่อได้ที่หน้า Contact
หรือ
สรุป VM คือ อะไร
Virtual Machine (VM) คือ การจำลองคอมพิวเตอร์ขึ้นมา โดยอาศัยทรัพยากรจากเครื่องหลักเพื่อรัน VM ให้เสมือนว่ามี “คอมพิวเตอร์ที่อยู่ในคอมพิวเตอร์อีกที” โดยมี Hypervisor ที่ทำหน้าที่เป็นตัวแบ่งการทำงาน VM แต่ละตัวออกจากกันโดยสิ้นเชิง หาก VM ตัวใดตัวหนึ่งล่ม จะไม่ส่งผลต่อ Host และ VM ตัวอื่น ๆ การใช้งาน VM เหมาะสำหรับองค์กร ผู้ดูแลระบบ ผู้ทดสอบ และนักพัฒนาซอฟต์แวร์
Facebook Inbox : https://goo.gl/9wo8oL
Hotline : 063-819-7299
โทร : 02-713-2261
Line@ : @addinonline
Email : [email protected]
ผู้เขียน
Sasithorn Sri.
จากเด็กวิทย์-คอม ที่คลุกคลีอยู่ในวงการไอที อยากบอกเล่าการเปลี่ยนแปลงของเทคโนโลยีที่ไม่เคยหยุดนิ่ง






