解決巢狀虛擬化作業問題

本文說明使用巢狀虛擬化時可能遇到的常見錯誤,以及解決這些錯誤的方法。如要進一步瞭解巢狀虛擬化,請參閱「建立巢狀 VM」。

無法啟動巢狀 VM

如果您的專案屬於機構,機構可能已停用建立啟用巢狀虛擬化功能的 VM。請先確認允許巢狀虛擬化,再嘗試建立啟用巢狀虛擬化功能的 VM。

處理器未顯示巢狀虛擬化功能

如果 grep -c vmx /proc/cpuinfo 指令傳回 0,並回報 VM 未啟用巢狀虛擬化,請確認下列事項:

  • 您啟動 VM 時使用的 CPU 平台為 Intel Haswell 或更新版本。詳情請參閱巢狀虛擬化總覽
  • 用於建立 VM 的機器系列支援巢狀虛擬化。詳情請參閱機型比較
  • 專案或機構的政策限制允許巢狀虛擬化。如果政策限制禁止巢狀虛擬化,CPU 就不會公開巢狀功能。詳情請參閱「檢查是否允許巢狀虛擬化」。

無法退出巢狀 VM

如果您未在每個巢狀 VM 工作階段之前執行 screen,可以選擇關閉巢狀 VM,或從其他終端機停止程序。如要關閉巢狀 VM,請直接從巢狀 VM 內執行 poweroff 指令。或者,請從其他終端機登入主機 VM 並結束程序,然後在啟動新的巢狀 VM 之前,於主機 VM 上執行 screen

iptables 未轉送流量

  • iptables 會由上而下解析規則,請確認您規則的優先順序是否高於其他規則。
  • 檢查是否有任何衝突規則攔截封包運作。
  • 建議清除 iptables

    1. 請先設定預設政策:

      sudo iptables -P INPUT ACCEPT
      sudo iptables -P FORWARD ACCEPT
      sudo iptables -P OUTPUT ACCEPT
      
    2. 接著再清除所有的表格和鏈結,然後刪除非預設的鏈結:

      sudo iptables -t nat -F
      sudo iptables -t mangle -F
      sudo iptables -F
      sudo iptables -X