Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Agents are a list of the IP addresses from which flows are received.  The System -> Manage Agents GUI function enables you to associate the see each agent IP with an actual node in NMIS.  Associating address as well as the node that has been associated with it .  The association to an NMIS node enables opFlow to look up the interface indexes which the traffic is flowing to and from.  You MUST tell opFlow which IP address is which Node Name for this process to work.  You can also tell opFlow to query a remote server for those Node Details , these associations are automatically updated once an hour and can also be triggered at any time by using the System -> Sync Agent/Node data GUI function. Please refer to: opCharts/NMIS integration for information on configuring opFlow to connect to opCharts.

opFlow allows to select which flow agents (and in/out interfaces) your opFlow instance should accept data from. The agent list is updated automatically based on the flows that are received, this is currently done in the opflow-cli.pl program only.

You can use opflow-cli.pl to view the list of  agents and interfaces, and set any of them inactive or active. If an agent and in/out interface combination is set inactive, then opFlow will ignore flows from this agent and involving these in/out interfaces. There is also a "wildcard" agent record available: if you set that to inactive, then it overrides all interface-specific settings and no flows will be accepted from this agent (no matter what interfaces are involved). Please note that opflow-cli.pl does show the  invidual agent+interface records even if the wildcard record is set to inactive and thus is overriding them.

If you only want to disable flows coming in that match a particular in and out interface combination, then you should set that specific record inactive and leave the wildcard record active.

License Count

Our development team has provided the following query that will produce the nodes/interfaces that are being used to calculate interface usage.
Code Block
mongo -u opUserRW -p op42flow42 --host 127.0.0.1 flows --eval 'db.getCollection("agents").aggregate([  { "$match" : {"in_if" : { "$ne" : "*" },"out_if" : { "$ne" : "*" }, "admin_status" : "active"   }},{ "$group" : {_id : "$agent","in_if" : { "$addToSet" : "$in_if" },"out_if" : { "$addToSet" : "$out_if"}}}, { "$project" : {  _id : 1,interfaces : { "$setUnion" : [ "$in_if","$out_if" ] }}} ]);'

 

This command may be used from the command line. From our test machine it results in the following:

 

Code Block
[root@opmantek bin]# mongo -u opUserRW -p op42flow42 --host 127.0.0.1 flows --eval 'db.getCollection("agents").aggregate([  { "$match" : {"in_if" : { "$ne" : "*" },"out_if" : { "$ne" : "*" }, "admin_status" : "active"   }},{ "$group" : {_id : "$agent","in_if" : { "$addToSet" : "$in_if" },"out_if" : { "$addToSet" : "$out_if"}}}, { "$project" : {  _id : 1,interfaces : { "$setUnion" : [ "$in_if","$out_if" ] }}} ]);'
MongoDB shell version: 3.2.16
connecting to: 127.0.0.1:27017/flows
{ "_id" : "10.8.0.1", "interfaces" : [ 0 ] }
{ "_id" : "192.168.10.71", "interfaces" : [ 3, 10, 9, 2, 8, 5, 6 ] }
{ "_id" : "10.10.1.1", "interfaces" : [ 5, 4, 0, 1, 2, 3 ] }
The _id value is the source IP address of the sFlow sample, This can be considered the Node.  The numbers in the interfaces field are the SNMP indexes of the subject interfaces.

Note: Disabling all flows in+out of an interface will remove it from the licensing count (lowering the used count by one interface).  opFlow 3.0.2 requires each combo to be disabled, just disabling the wildcard record will not remove the interfaces from the licensing count.  The GUI refreshes the license count every 5 minutes, restart omkd if you would like to see the most up-to-date count immediately. 

...