I recently had a request from our network team to install an sFlow virtual switch extension package in to our Hyper-V clusters so that virtual machine traffic can be monitored. Naturally the best and most controlled way to accomplish this deployment is by leveraging the logical switch extension capabilities included in SCVMM. I have documented my experience installing Host sFlow from InMon in this blog.
- Download “sFlowAgentVMM-win-(version)-x64.msi” and “hsflowd-win-(version)-x64.msi” from here
- Place the hsflowd-win-(version)-x64.msi on the SCVMM Management server(s) at “C:\ProgramData\Switch Extension Drivers”
- Install “sFlowAgentVMM-win-(version)-x64.msi” on SCVMM Management server(s)
- Restart the System Center Virtual Machine Manager service on the management server(s)
- In the SCVMM console, navigate to Fabric, choose Add Resources > Network Service
- Name the Network Service (for instance, sFlow Packet Filter). Click Next. Verify that the Manufacturer and Model are Inmon Corp and sFlowFilter respectively. Click Next. Specify credentials in a RunAs account and click Next. On the Connection String screen, enter the IP address or FQDN of the sFlow collector. Click Next. Choose applicable Host Group(s) and click Next, Finish.
- Navigate to Settings > Configuration Providers and verify that the virtual switch extension for sFlow is installed.
- Navigate to Fabric > Networking > Network Service. Right click on the sFlow Packet Filter and choose Properties. On the Extensions screen, click Add Property and add the following properties.
- SFLOW_DNSSD = off
- This is required, otherwise the agent will default to the DNSSD configuration (and ignore the remainder of this manual configuration).
- SFLOW_COLLECTOR = (IP address or FQDN of the sFlow collector service)
- Set this to the hostname or IP address of the sFlow collector to send sFlow to. This can also be a comma separated list of multiple collectors, if required.
- SFLOW_POLLING = 20
- Set this to the required polling interval (eg 20 for every 20 seconds, the default value).
- SFLOW_SAMPLING = 256
- Set this to the required sampling rate (eg 256 for 1 in 256 sampling, the default rate).
- SFLOW_DNSSD = off
- *** NOTE *** – Once you deploy a logical switch to a host with settings, you cannot add/edit these properties. Once these settings have been verified on the Extensions screen, click OK and verify successful job completion on the Jobs window.
- Navigate to Fabric > Networking > Logical Switches. Right click on the appropriate logical switch and choose Properties. On the Extensions screen, select “sFlow agent for Hyper-V virtual switch” and click OK. Repeat this step if you wish to install the sFlow extension in to multiple logical switches.
- Refresh the host/cluster in SCVMM
- Navigate to Fabric > Networking > Logical Switches. By selecting the “Hosts” button on the top ribbon bar, the compliance status of each host’s switches can be viewed. For each logical switch that is in a “Not Compliant” status, right click on the logical switch and choose Remediate. Note – it appears that you MUST right click on the logical switch to remediate. You cannot select the host and remediate all non-compliant logical switches at one time, even though the option appears to be there. Review the successful remediation status in the Jobs pane. Wait until all remediation jobs have completed before proceeding.
- Refresh the host/cluster in SCVMM and wait until the refresh job has completed
- Navigate to Fabric > Networking > Logical Switches. All hosts and logical switches should now be fully compliant. If there are any non-compliant hosts, verify that you successfully completed step #2 in this guide and that the RunAs account that was utilized has access to that directory/file.