The Cluster Manager, at the Appliance level, the Process Overview tab displays the following list of processes SevOne NMS runs.
* Processes with an asterisk (*) in the list and the following two processes (that do not appear in the list) can be monitored via the SevOne-NMS-MIB. This provides the ability to self monitor the SevOne NMS appliance. Self monitor statistics are available in Performance Metrics report attachments and Instant Graphs when you select the localhost device and its associated indicators on which to run reports.
SevOne-clusterd - Synchronizes communication among the appliances in a clustered environment.
SevOne-searchd - Indexes search results on the back end for the cluster wide advanced/global searches.
Processes are grouped into subsections. Some provide Stop, Start, and Restart buttons to enable you to stop and start processes. This is mainly for SevOne Support Engineers and you should not click these buttons without a strong cause.
*MySQL Config Server - Synchronizes the Config databases of clustered appliances.
*MySQL Data Server - Synchronizes the Data database of clustered environments.
nginx - Displays the SevOne NMS web user interfaces.
PHP-FPM - PHP handler used to run PHP scripts in the SevOne NMS GUI.
SSH Daemon - Secure shell used for remote login to operate network services securely on an unsecured network.
Syslog - Manages the logs that appear on the System Logs tab.
HTTP Proxy - Forwards VMware data among peers.
sFlow Converter - Enables the NetFlow Collector process to receive sFlow data.
Traffic samplicator (port 9997) - Listens on UDP port 9997 and replicates the traffic to any number of IP addresses and ports, similar to a broadcaster.
By default, the samplicator is disabled. For the samplicator to persist as enabled across reboots and restarts of supervisord, using a text editor of your choice, edit /etc/supervisord.d/samplicator_9997.ini file.
$
vi
/etc/supervisord
.d
/samplicator_9997
.ini
...
...
autostart=
true
...
...
After updating /etc/supervisord.d/samplicator_9997.ini, execute the following commands to update supervisorctl and to start/restart the service.
$ supervisorctl reread
$ supervisorctl update
$ supervisorctl restart samplicator_9997
For details on samplicator, please refer to section Samplicator below.
When you execute the following command to perform the services check, samplicator service is ignored and the check does not inform the user whether or not the samplicator is running.
$ SevOne-act check services
*SevOne Data Daemon - Inserts polled data into the database.
SevOne Data Publisher - SevOne component that listens for new data points for devices and publishes them to Apache Kafka broker or Apache Pulsar broker cluster.
SevOne FlowDB Daemon - Processes raw NetFlow data.
SevOne Master/Slave (Leader/Follower) Monitor - Coordinates actions between the appliances in a Hot Standby Appliance peer pair
SevOne Message Aggregator - Handles alert messages.
*SevOne MIB Daemon - Caches MIB information and resolves OID numbers to text.
SevOne NetFlow Collector - Handles the NetFlow poller.
*SevOne Realtime Scheduler - Performs high frequency polling.
*SevOne Request Daemon - Communicates with clustered appliances to collect data for reports.
*SevOne Scheduler - Handles poll schedules.
SevOne Stats - Processes data for self monitoring.
*SevOne Trap Collector - Receives and processes SNMP traps.
*SevOne xStats Dispatch Daemon - Performs name to ID resolution for xStats devices and associates xStats data to the correct peer.
*SevOne xStats File Collector - Reads and parses xStats files.
SevOne xStats Ingestion Resolver Daemon - Performs name to ID resolution for xStats objects and indicators.
Action: become leader - Makes the passive appliance in a Hot Standby Appliance peer pair take over and become the active appliance.
Action: become follower - Makes the active appliance in a Hot Standby Appliance peer pair fail over and become the passive appliance.
Action: format follower - Formats the database on the passive appliance in a Hot Standby Appliance peer pair.
SevOne Alert Mailer - Emails alerts that are configured to be emailed when the threshold is triggered.
SevOne Device Mover - Processes and performs device moves from peer to peer that are initiated from the Device Mover.
SevOne Discover Script - Handles all device discovery.
SevOne Longterm Trim - Trims historical data based on the Cluster Manager setting.
SevOne Report Mailer - Emails reports that are scheduled to be emailed.
SevOne Shortterm Backup - Backs up short term data that is stored in memory.
SevOne Longterm Cacher - Caches and processes baseline data.
SevOne Longterm Updater - Writes data stored in short term memory to the disk every two hours.
SevOne Shortterm Trimmer - Trims short term data.
SevOne Threshold Checker - Manages alerts.
The Cluster Manager, at the Appliance level, the System Logs tab enables you to review the log files to which SevOne NMS writes.
messages - Displays the generic log for all un-grouped messages.
kern - Displays output of command /usr/bin/dmesg, which prints the kernel ring buffer.
SevOne-backup-config-data.log
SevOne-backup.log
SevOne-checkmate.log
SevOne-device-mover.log - Displays the log of the devices that you move between the peers in the cluster
SevOne-devices-deletion-queue.log - Displays the log of the devices that are added to the deletion queue to be deleted.
SevOne-ffupdater.log
SevOne-generate-admin-messages.log
SevOne-mib-synchronize.log
SevOne-summary-table-tool.log
SevOne-tablecacher.log
SevOne-top-highpolld.log
SevOne-top-polld.log
aggregated-netflow-rollup.log - Displays the log that states when the daily data points for aggregated flow data ran
alertmailer.log - Displays the log of the script that emails new alerts. Look here when alert emails are not sent or received
cacher.log
checksshd.log
disableUsers.log
discover-netflow.log
discover-schedule.log
discover-thereshold.log - This utility runs frequently throughout the day and sends new alerts to the messageswitch daemon
discover.log
highfreqpoller.update-by-time.log - Displays the log of the high frequency poller to inform you of the poll status
ipmi-message.log
mailreports.log - Displays the log of the script that emails reports. Look here when report emails are not sent or received
mysql-replication-maintainer-config.log - Displays logs for MySQL config database
mysql-replication-maintainer-data.log - Displays the logs for the MySQL data database
mysqloptimize_config.log
mysqloptimize_data.log
namflow.log
periodic.shortterm.backup.log - Displays the log for the short term backup. This utility writes the status of the periodic memory-table backups that are made when a server reboots
proxy-write-config.log
rapid-plugins-pdf.log
rest-api-keepalive.log
sevone-cert-update.log
snmpd-restart.log
sync-ldap-groups.log
sysuptime-normalize.log
trim-alerts.log
trim-bulkdlogs.log
trim-device.log
trim-longterm.log
trim-mysqllogs.log
trim-netflow.log
trim-netflowaggregate.log
trim-rtagx.log
trim-sessions.log
trim-shortterm-netflow.log
trim-shortterm.log
trim-shorttermaggregate-daily.log
trim-shorttermaggregate-hourly.log
trim-shorttermaggregate-monthly.log
trim-shorttermaggregate-sixhourly.log
trim-shorttermaggregate-weekly.log
trim-sixhourlynetflow.log
trim-temporarytable.log
trim-traps.log - Displays the log of the traps received. The output is in hexadecimal format
updater.log - Displays the logs for the hourly, daily, weekly, monthly, quarterly, and yearly updater. This utility writes short term memory data to disk
updateraggregate.daily.log
updateraggregate.monthly.log
updateraggregate.sixhourly.log
updateraggregate.weekly.log
upgrade-appliance.log
vcenterupdate.log
write-ldap-certs.log
/var/date.log
SevOne-audit.log
SevOne-clusterd.log
SevOne-datad.log
SevOne-device-scand.log
ingestion/SevOne-dispatchd.log
ingestion/SevOne-fcad.log
SevOne-flowdb.log
SevOne-highpolld.log
ingestion/SevOne-ingestion-resolved.log
SevOne-masterslaved.log - Displays information about the active appliance in a Hot Standby Appliance peer pair and its relationship with the passive appliance in the peer pair
SevOne-mibd.log
SevOne-netflow-cleanup.log - Displays the NetFlow daemon updater process
SevOne-polld.log
SevOne-requestd.log
SevOne-searchd.log
SevOne-statsd.log
SevOne-topologyd.log
SevOne-trapd.log - Displays the trap daemon
cron.log
discovery.log - Displays the log of the regular discovery script, which runs frequently throughout the day to discover device updates and new devices
logrotate.log
messageswitch.log - Displays the log of the alert handler. All new alerts come through this system
mysql/mysqld.err
mysql/mysql2.err
mysql/mysqld_multi.log
net-snmpd.log
nginx.err
nginx.log
nginx/access.log
nginx/error.log
php-fpm.err
php-fpm.log
php-fpm/error.log
php-fpm/www-error.log
rest-api/SevOne-rest-api.log
sdp.log
sftp.log
soa.log
sshd.log
tacc.log
trim.log
xStats-parsers.log
xstats/ALU5620SAMTransform/adapter.log
xstats/AwsTransform/adapter.log
xstats/CanaryTransform/adapter.log
Samplicator is a UDP datagram forwarding program. In SevOne NMS, it is most commonly used to forward NetFlow data to a different port or onto other systems. It can be used to forward any UDP data.
Assume that there is NetFlow source (device IP address 10.0.0.61) coming in on port 1234 and it cannot be changed on the device. The flow must be rerouted to the standard port, 9996, for SevOne NMS to process it normally. Please refer to section Configure Samplicator below for details.
Copy the samplicator example configuration file, /etc/conf.d/samplicator.example.confd, to /etc/conf.d/samplicator.1234.confd.
Port 1234 is being used as an example here on which this instance of the samplicator service is being configured for and will listen on.
$
cp
/etc/conf
.d
/samplicator
.example.confd
/etc/conf
.d
/samplicator
.1234.confd
Using a text edit of your choice, edit /etc/conf.d/samplicator.1234.confd file to add device IP address 10.0.0.61 and save it.
$
vi
/etc/conf
.d
/samplicator
.1234.confd
#Config file format:
#a.b.c.d[/e.f.g.h]: receiver ...
#where:
#a.b.c.d is the sender's IP address
#e.f.g.h is a mask to apply to the sender (default 255.255.255.255)
#receiver see above.
10.0.0.61: 10.0.0.60
/9996
The first column is where the samplicator expects the UDP packets from. i.e., 10.0.0.61, as shown in the example above.
The second column is where the UDP packets go to followed by the port number. i.e., 10.0.0.60/9996, as shown in the example above.
Alternatively, you may use 0.0.0.0 as the receiver IP address if it does not matter where the data is coming from and you want to forward all UDP traffic coming in on the specified port.
Now that the configuration file has been modified, set the parameters for supervisord to start the samplicator for this specific port forwarding request.
Samplicator configurations can be created individually, or many different incoming / outgoing pairs can configured for the same samplicator instance. This depends on the requirements of the environment.
Copy /etc/supervisord.d/samplicator_9997.ini file to /etc/supervisord.d.<master or dnc or slave folder>/samplicator_1234.ini. Please see the note below to determine whether to copy the file in master or dnc or slave folder.
If the samplicator service needs to be running when the appliance is in Master / Leader state, copy the file to /etc/supervisord.d.master folder.
For an active DNC appliance, copy the file to /etc/supervisord.d.dnc folder.
In any other role, copy to /etc/supervisord.d.slave folder.
For the steps below, we will assume that the appliance is in Master / Leader state.
$
cp
/etc/supervisord
.d
/samplicator_9997
.ini
/etc/supervisord
.d.master
/samplicator_1234
.ini
Using a text edit of your choice, edit /etc/supervisord.d.master/samplicator_1234.ini file to update the program name to reflect the samplicator port being used. i.e., [program:samplicator_1234]. Also, update the command to reflect the configuration file name (using option -c) and the port (using option -p). After the updates, save the file.
$
vi
/etc/supervisord
.d.master
/samplicator
.1234.ini
[program:samplicator_1234]
command
=
/usr/bin/samplicate
-S -c
/etc/conf
.d
/samplicator
.1234.confd -p 1234 -d0
stdout_logfile=
/var/log/samplicator
.log
stderr_logfile=
/var/log/samplicator
.err
priority=500
autostart=
true
startsecs=10
startretries=10000
autorestart=
true
You may leave stdout_logfile and stderr_logfile as-is if you want to send the output to the same log file as the other samplicator instances. Or, you may also choose to give it a separate log file name.
After configuring /etc/conf.d/samplicator.1234.confd and /etc/supervisord.d.master/samplicator_1234.ini files, execute the following command.
$ supervisorctl reread && supervisorctl update
samplicator_1234: available
samplicator_9997: changed
samplicator_9997: stopped
samplicator_9997: updated process group
samplicator_1234: added process group
Start the samplicator process for the new configuration.
$ supervisorctl start samplicator_1234
You may now run tcpdump on the destination port you have configured above to ensure that the samplicator is working properly. If you do not have any data coming in, you may send the test data to the samplicator port on the appliance.
$
echo
"Hello World"
>
/dev/udp/127
.0.0.1
/1234
Ensure that the port you have chosen is not already in-use for the samplicator to listen on. If another process is bound to the port, the samplicator will fail to start.
In order to ensure that the samplicator starts on boot, the autostart line in /etc/supervisord.d.master/samplicator_1234.ini file must be set to true. By default, it is set to false, and without changing this setting, samplicator will not start on reboot despite the presence of it in /etc/supervisord.d.master/samplicator_1234.ini file.
autostart=
true
The configuration files managed by the supervisord daemon can be found in /etc/supervisord.d directory. SevOne NMS maintains different supervisord startup configuration *.ini files placed within the directories that are relevant to the role (master, slave, or dnc) of the appliance in SevOne NMS. For example, all services that need to be configured to run on an active PAS are placed in /etc/supervisord.d.master. For an active DNC appliance, the files are placed in /etc/supervisord.d.dnc. For all appliances with a passive role (PAS or DNC) are placed in /etc/supervisord.d.slave.
When an appliance assumes an active or passive role, SevOne NMS creates a symbolic link for /etc/supervisord.d to point to the relevant directory based on its role in SevOne NMS. Creating the samplicator configuration file in the correct folder (/etc/supervisord.d.master, /etc/supervisord.d.slave, or /etc/supervisord.d.dnc) is important.
If you have a samplicator service running when the DNC appliance is in active state, the samplicator file must be created in /etc/supervisord.d.dnc. In case of a failover / takeover, if the DNC appliance assumes a passive role, the samplicator service will no longer run on that DNC. You will need to create the samplicator file in /etc/supervisord.d.slave directory for the samplicator service to continue to run after a failover / takeover.
NMS Role |
Samplicator Configuration File Location |
PAS active |
/etc/supervisord.d.master |
PAS passive |
/etc/supervisord.d.slave |
DNC active |
/etc/supervisord.d.dnc |
DNC passive |
/etc/supervisord.d.slave |
The same configuration file must be updated in the relevant directories on the primary and secondary appliance of the pair to ensure that the samplicator service continues to run on the appliance after a failover / takeover.
For additional details, please refer to https://github.com/sleinen/samplicator/.