Novm ท้าทายคำจำกัดความของคอนเทนเนอร์และ VM คืออะไร

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

Novm - ผลิตภายใต้การอุปถัมภ์ของ Google แม้ว่าจะไม่ใช่ผลิตภัณฑ์ของ Google อย่างเป็นทางการตามคำอธิบายของ GitHub - เป็นไฮเปอร์ไวเซอร์ประเภท 2 (คล้ายกับ VMware Workstation แทนที่จะเป็น VMware ESX) ที่เขียนใน Go โดยใช้ประโยชน์จาก KVM ของ Linux และมุ่งเน้นไปที่ ใช้งานแอปพลิเคชันมากกว่าทั้งระบบ

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

ผู้สร้างของ Novm ซึ่งส่วนใหญ่ Adin Scannell นักพัฒนาซอฟต์แวร์ระบบของ Google ชี้ให้เห็นข้อดีหลายประการเกี่ยวกับคอนเทนเนอร์สำหรับระบบของพวกเขานอกเหนือจากการทำให้การจัดการอินสแตนซ์ดิสก์มีปัญหาน้อยลง ซึ่งแตกต่างจากระบบที่ใช้คอนเทนเนอร์ Novm สามารถเรียกใช้เคอร์เนลใด ๆ บนโฮสต์ที่รู้วิธีบูตดังนั้นแขกและโฮสต์จึงสามารถรัน Linux เวอร์ชันที่แตกต่างกันโดยสิ้นเชิงโดยมีโมดูลที่แตกต่างกัน นอกจากนี้โมเดลนี้ยังมีความปลอดภัยที่ดีกว่าคอนเทนเนอร์เนื่องจากอินเทอร์เฟซเดียวที่เปิดเผยคือ x86 ABI และไฮเปอร์ไวเซอร์เอง ("คอนเทนเนอร์มีแนวโน้มที่จะประสบปัญหาด้านความปลอดภัยเนื่องจากแขกสามารถเข้าถึงอินเทอร์เฟซการโทรระบบเคอร์เนลทั้งหมดได้" ผู้สร้างอธิบาย)

ในงานนำเสนอของ LinuxCon เมื่อเดือนสิงหาคมที่ผ่านมา Scannell (ซึ่งเป็นผู้สร้างยูทิลิตี้ Huptime) ได้อธิบายถึงสิ่งที่เขามองว่าเป็นข้อ จำกัด ของคอนเทนเนอร์ พวกมันขึ้นอยู่กับเคอร์เนลของโฮสต์เป็นอย่างมากทำให้การรักษาความปลอดภัยยากกว่าที่คิดและสร้างปัญหากับสถานะเคอร์เนลที่ใช้ร่วมกันซึ่ง "ซับซ้อนและยากที่จะแยก" เป็น "การย้ายการระงับและดำเนินการต่อนั้นยากกว่ามาก " แทนที่จะพยายามทำให้คอนเทนเนอร์เป็นเหมือน VM มากขึ้นความคิดของเขากับ Novm คือการพยายามทำให้ VM เป็นเหมือนคอนเทนเนอร์ที่รองรับการปรับใช้สไตล์ Docker สามารถแมปในไดเรกทอรีจากระบบไฟล์อื่นโดยไม่เกินคำสั่งและสามารถจัดการได้ ปัญหาเหล่านี้บางส่วน

ข้อเสียในปัจจุบันของแนวทางของ Novm คือสามเท่า: ความเร็ว (ปริมาณงานที่ใช้ I / O มากมาพร้อมกับข้อแม้มากมาย) รองรับอุปกรณ์ฮาร์ดแวร์จำนวนน้อยมากและรองรับเฉพาะเคอร์เนล Linux ในขณะนี้ ข้อ จำกัด ประการที่สอง จำกัด ให้ Novm รันแอพพลิเคชั่น modern-stack ดังที่ Scannell กล่าวไว้ว่า "คุณไม่สามารถย้ายระบบไอทีโบราณที่ไม่สามารถแตะต้องได้ไปยัง Novm"

การเปรียบเทียบอย่างหนึ่งสำหรับการระเบิดในผลิตภัณฑ์ที่สำรวจสเปกตรัมของความเป็นไปได้ระหว่างไฮเปอร์ไวเซอร์ VM และคอนเทนเนอร์คือวิธีที่สมาร์ทโฟนประสบกับการระเบิดในรูปแบบเดียวกันตั้งแต่โทรศัพท์ทั่วไปไปจนถึง "phablet" ที่พิสูจน์แล้วว่าประสบความสำเร็จอย่างน่าประหลาดใจ ฟอร์มแฟคเตอร์แต่ละแบบตอบสนองความต้องการที่แตกต่างกันสำหรับลูกค้าที่แตกต่างกันแม้ว่าลูกค้ารายอื่นจะมองไม่เห็นความต้องการ - หรือผู้ผลิตสมาร์ทโฟนรายอื่นก็ตาม

ในทำนองเดียวกันการทดลองเช่นนี้ที่สำรวจการย้ายเส้นแบ่งระหว่าง VM และคอนเทนเนอร์มีจุดมุ่งหมายเพื่อขีดข่วนอาการคันที่คนไอทีอาจไม่รู้ว่ามี เห็นได้ชัดว่า Docker สามารถตอบสนองความคันที่สำคัญได้ แต่โครงการที่เป็นไปได้ทั้งหมดเช่น Novm อาจค้นหาและตอบสนองความต้องการอื่น ๆ ที่ไม่ได้รับการเปล่งเสียง