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

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

這項功能具有下列限制:

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

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

  • 透過 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)

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