您可以監控連接埠鏡像工作階段以用於疑難排解或其他目的。

執行這項作業的原因和時機

這項功能具有下列限制:

  • 來源鏡像連接埠無法位於一個以上的鏡像工作階段中。

  • 目的地連接埠僅能接收鏡像流量。

  • 透過 KVM,您可將多個 NIC 連結至相同的 OVS 連接埠。鏡像會發生在 OVS 上行連接埠,這表示連結至 OVS 連接埠之所有 pNIC 上的流量皆會發生鏡像。

  • 鏡像工作階段來源和目的地連接埠必須位於相同的主機 vSwitch 上。因此,如果您將具有來源或目的地連接埠的虛擬機器 vMotion 至其他主機,則該連接埠上的流量都將無法再次進行鏡像。

  • 在 ESXi 上,當上行連接埠上啟用鏡像時,系統會使用 VDL2 的 Geneve 通訊協定將原始生產 TCP 封包封裝至 UDP 封包。支援 TSO (TCP 分割卸載) 的實體 NIC 可變更封包,以及使用 MUST_TSO 旗標來標記封包。在具有 VMXNET3 或 E1000 vNIC 的監控虛擬機器上,驅動程式會將封包視為一般 UDP 封包,且無法處理 MUST_TSO 旗標,而會捨棄封包。

如果有大量流量鏡像至監控虛擬機器,則可能會導致驅動程式的緩衝區循環已滿而造成捨棄封包。若要減輕這個問題,可執行下列一或多個動作:

  • 增加 rx 緩衝區循環大小。

  • 指派多個 CPU 資源給虛擬機器。

  • 使用資料平面開發套件 (DPDK) 來改進封包處理效能。

備註︰

確定監控虛擬機器的 MTU 設定 (若是 KVM,則也包括 Hypervisor 虛擬 NIC 裝置的 MTU 設定) 夠大以處理封包。這一點對於封裝式封包尤為重要,因為封裝會增加封包大小。否則,封包可能會遭到捨棄。對於具備 VMXNET3 NIC 的 ESXi 虛擬機器,這不會是問題,但對於 ESXi 和 KVM 虛擬機器上的其他 NIC 類型可能會發生問題。

備註︰

在涉及 KVM 主機上虛擬機器的第 3 層連接埠鏡像工作階段中,您必須設定夠大的 MTU 大小才能處理封裝所需的額外位元組。鏡像流量會通過 OVS 介面和 OVS 上行。您必須將 OVS 介面的 MTU 設定為至少大於原始封包 (封裝和鏡像前) 大小的 100 個位元組。如果您看到捨棄的封包,請增加主機虛擬 NIC 和 OVS 介面的 MTU 設定。請使用下列命令來設定 OVS 介面的 MTU:

    ovs-vsctl -- set interface <ovs_Interface> mtu_request=<MTU>
備註︰

監控虛擬機器的邏輯連接埠和虛擬機器所在主機的上行連接埠時,視主機為 ESXi 或 KVM 而定,您會看到不同的行為。對於 ESXi,系統會以相同的 VLAN 識別碼標記邏輯連接埠鏡像封包和上行鏡像封包,且會以相同方式向監控虛擬機器顯示。對於 KVM,系統不會以 VLAN 識別碼標記邏輯連接埠鏡像封包,但會標記上行鏡像封包,且會以不同方式向監控虛擬機器顯示。

程序

  1. 從瀏覽器登入 NSX Manager,網址為 https://nsx-manager-ip-address
  2. 選取導覽面板中的工具 (Tools) > 連接埠鏡像工作階段 (Port Mirroring Session)
  3. 輸入工作階段名稱。
  4. 從下拉式功能表中選取傳輸節點。

    連接埠鏡像工作階段必須位於相同傳輸節點上的 NIC 之間。

  5. 從下拉式功能表中選取方向。

    選項有雙向 (Bidirectional)入口 (Ingress)出口 (Egress)

  6. (選擇性) 選取封包截斷值。
  7. 按一下下一步 (Next)
  8. 選取來源 PNIC。
  9. (選擇性) 切換封裝式封包 (Encapsulated Packet)交換器以停用擷取封裝式流量。

    此交換器依預設為啟用。

  10. 選取來源 VNIC。
  11. 選取目的地。

    您最多可選取 3 個虛擬機器和 3 個 VNIC。

  12. 按一下儲存 (Save)

    儲存連接埠鏡像工作階段後,您便無法變更來源和目的地。