SevOne SDN Collector Advanced Configuration & Troubleshooting Guide
This document offers detailed instructions for executing advanced configurations of the SDN collector by utilizing configuration variables. It also includes troubleshooting guidelines.
Advanced Configuration
Please refer to SDN Plugin in SevOne NMS User Guide for the APIC Connectivity details to configure the Cisco ACI solution.
In this example, the device name for the device with SDN plugin being created is Apic and SDN plugin is enabled. After you configure the plugin and save the configuration, two files are created in /config/SDN folder. The file names are in the following format.
- <device-name>.yaml
- default-<device-name>.yaml
In our example, the device name is Apic. So, after the device is configured with SDN plugin, the two files that will get created in /config/SDN folder are:
- Apic.yaml
- default-Apic.yaml
Example: Apic.yaml (sample file)
The list of SDN plugin variables can be found in the table below.
deployment_name: Apic
version: 7.0.0
run_agents_immediately_and_exit_collector: true
log:
level: debug
agent:
include:
- InstallerAgent
- TopologyInstallerAgent
- PodAgent
- NodeAgent
- PodExtendedAgent
- NodeExtendedAgent
- NodeInterfaceAgent
- MetadataAgent
- TopologyAgent
- DeviceDescriptionAgent
- FaultStreamingAgent
- ObjectGroupAgent
- ExternalSwitchAgent
- HypervisorAndVirtualMachineAgent
vendor:
is_multi_site_mode: false
no_prefix: false
site:
name: Apic
apic_url: https://10.52.0.171
apic_uid: developer
apic_password: DevTeam1234#
device_name_prefix: MyPrefix
fault_configuration_filename: ""
timeout: 30s
page_size: 10000
sleep_time: 200
dn_order: true
do_nodes_traffic: true
fault_prefix: ""
do_pod_traffic: true
do_virtual_traffic: false
do_bytes: true
do_packets: false
skip_tunnel_if: true
skip_off_vm: true
skip_bad_nic: true
pod_agent:
schedule: ""
node_agent:
schedule: ""
pod_extended_agent:
schedule: ""
node_interface_agent:
schedule: ""
node_extended_agent:
schedule: ""
external_switch_agent:
schedule: ""
hypervisor_and_virtual_machine_agent:
schedule: ""
topology_agent:
schedule: ""
object_group_agent:
schedule: ""
nms:
api:
insecure_tls_connection: true
host: 127.0.0.1
v2_api_key: eyJhbGciOiJIUzUxMiJ9eyJpc3MiOiJhZG1pbiJ92wPJ-R9zaAoD3sJ95dSzN_irIaLn7E_o1SpHrkpVTOegoInNZ0r-s7zELy6GJS7bdLJuExqF9ksB4JfMHlcKJA
v3_api_key: eyJ1dWlkIjoiYzNhMTc1NGEtZDBjMC00ZTczLWE1YzgtODk5OTBiMWMxZDQ3IiwiYXBwbGljYXRpb24iOiJTRE4iLCJlbnRyb3B5IjoiazNZN0JMWGIwWVBCbzhzcGlmdmpUbjdOOHlEenh0WFpPUktnZVZVWVRTTzQzTWtwMDZSVmozQ3p0RWFUYlZkbyJ9
fault_config:
filter: []
granular_fault_filter: []
severity_mapping: []
Example: default-Apic.yaml (sample file)
Please see the table below for the list of SDN plugin configuration variables available.
deployment_name: ""
version: 7.0.0
run_agents_immediately_and_exit_collector: true
log:
level: debug
agent:
include:
- InstallerAgent
- TopologyInstallerAgent
- PodAgent
- NodeAgent
- PodExtendedAgent
- NodeExtendedAgent
- NodeInterfaceAgent
- MetadataAgent
- TopologyAgent
- DeviceDescriptionAgent
- FaultStreamingAgent
- ObjectGroupAgent
vendor:
is_multi_site_mode: false
no_prefix: true
site:
name: ""
apic_url: ""
apic_uid: ""
apic_password: ""
device_name_prefix: SiteName
fault_configuration_filename: ""
timeout: 30s
page_size: 10000
sleep_time: 200
dn_order: true
do_nodes_traffic: true
fault_prefix: ""
do_pod_traffic: true
do_virtual_traffic: false
do_bytes: true
do_packets: false
skip_tunnel_if: true
skip_off_vm: true
skip_bad_nic: true
pod_agent:
schedule: ""
node_agent:
schedule: ""
pod_extended_agent:
schedule: ""
node_interface_agent:
schedule: ""
node_extended_agent:
schedule: ""
external_switch_agent:
schedule: ""
hypervisor_and_virtual_machine_agent:
schedule: ""
topology_agent:
schedule: ""
object_group_agent:
schedule: ""
nms:
api:
insecure_tls_connection: true
host: ""
v2_api_key: ""
v3_api_key: ""
fault_config:
filter: []
granular_fault_filter: []
severity_mapping: []
Filter Alerts
- SSH to SevOne NMS appliance as root
user.
$ ssh root@<NMS appliance>
- Change directory to /config/SDN.
$ cd /config/SDN
- You will see two configuration files <device-name>.yaml and
default-<device-name>.yaml for the device created through
the SDN plugin. For example,
$ ls Apic. yaml default-Apic.yaml where, Apic is the device name of the device created in the example above.
-
Note: If you are configuring the alerts for the first time, the fault-config values in /config/SDN/default-<device-name>.yaml file will be blank.Using a text editor of your choice, edit and save /config/SDN/default-<device-name>.yaml file. Please refer to the table below for details on the variables in the .yaml file.
For example,
Save /config/SDN/default-Apic.yaml file.$ vi /config/default-Apic.yaml file. fault_config: filter: - filter_on: aci_severity filter_value: - aci-severity-1 - aci-severity-2 - filter_on: aci_fault_code filter_value: - fault-code-1 - fault-code-2 granular_fault_filter: - code: fault-code-3 aci_severity: - aci-severity-3 - aci-severity-4 - code: fault-code-4 aci_severity: - aci-severity-4 - aci-severity-5 severity_mapping: - code: - fault-code-1 - fault-code-2 severity: nms-severity-1 - code: - fault-code-3 - fault-code-4 - fault-code-5 severity: nms-severity-2
Variable | Description |
---|---|
aci_severity | This sheet is used to provide attributes of a fault to filter on.
code: Contains ACI severities to create SevOne NMS alerts on. Important:
|
fault_code | This sheet is used to provide attributes of a fault to filter on.
code: Contains fault codes to create SevOne NMS Alerts on. To learn more about the fault codes, please refer to https://www.cisco.com/c/en/us/td/docs/switches/datacenter/aci/apic/sw/all/syslog/guide/b_ACI_System_Messages_Guide.html Important:
|
granular | This sheet is used to provide attributes of a fault to filter on.
code: Contains fault codes to create SevOne NMS Alerts on. To learn more about the fault codes, please refer to https://www.cisco.com/c/en/us/td/docs/switches/datacenter/aci/apic/sw/all/syslog/guide/b_ACI_System_Messages_Guide.html aci_severity: ACI severities that the faults with the above-mentioned fault codes need to be mapped to. Important:
|
severity_mapping | This sheet is used if the severity of faults with certain codes needs to be mapped to a particular SevOne NMS severity.
code: Contains fault codes mapped to the severity mentioned in severity. severity: SevOne NMS severity that the faults with the above-mentioned fault codes need to be mapped to. Accepted keywords are emergency, alert, critical, error, warning, notice, info, or debug. Important:
|
Troubleshooting
Where can the log files be found?
- Go to the log folder.
$ cd /var/log/Apic
- Go to version 7.0, for example.
You are now in /var/log/Apic/7.0.0.$ cd 7.0.0
- You will find a folder for each supported agent.
- If you are looking for the log file for agent, DeviceDescriptionAgent,
for example, then go to folder DeviceDescriptionAgent.
You are now in /var/log/Apic/7.0.0/DeviceDescriptionAgent$ cd DeviceDescriptionAgent
- You will now find the log file <device-name>_DeviceDescriptionAgent_7.0.0.log file. For example, Apic_DeviceDescriptionAgent_7.0.0.log
Configuration Variables
YAML setting | Default Value | Description |
---|---|---|
msp_name | ORGANIZATION | MSP name for this instance. MSP is a grouping of one or more tenants. For example, ORGANIZATION. |
version | 7.0.0 | Version of the build. For example, 7.0.0 |
run_agents_immediately_and_exit_collector | true | Will run all the agent in the include list sequentially and exit the collector. |
log.level | debug | Log output minimum level. May be one of: debug, info, warning, error. |
agent.include |
|
Set to array of agent names to explicitly include. |
vendor.site.name | (required) - <enter value> | Provide the site name. |
vendor.site.apic_URL | (required) - <enter value> | APIC IP address. For example, https://192.168.1.2 |
vendor.site.apic_uid | (required) - <enter value> | APIC username. |
vendor.site.apic_password | (required) - <enter value> | APIC password. |
vendor.site.device_name_prefix | Site Name | Common prefix name for all devices. |
vendor.site.timeout | 30s | The amount of seconds to wait before timing out on attempting to connect to the APIC. |
vendor.is_multi_site_mode | false | If set to True, run the collector in multisite mode. Default setting is false. |
vendor.no_prefix | false | If set to true, prefixes will be provided to device names. |
vendor.page_size | 10000 | The page size to use for paginating API requests. |
vendor.sleep_time | 200 | The time to sleep after APIC API queries in milliseconds. |
vendor.dn_order | true | Request objects to be sorted by DN in the APIC API query. |
vendor.do_nodes_traffic | true | Enable Node device's network statistics. |
vendor.fault_prefix | "" | Used to specify a prefix text in the summary field of alerts that are created from ACI faults. |
vendor.do_pod_traffic | true | Enable POD device's network statistics. |
vendor.do_bytes | true | Collect statistics in bytes. |
vendor.do_packets | false | Collect statistics in packets. |
vendor.do_virtual_traffic | false | Poll for network statistics of VMs and HVs. |
vendor.skip_tunnel_if | true | Skip polling the POD for Tunnel Interfaces. |
vendor.skip_off_vm | true | Skip VMs that have been powered off. |
vendor.skip_bad_nic | true | Skip VM network interfaces with an IP address of 0.0.0.0. |
vendor.pod_agent.schedule | "" | Poll pod agent devices every 10 mins. |
vendor.node_agent.schedule | "" | Poll node agent devices every 10 mins. |
vendor.pod_extended_agent.schedule | "" | Poll pod extended agent devices every 10 mins. |
vendor.node_interface_agent.schedule | "" | Poll node interface agent devices every 10 mins. |
vendor.node_extended_agent.schedule | "" | Poll node extended agent devices every 10 mins. |
vendor.external_switch_agent.schedule | "" | Poll external switch agent devices every 10 mins. |
vendor.hypervisor_and_virtual_machine_agent.schedule | "" | Poll hypervisor and virtual machine agent devices every 10 mins |
vendor.topology_agent.schedule | "" | Poll topology agent devices every 10 mins |
vendor.object_group_agent.schedule | "" | Poll object group agent devices every 10 mins. |
nms.api.host | "" | The hostname or IP address for SOA and REST API endpoints. |
nms.api.v2_api_key | "" | API key used for NMS REST API authentication. |
nms.api.v3_api_key | "" | API key used for NMS SOA authentication. |
nms.api.insecure_tls_connection | true | Set true to enable insecure TLS connection by skipping certification verification. |