เครื่องเสมือนคืออะไร? (ทำไมและเมื่อใดจึงควรใช้)

  • แบ่งปันสิ่งนี้
Cathy Daniels

หากคุณทำงานในหรือรอบๆ อุตสาหกรรมซอฟต์แวร์ คุณอาจเคยได้ยินเกี่ยวกับเครื่องเสมือน ถ้าไม่ คุณอาจสงสัยว่ามันคืออะไรและใช้ทำอะไร

ในฐานะวิศวกรซอฟต์แวร์ ฉันใช้เครื่องเสมือนทุกวัน เป็นเครื่องมือที่มีศักยภาพในการพัฒนาซอฟต์แวร์ แต่ก็มีประโยชน์อื่นๆ เช่นกัน หรือที่เรียกว่า VM ธุรกิจจำนวนมากใช้เพราะความยืดหยุ่น ความน่าเชื่อถือ และความคุ้มค่า พวกเขายังป้องกันภัยพิบัติจากการทดสอบซอฟต์แวร์ที่หลบหนี

มาดูกันว่าเครื่องเสมือนคืออะไรและทำไมจึงใช้

เครื่องเสมือนคืออะไร

เครื่องเสมือนคือตัวอย่างของระบบปฏิบัติการ (OS) เช่น Windows, Mac OS หรือ Linux ที่ทำงานภายในระบบปฏิบัติการหลักของคอมพิวเตอร์

โดยปกติแล้วจะทำงานในหน้าต่างแอปบนเดสก์ท็อปของคุณ เครื่องเสมือนมีฟังก์ชันการทำงานเต็มรูปแบบและทำหน้าที่เหมือนคอมพิวเตอร์หรือเครื่องแยกต่างหาก โดยพื้นฐานแล้ว เครื่องเสมือนคือคอมพิวเตอร์เสมือนที่ทำงานภายในคอมพิวเตอร์เครื่องอื่นที่เรียกว่าเครื่องโฮสต์

ภาพที่ 1: เครื่องเสมือนที่ทำงานบนแล็ปท็อป

เครื่องเสมือนไม่ได้ ไม่มีฮาร์ดแวร์ (หน่วยความจำ ฮาร์ดไดรฟ์ แป้นพิมพ์ หรือจอภาพ) ใช้ฮาร์ดแวร์จำลองจากเครื่องโฮสต์ ด้วยเหตุนี้ VM หลายเครื่องหรือที่เรียกว่า "ผู้เยี่ยมชม" จึงสามารถทำงานบนเครื่องโฮสต์เครื่องเดียวได้

ภาพที่ 2: เครื่องโฮสต์ที่ใช้งาน VM หลายเครื่อง

โฮสต์ ยังสามารถเรียกใช้ VM หลายเครื่องด้วยการทำงานที่แตกต่างกันทั้งระบบ Linux, Mac OS และ Windows ความสามารถนี้ขึ้นอยู่กับซอฟต์แวร์ที่เรียกว่าไฮเปอร์ไวเซอร์ (ดูภาพที่ 1 ด้านบน) ไฮเปอร์ไวเซอร์ทำงานบนเครื่องโฮสต์และอนุญาตให้คุณสร้าง กำหนดค่า รัน และจัดการเครื่องเสมือน

ไฮเปอร์ไวเซอร์จะจัดสรรพื้นที่ดิสก์ กำหนดเวลาการประมวลผล และจัดการการใช้หน่วยความจำสำหรับแต่ละ VM นี่คือสิ่งที่แอปพลิเคชันอย่าง Oracle VirtualBox, VMware, Parallels, Xen, Microsoft Hyper-V และอื่นๆ อีกมากมายทำ: เป็นไฮเปอร์ไวเซอร์

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

เครื่องเสมือนและสภาพแวดล้อมประเภทต่างๆ ต้องการไฮเปอร์ไวเซอร์ประเภทต่างๆ ลองมาดูบางส่วนกัน

ประเภทของ Virtual Machines

System Virtual Machines

System VMs ซึ่งบางครั้งเรียกว่า virtualization เต็มรูปแบบ ถูกเรียกใช้โดยไฮเปอร์ไวเซอร์และจัดเตรียม การทำงานของระบบคอมพิวเตอร์จริง พวกเขาใช้ระบบปฏิบัติการเนทีฟของโฮสต์เพื่อจัดการและแบ่งปันทรัพยากรระบบ

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

ประมวลผลเสมือนเครื่อง

ประมวลผลเครื่องเสมือนค่อนข้างแตกต่างจาก SVM—คุณอาจให้เครื่องทำงานบนเครื่องของคุณและไม่รู้ด้วยซ้ำ พวกเขาเรียกอีกอย่างว่าเครื่องเสมือนของแอปพลิเคชันหรือสภาพแวดล้อมรันไทม์ที่มีการจัดการ (MREs) เครื่องเสมือนเหล่านี้ทำงานภายในระบบปฏิบัติการโฮสต์และสนับสนุนแอปพลิเคชันหรือกระบวนการของระบบ

ทำไมจึงต้องใช้ PVM พวกเขาให้บริการโดยไม่ต้องพึ่งพาระบบปฏิบัติการหรือฮาร์ดแวร์เฉพาะ พวกเขามีระบบปฏิบัติการเล็ก ๆ ของตัวเองพร้อมทรัพยากรที่จำเป็นเท่านั้น MRE อยู่ในสภาพแวดล้อมที่แยกจากกัน ไม่สำคัญว่าจะทำงานบน Windows, Mac OS, Linux หรือเครื่องโฮสต์อื่นๆ

หนึ่งใน Process Virtual Machines ที่พบมากที่สุดคือเครื่องที่คุณเคยได้ยินและอาจเคยเห็นว่าทำงานบน คอมพิวเตอร์ของคุณ. มันถูกใช้เพื่อเรียกใช้แอปพลิเคชัน Java และเรียกสั้นๆ ว่า Java Virtual Machine หรือ JVM

ประเภทของไฮเปอร์ไวเซอร์

เครื่องเสมือนส่วนใหญ่ที่เราสนใจใช้ไฮเปอร์ไวเซอร์เพราะเลียนแบบ ระบบคอมพิวเตอร์ทั้งหมด ไฮเปอร์ไวเซอร์มีอยู่สองประเภท: Bare Metal Hypervisors และ Hosted Hypervisors มาดูทั้งสองอย่างรวดเร็ว

Bare Metal Hypervisor

BMHs อาจเรียกอีกอย่างว่าเนทีฟไฮเปอร์ไวเซอร์ และจะทำงานโดยตรงบนฮาร์ดแวร์ของโฮสต์แทนที่จะทำงานภายในระบบปฏิบัติการของโฮสต์ อันที่จริงแล้วพวกมันเข้ามาแทนที่ระบบปฏิบัติการของโฮสต์ การตั้งเวลา และการจัดการการใช้ฮาร์ดแวร์โดยเครื่องเสมือนแต่ละเครื่อง ดังนั้นจึงตัด "คนกลาง" (ระบบปฏิบัติการของโฮสต์) ในกระบวนการออก

ไฮเปอร์ไวเซอร์แบบเนทีฟมักใช้สำหรับ VM ขององค์กรขนาดใหญ่ ซึ่งบริษัทต่างๆ ใช้เพื่อจัดหาพนักงานด้วย ทรัพยากรเซิร์ฟเวอร์ Microsoft Azure หรือ Amazon Web Services เป็น VM ที่โฮสต์บนสถาปัตยกรรมประเภทนี้ ตัวอย่างอื่นๆ ได้แก่ KVM, Microsoft Hyper-V และ VMware vSphere

Hosted Hypervisor

Hosted Hypervisor ทำงานบนระบบปฏิบัติการมาตรฐาน เช่นเดียวกับแอปพลิเคชันอื่นๆ ที่เราเรียกใช้บนเครื่องของเรา พวกเขาใช้ระบบปฏิบัติการของโฮสต์เพื่อจัดการและแจกจ่ายทรัพยากร ไฮเปอร์ไวเซอร์ประเภทนี้เหมาะสำหรับผู้ใช้แต่ละรายที่ต้องการเรียกใช้ระบบปฏิบัติการหลายระบบในเครื่องของตน

รวมถึงแอปพลิเคชันต่างๆ เช่น Oracle VirtualBox, VMware Workstations, VMware Fusion, Parallels Desktop และอื่นๆ อีกมากมาย คุณสามารถค้นหาข้อมูลรายละเอียดเพิ่มเติมเกี่ยวกับโฮสต์ไฮเปอร์ไวเซอร์ได้ในบทความของเรา ซอฟต์แวร์เครื่องเสมือนที่ดีที่สุด

ทำไมต้องใช้เครื่องเสมือน

เมื่อคุณมีความเข้าใจพื้นฐานว่าเครื่องเสมือนคืออะไร คุณอาจนึกถึงแอปพลิเคชันที่ยอดเยี่ยมบางอย่างได้ ต่อไปนี้คือเหตุผลสำคัญที่ผู้คนใช้เครื่องเสมือน

1. ประหยัดค่าใช้จ่าย

เครื่องเสมือนมีความคุ้มค่าในหลายๆ สถานการณ์ หนึ่งในสิ่งที่โดดเด่นที่สุดคือในโลกธุรกิจ การใช้เซิร์ฟเวอร์จริงเพื่อจัดหาทรัพยากรสำหรับพนักงานสามารถทำได้จะมีราคาแพงมาก ฮาร์ดแวร์นั้นไม่ถูกเลย และการบำรุงรักษาก็มีราคาสูงกว่า

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

การใช้ VM บนเครื่องของคุณสามารถประหยัดเงินได้มาก หากคุณต้องการทำงานในระบบปฏิบัติการหลายระบบหรือการกำหนดค่าฮาร์ดแวร์ที่แตกต่างกัน คุณสามารถ

ใช้เครื่องเสมือนหลายเครื่องในโฮสต์เดียว ไม่จำเป็นต้องออกไปซื้อคอมพิวเตอร์แยกต่างหากสำหรับแต่ละงาน

2. ปรับขนาดได้และยืดหยุ่น

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

3. ตั้งค่าด่วน

สามารถตั้งค่า VM ใหม่ได้อย่างรวดเร็ว ฉันเคยมีกรณีที่ต้องตั้งค่า VM ใหม่ โทรหาเพื่อนร่วมงานของฉันที่จัดการพวกเขา และเตรียมให้พร้อมใช้งานในเวลาน้อยกว่าหนึ่งชั่วโมง

4. การกู้คืนจากความเสียหาย

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

5. ทำซ้ำได้ง่าย

ไฮเปอร์ไวเซอร์ส่วนใหญ่อนุญาตให้คุณสร้างสำเนาหรือรูปภาพของ VM อิมเมจช่วยให้คุณสร้างการทำซ้ำที่แน่นอนของ VM พื้นฐานเดียวกันได้อย่างง่ายดายสำหรับทุกสถานการณ์

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

6. เหมาะสำหรับ Dev/Test

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

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

VM ทำงานได้อย่างยอดเยี่ยมสำหรับการทดสอบผลิตภัณฑ์และบทวิจารณ์เหมือนกับที่เราทำที่ SoftwareHow.com ฉันสามารถติดตั้งแอปใน VM ที่ทำงานบนเครื่องของฉันและทดสอบโดยไม่ทำให้สภาพแวดล้อมหลักของฉันรกรุงรัง

เมื่อทดสอบเสร็จแล้ว ฉันสามารถลบเครื่องเสมือนได้ตลอดเวลา จากนั้นสร้างเครื่องใหม่เมื่อต้องการ กระบวนการนี้ยังช่วยให้ฉันทดสอบบนหลายแพลตฟอร์มได้ แม้ว่าฉันจะมีเพียงเครื่องที่ใช้ Windows ก็ตาม

Final Words

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

ฉันชื่อ Cathy Daniels เป็นผู้เชี่ยวชาญใน Adobe Illustrator ฉันใช้ซอฟต์แวร์มาตั้งแต่เวอร์ชัน 2.0 และได้สร้างบทช่วยสอนมาตั้งแต่ปี 2546 บล็อกของฉันเป็นหนึ่งในจุดหมายปลายทางยอดนิยมบนเว็บสำหรับผู้ที่ต้องการเรียนรู้เกี่ยวกับ Illustrator นอกจากงานของฉันในฐานะบล็อกเกอร์แล้ว ฉันยังเป็นนักเขียนและนักออกแบบกราฟิกอีกด้วย