KVM で SR-IOV モードを有効にするには、次の手順を実行します。

前提条件

この場合、特定の NIC カードが必要です。次のチップセットは、SD-WAN Gateway および SD-WAN Edge と連携することが VMware によって認定されています。

  • Intel 82599/82599ES
  • Intel X710/XL710
注: KVM 上で Intel X710/XL710 カードを SR-IOV モードで使用する前に、「 デプロイの前提条件」セクションで指定されているファームウェアとドライバのサポートされているバージョンが正しくインストールされていることを確認してください。
注: KVM Virtual Edge が高可用性トポロジで展開されている場合、SR-IOV モードはサポートされません。高可用性展開の場合は、その KVM Edge ペアで SR-IOV が有効になっていないことを確認します。

KVM 上で SR-IOV を有効にするには、次の手順を実行します。

  1. BIOS で SR-IOV を有効にします。手順は BIOS によって異なります。BIOS コンソールにログインし、SR-IOV のサポート/DMA を見つけます。Intel が正しい CPU フラグを持っているかどうかをチェックすることで、プロンプトでサポートを確認できます。
    cat /proc/cpuinfo | grep vmx
  2. Bboot (/etc/default/grub) にオプションを追加します。
    GRUB_CMDLINE_LINUX="intel_iommu=on"
    1. コマンド update-grubupdate-initramfs -u を実行します。
    2. 再起動 (Reboot)
    3. iommu が有効になっていることを確認します。
      velocloud@KVMperf3:~$ dmesg | grep -i IOMMU
       [ 0.000000] Command line: BOOT_IMAGE=/vmlinuz-3.13.0-107-generic root=/dev/mapper/qa--multiboot--002--vg-root ro intel_iommu=on splash quiet vt.handoff=7 
       [ 0.000000] Kernel command line: BOOT_IMAGE=/vmlinuz-3.13.0-107-generic root=/dev/mapper/qa--multiboot--002--vg-root ro intel_iommu=on splash quiet vt.handoff=7 
       [ 0.000000] Intel-IOMMU: enabled
       ….
       velocloud@KVMperf3:~$ 
  3. 使用されている NIC チップセットに基づいて、次のとおりドライバを追加します。
    • SR-IOV モードの [Intel 82599/82599ES] カードの場合:
      1. Intel の Web サイトから、[ixgbe] ドライバをダウンロードしてインストールします。
      2. ixgbe 設定(tar および sudo によるインストール)を設定します。
        velocloud@KVMperf1:~$ cat /etc/modprobe.d/ixgbe.conf
      3. ixgbe 設定ファイルが存在しない場合は、次のとおりにファイルを作成する必要があります。
        options ixgbe max_vfs=32,32
        options ixgbe allow_unsupported_sfp=1
        options ixgbe MDD=0,0
        blacklist ixgbevf
      4. update-initramfs -u コマンドを実行し、サーバを再起動します。
      5. modinfo コマンドを使用して、インストールが成功したかどうかを確認します。
        velocloud@KVMperf1:~$ modinfo ixgbe and ip link
         filename: /lib/modules/4.4.0-62-generic/updates/drivers/net/ethernet/intel/ixgbe/ixgbe.ko
         version: 5.0.4
         license: GPL
         description: Intel(R) 10GbE PCI Express Linux Network Driver
         author: Intel Corporation, <[email protected]>
         srcversion: BA7E024DFE57A92C4F1DC93
    • SR-IOV モードの [Intel X710/XL710] カードの場合:
      1. Intel の Web サイトから、[i40e] ドライバをダウンロードしてインストールします。
      2. 仮想機能 (VF) を作成します。
        echo 4 > /sys/class/net/device name/device/sriov_numvfs
      3. 再起動後も VF を存続させるには、前の手順のコマンドを "/etc/rc.d/rc.local" ファイルに追加します。
      4. VF ドライバを無効にします。
        echo “blacklist i40evf” >> /etc/modprobe.d/blacklist.conf
      5. update-initramfs -u コマンドを実行し、サーバを再起動します。

SR-IOV の検証(オプション)

次のコマンドを使用して、ホスト マシンで SR-IOV が有効にされているかどうか素早く確認できます。

lspci | grep -i Ethernet

仮想機能があるかどうかを確認するには、次の手順を実行します。

01:10.0 Ethernet controller: Intel Corporation 82599 Ethernet Controller Virtual Function(rev 01)