您可以設定類型模板和映像中繼資料以允許 SR-IOV 或 DirectPath I/O 傳遞,然後建立使用實體硬體介面的 OpenStack 執行個體。

重要:

此功能僅在 VMware Integrated OpenStack 電訊廠商版本 中提供。如需詳細資訊,請參閱〈VMware Integrated OpenStack 授權〉

此程序會使用 OpenStack Nova 對非網路裝置啟用傳遞。對於網路裝置,請參閱對網路裝置設定傳遞

先決條件

  • vSphere 中啟用 SR-IOV 或 DirectPath I/O:

  • 建立 SR-IOV 裝置專用的運算叢集。DRS 規則不適用於這些裝置。

  • 若要保存實體裝置的 MAC 位址,請將其叢集新增為運算節點,然後在裝置上啟用直接傳遞。如果已啟用直接傳遞,您可以將其停用、重新啟動叢集,然後再次啟用直接傳遞。

程序

  1. viouser 身分登入 OpenStack 管理伺服器
  2. 如果您的部署未使用 custom.yml 檔案,請將範本 custom.yml 檔案複製到 /opt/vmware/vio/custom 目錄。
    sudo mkdir -p /opt/vmware/vio/custom
    sudo cp /var/lib/vio/ansible/custom/custom.yml.sample /opt/vmware/vio/custom/custom.yml
  3. 在文字編輯器中開啟 /opt/vmware/vio/custom/custom.yml 檔案。
  4. 取消 nova_pci_alias 參數的註解並修改其值以符合您的裝置。
    nova_pci_alias: [{"device_type": "type-VF", "name": "virtual-device-name"}, {"vendor_id":"vid", "product_id":"pid", "device_type": "type-PF", "name":"physical-device-name"}]

    其中:

    • name (第一次出現) 是虛擬裝置的別名

    • vendor_id 是實體裝置廠商的四位數識別碼

    • device_id 是實體裝置的四位數識別碼

    • name (第二次出現) 是實體裝置的別名

  5. 部署已更新的組態。
    sudo viocli deployment configure

    部署組態會暫時中斷 OpenStack 服務。

  6. 以雲端管理員身分登入 VMware Integrated OpenStack 儀表板。
  7. 從標題列的下拉式功能表中選取管理專案。
  8. 建立已啟用傳遞的類型模板。
    1. 選取管理 > 運算 > 類型模板
    2. 建立新的類型模板,或選擇要用於傳遞的現有類型模板。
    3. 選取您想要使用的類型模板旁邊的更新中繼資料
    4. 可用中繼資料窗格中,展開類型模板適用的 VMware 驅動程式選項,然後按一下 PCI 傳遞別名旁邊的新增 (加號) 圖示。
    5. pci_passthrough:alias 的值設為 virtual-device-name:device-count,然後按一下儲存

      選項

      說明

      virtual-device-name

      輸入您在此程序的步驟 4 中指定的虛擬裝置名稱。

      device-count

      指定可在一個要求中呼叫的虛擬功能數目。

      此值的範圍為 1 到 10。

  9. 建立已啟用傳遞的映像。
    1. 選取管理 > 運算 > 映像
    2. 建立新的映像,或選擇要用於傳遞的現有映像。
    3. 按一下您想要使用的映像旁邊的向下箭頭,然後選取更新中繼資料
    4. 可用中繼資料窗格中,展開 VMware 驅動程式選項,然後按一下虛擬網路介面旁邊的新增 (加號) 圖示。
    5. hw_vif_model 參數旁邊的下拉式清單中選取您的裝置,然後按一下儲存

結果

現在可透過為已啟用傳遞的虛擬機器設定此程序期間所修改的類型模板和映像來部署這些虛擬機器。