ฉันได้เล่นกับเครื่องเสมือน latley และสงสัยว่าฉันสามารถเรียกใช้เครื่องเสมือนภายในเครื่องเสมือนได้หรือไม่
มันเป็นไปได้?
มันใช้งานได้จริงหรือ
ฉันได้เล่นกับเครื่องเสมือน latley และสงสัยว่าฉันสามารถเรียกใช้เครื่องเสมือนภายในเครื่องเสมือนได้หรือไม่
มันเป็นไปได้?
มันใช้งานได้จริงหรือ
คำตอบ:
การทำ VMs เป็นสิ่งที่ทำมาตลอดสำหรับฮาร์ดแวร์ IBM Mainframe ฮาร์ดแวร์นั้นทำสิ่งต่างๆมากมายเพื่อให้กระบวนการมีประสิทธิภาพมาก คุณสามารถให้ VMs ซ้อนกันในระดับความลึกตามอำเภอใจและทำงานได้ดีมาก
ฮาร์ดแวร์พีซีเมื่อเร็ว ๆ นี้ได้ทำให้เรื่องนี้เป็นไปได้ยาก เอกสารบนของ VMware กล่าวถึงในเว็บไซต์ของมัน แต่ส่วนสำคัญคือการที่คุณสามารถมี VMs ซ้อนกัน 2 ลึก แต่เฉพาะบนฮาร์ดแวร์ที่ทันสมัยมากที่สนับสนุนจริงเสมือนของฮาร์ดแวร์ (VT-x หรือ AMD-V) และความลึก VM ที่สองจะต้อง การรันการจำลองเสมือนสไตล์ BT / ไบนารีการแปลแบบเก่า นอกจากนี้ยังมีข้อ จำกัด ที่รุนแรงของจอภาพเสมือนที่คุณสามารถใช้กับแขกรับเชิญด้านในได้
ไม่จำเป็นต้องบอกว่ามันไม่รองรับและฉันคาดหวังว่ามันจะสกปรกถ้าคุณทำสิ่งใดแม้กระทั่งแปลก ๆ จากระยะไกล (เช่น Hyper-V ภายใต้ ESX) และประสิทธิภาพจะไม่ดีไม่ว่ามันจะเสถียรหรือไม่ก็ตาม
ใช่คุณสามารถ. ตัวอย่างเช่นบน Linux คุณสามารถเรียกใช้ Xen ด้วย VM หลายเครื่องที่ใช้งาน OpenVZ, VirtualServer หรือระบบ VM ชนิดอื่น เป็นไปได้มากที่สุดและยังใช้งานได้จริงขึ้นอยู่กับวัตถุประสงค์ของคุณ
เหตุผลหนึ่งที่ฉันคิดว่าทำสิ่งนี้คือการเรียกใช้เซิร์ฟเวอร์หลายเครื่องในเครื่องเดียว ไม่ว่าคุณจะเรียกใช้เป็นลำดับชั้น VM ระดับเดียวหรือหลายรายการขึ้นอยู่กับแผนการแยกทรัพยากรของคุณ
หากคุณต้องการรายละเอียดที่เฉพาะเจาะจงกล่าวว่าเป็นระบบเสมือนจริงที่คุณสามารถทำได้ในซอฟต์แวร์การทำรังไม่ใช่ปัญหา ลอง qemu ฉันทำมันลึกลงไปถึง 2 ระดับ แต่คุณสามารถไปให้ลึกกว่านี้ได้การแสดงนั้นอาจไร้ประโยชน์ได้ BTW, สถาปัตยกรรมพีซีเป็นลางบอกเหตุที่ IBM สร้างขึ้น แต่สำหรับการใช้งานที่แตกต่างกันโดยสิ้นเชิงเมื่อเทียบกับที่ใช้ในปัจจุบัน
ฉันไม่เชื่อว่าแพ็คเกจการจำลองเสมือนส่วนใหญ่จะอนุญาตให้คุณเรียกใช้ VM ใน VM ฉันรู้ว่า VMware จะตรวจสอบเมื่อมีการติดตั้งเพื่อดูว่ามีการติดตั้งไว้ใน VM หรือไม่และฉันหวังว่าผลิตภัณฑ์อื่นจะทำเช่นเดียวกัน ฉันไม่คิดว่าคำสั่ง CPU ที่จำเป็นจะถูกนำเสนอผ่านจากไฮเปอร์ไวเซอร์ที่ทำงานบนฮาร์ดแวร์จนถึง VM เพื่อเข้าถึง VM ที่สอง หากใช้งานได้คุณจะต้องเพิ่มค่าใช้จ่ายโดยไม่ได้อะไรตอบแทน
ไม่ว่าจะเป็นในทางปฏิบัติ - ฉันไม่เห็นว่าทำไม หากคุณต้องการ VM อื่นคุณสามารถเรียกใช้งานได้ถัดจากเซิร์ฟเวอร์ที่คุณใช้งานอยู่ ฉันไม่สามารถจินตนาการถึงกรณีที่คุณต้องมี VM ทำงานอยู่ภายใน VM อื่น ค่าโสหุ้ยเพิ่มเติมโดยไม่ได้รับสัดส่วนของทรัพยากรบางอย่างจะทำให้สิ่งนี้ไม่สามารถทำได้
ใช่. มีหลายวิธีในการรัน VMware ESX / vSphere ในเครื่องเสมือน ฉันไม่รู้ว่าทำไมคุณถึงต้องการฝึกหัด แต่มันก็ทำเสร็จแล้ว
ใช่คุณทำได้ แต่ชอบหลายสิ่งหลายอย่างไม่ได้หมายความว่าคุณควรทำ ฉันเห็นเซิร์ฟเวอร์ ESX เสมือนจริงที่ใช้งานเครื่องเสมือนซึ่งมีเซิร์ฟเวอร์ ESX เสมือนอื่นอยู่ภายใน ได้รับมันเป็นการทดสอบเพียงเพื่อดูว่าสามารถทำได้ (และสามารถ) ฉันจริง ๆ จะไม่แนะนำมัน
มันขึ้นอยู่กับเทคนิคระบบเสมือนจริง หากคุณใช้โซลูชันที่ไม่ใช่เวอร์ช่วลไลเซชั่นเสมือนจริงอย่าง UML คุณสามารถเรียกใช้งานภายในได้เช่น VMWare หรือตัวเองสำหรับเรื่องนั้น ๆ
การติดตั้งที่ใช้ UML สามารถเรียกใช้ภายใน VMWare VM และการติดตั้งที่ใช้ UML อื่น ๆ (แม้ซ้อนกัน) ตัวชี้วัดประสิทธิภาพจะไม่ได้สวยเลย!
ใช่เป็นไปได้ แต่ช้าจริงๆ
มันมีประโยชน์โดยเฉพาะอย่างยิ่งถ้าคุณกำลังเช่าเซิร์ฟเวอร์ที่มี IP สาธารณะ จำกัด ที่จัดสรร (ซึ่งขึ้นอยู่กับตัวอย่างเช่นที่อยู่ MAC ของคุณเพื่อไม่ให้พิษเครือข่ายของผู้ให้บริการเซิร์ฟเวอร์ของคุณ); และคุณต้องการเชื่อมต่อ VM IP ของคุณเพื่อสื่อสารโดยตรงกับอินเทอร์เน็ต ดังนั้นเมื่อคุณไม่สามารถมีมากกว่าที่อยู่ IP สาธารณะ 3 ที่ แต่ที่คุณต้องการ 10 VM มันเป็นความคิดที่ดีที่จะมี VM ใน VM ทั่วโลก: คุณจะใช้ IP สาธารณะที่คุณได้รับเพียงอย่างเดียว มีบริดจ์เชื่อมต่อย่อยมากมาย
แต่คุณสามารถใช้การผสมผสานของบริดจ์และการกำหนดค่าเครือข่ายที่กำหนดเส้นทางมันเป็นเรื่องที่ยากยิ่งขึ้นเกี่ยวกับการกำหนดค่า
เท่าที่ฉันรู้ว่ามันเป็นไปไม่ได้ แต่ VMware ESX สามารถทำงานได้ใน VMware Workstation IMHO นั้นดีสำหรับการทดสอบเท่านั้น
เช่นเดียวกับหลาย ๆ คนที่พร้อมจะพูดว่า: แน่นอนมันเป็นไปได้ ขึ้นอยู่กับว่าฮาร์ดแวร์ VM ถูกจำลองและซอฟต์แวร์เวอร์ชวลไลเซชันที่คุณใช้อยู่เพียงใด อย่างน้อย VMWare Workstation ไม่ต้องการให้คุณจำลองเสมือน
สำหรับถ้ามันใช้งานได้จริงเราอาจจะตั้งคำถามกลับมาหาคุณ: ทำไมคุณต้องทำสิ่งนั้น เกิดอะไรขึ้นกับการรัน VMs สองตัวพร้อมกัน และคุณถามว่ามันใช้งานได้จริงในระดับใด? นั่นคือหากคุณกังวลว่าการติดตั้งและกำหนดค่าอาจเป็นไปได้ หากคุณกังวลเกี่ยวกับการใช้งานจริงมากขึ้นฉันไม่สามารถนึกถึงสิ่งที่ฉันต้องทำเพื่อสิ่งนี้เว้นแต่ว่าฉันกำลังมองหาจุดบกพร่องในซอฟต์แวร์เวอร์ชวลไลเซชันหรือบางอย่าง
ใช่. ดูที่นี่:
คุณทำได้ แต่ฉันไม่แนะนำ
ประสิทธิภาพมักจะได้รับความนิยมอย่างมากในกระบวนการทั้งหมดนี้ในเครื่อง "แขกของแขก" หากคุณต้องทำสิ่งนี้โดยไม่ต้องใช้ฮาร์ดแวร์และซอฟต์แวร์เฉพาะขอให้โชคดี อย่างไรก็ตามโดยทั่วไปแล้วมันไม่ใช่วิธีปฏิบัติที่ดีโดยเฉพาะอย่างยิ่งกับวิธีการทั่วไปที่ใช้เพื่อให้บรรลุ virtualization
ฉันรู้ว่าถ้าคุณพยายามเรียกใช้ VMWare ภายในระบบ VMWare มันจะบ่นและไม่อนุญาตให้คุณทำ ฉันไม่แน่ใจเกี่ยวกับ VirtualBox ฉันรู้ว่ามีคนไม่กี่คนที่ใช้งาน Docker container ภายใน Docker container ด้วยเหตุผลใดก็ตาม คุณธรรมของเรื่องราวคือ: แม้ว่ามันอาจเป็นไปได้ แต่ก็ไม่ฉลาดที่จะทำเว้นแต่คุณจะรู้ว่าคุณกำลังทำอะไรอยู่
ฉันเองก็ไม่ทราบถึงกรณีการใช้งานจริงนอกเหนือไปจากระบบเครือข่าย