ViPR SRM 4.1: High CPU utilization on Brocade DCX8510 switch due to ViPR SRM SNMP polling


   Article Number:     517575                                   Article Version: 4     Article Type:    Break Fix 




ViPR SRM,ViPR SRM 4.1,ViPR SRM 4.0,ViPR SRM 4.0.3,ViPR SRM 4.0.2,ViPR SRM 4.0.1,Watch4net,Watch4net 6.6,Watch4net 6.5






  •         Every polling ViPR SRM polling cycle, high CPU utilization issues are observed on DCX8510-8 Brocade switches running FOS 7.4.1e that are discovered via SNMP Device Discovery.      
  •         The switch in question has a very large number of ports.     
  •         Applying KB article 499268, which involves enabling only one capability "BROCADE_FCSWITCH_SYSTEM", helps to alleviate the CPU utilization on the switch.     
  •         Setting the "Varbinds per SNMP getBulk" polling option to 50 and the timeout value to 30000 did not resolve the issue.      
  •         Increased the polling interval to 30 minutes causes the CPU utilization to peak at 100% every 30 minutes.      






The ViPR SRM SNMP collector can initiate large numbers of parallel connections when polling devices, which can lead to performance problems if there is a large amount of data to be captured.                                                            






ViPR SRM initiates large numbers of parallel connections to the switches every polling cycle - reducing the number of threads utilized will reduce the amount of activity on the switch CPU.   
    To reduce the number of threads in use on the SNMP collector:   

  1.         Locate the configuration file "slave-snmp-poller.xml" which is located under /opt/APG/Collecting/SNMP-Collector/Generic-SNMP/conf/      
  3.         Take a backup of the original file before editing the file.     
  5.         Edit the file and find the thread configuration:     
      <?xml version="1.0" encoding="UTF-8"?><slave-snmp-poller name="srm01cl01.srm.local" pollerPrefix="srm01cl01.srm.local" groupName="group" oidsThreads="500" tablesThreads="500" alwaysPushProperties="true" handleCounterWrapAround="true" usePollerPrefixInVariable="false" oidAsPropertyInRawValues="false" configVersion="6.6" xmlns:xi="">       
        <local-communication-settings hostIpAddress="localhost" communicationPort="2008" communicationInterfaceIPAddress="" maxConcurrentSessions="498">       
        <xi:include href="polling-groups.xml"/>       
      The default values for the thread configuration is as below:   
  •         maxConcurrentSessions="498"     
  •         oidsThreads="500"      
  •         tablesThreads="500"     
      Change these to the values below:   
  •         maxConcurrentSessions="249"     
  •         oidsThreads="250"      
  •         tablesThreads="250"     
  1.         Save the file, and update and start the Generic-SNMP collector service on the collector:     
      /opt/APG/bin/ service update collector-manager Generic-SNMP       
        /opt/APG/bin/ service start collector-manager Generic-SNMP