原由:
目前的ESXi 5.x版本想要有netflow功能必須要使用vds,但是僅有Enterprise plus 才能啟用vds
詳見 ESXi 文件說明
NetFlow is available on a vSphere Distributed Switch version 5.0.0 and later. Version 5.1 and later of the switch supports IPFIX (NetFlow version 10).
如果因為各種無法突破的因素,無法將ESXi升級到 Enterprise plus,那可以將vss 開啟 Promiscuous mode (詳細介紹請參閱這邊),再用sniffer 去收集Traffic
開啟 Promiscuous mode方式:
- 開啟【vSphere Client】選擇【ESXi Host】 >> 【Configuration】 >> 【Networking】 >> 【 選擇要開啟Promiscuous mode 的vSwitch】 >> 【Properties】
- 進入【vswitch properties 】後,【vSwitch】 >> 【Edit】>> 【Security】>> 【Promiscuous mode】>> 將預設的【 Reject 】改為【Accept】 >> 【ok】 >> 【Close】
上述的方式是將整個 vswitch都開啟 Promiscuous mode,如果只要將某個 Port Group開啟,在第二步驟的 【vSwitch】改為要設定的Port Group
開始進行sniffer:
免費的 sniffer工具有很多種,Google上就可以找到,安裝及使用方式也都能google到。
重點:
- 執行sniffer的虛擬機一定要在所屬的Port Group,否則白搭。
- 在多台ESXi主機的環境中,就算每一台vss的Prot Group名稱都設定一樣(為了跨ESXi執行vmotion等功能),但因為不是vds,跨ESXi的vss就算設定一樣,在架構上來說還是不同的vss,所以收不到不同台ESXi的vm Traffic
- 如果是大型架構,別為了省錢而製造自己的麻煩,直接買Enterprise plus ,用netflow的功能吧。
- 如果真的沒錢,又想要做到跨ESXi又能收到Traffic,可以嘗試在每一台ESXi佈署一套sniffer,再將每一台ESXi的sniffer資料彙整。(雖然不用花錢,但是架構複雜化)
- 尋找用第三方的工具(設備、軟體)將每一台ESXi的Traffic資訊彙整。(還是要花錢而且架構複雜化)
update:
回覆刪除如果 vss 裡有多個 port group,而且sniffer 需要收集所有 port group 的封包,可以在vss內新增一個 vlan all 的 port group ,再將 sniffer 放在這個 port group 裡面即可。