mirror of
https://github.com/librenms/librenms.git
synced 2024-09-22 19:08:15 +00:00
docs: minor fixes to Performance doc (#7877)
This commit is contained in:
parent
46cbc69660
commit
b3f09e7587
@ -5,12 +5,12 @@ This document will give you some guidance on optimising your setup.
|
||||
|
||||
The suggestions are in a rough order of how much impact they will have.
|
||||
|
||||
#### RRDCached
|
||||
### RRDCached
|
||||
|
||||
We absolutely recommend running this, it will save on IO load. [RRDCached](http://docs.librenms.org/Extensions/RRDCached/)
|
||||
**We absolutely recommend running this, it will save on IO load**. [RRDCached](http://docs.librenms.org/Extensions/RRDCached/)
|
||||
|
||||
|
||||
#### MySQL Optimisation
|
||||
### MySQL Optimisation
|
||||
|
||||
It's advisable after 24 hours of running MySQL that you run [MySQL Tuner](https://raw.githubusercontent.com/major/MySQLTuner-perl/master/mysqltuner.pl)
|
||||
which will make suggestions on things you can change specific to your setup.
|
||||
@ -25,7 +25,7 @@ You can also set this to 2. This will have the possibility that you could lose u
|
||||
MySQL crashes or your server does but it provides an amazing difference in IO use.
|
||||
|
||||
|
||||
#### Polling modules
|
||||
### Polling modules
|
||||
|
||||
Disable polling (and discovery) modules that you do not need. You can do this globally in `config.php` like:
|
||||
|
||||
@ -37,7 +37,7 @@ $config['poller_modules']['ospf'] = 0;
|
||||
You can disable modules globally then re-enable the module per device or the opposite way. For a list of modules please see
|
||||
[Poller modules](http://docs.librenms.org/Support/Poller%20Support/)
|
||||
|
||||
#### SNMP Max Repeaters
|
||||
### SNMP Max Repeaters
|
||||
|
||||
We have support for SNMP Max repeaters which can be handy on devices where we poll a lot of ports or bgp sessions for instance and
|
||||
where snmpwalk or snmpbulkwalk is used. This needs to be enabled on a per device basis under edit device -> snmp -> Max repeaters.
|
||||
@ -51,7 +51,7 @@ but replace <REPEATERS> with varying numbers from 10 upto around 50. You will al
|
||||
|
||||
> NOTE: Do not go blindly setting this value as you can impact polling negatively.
|
||||
|
||||
#### SNMP Max OIDs
|
||||
### SNMP Max OIDs
|
||||
|
||||
For sensors polling we now do bulk snmp gets to speed things up. By default this is ten but you can overwrite this per device under
|
||||
edit device -> snmp -> Max OIDs.
|
||||
@ -60,31 +60,28 @@ You can also set this globally with the config option `$config['snmp']['max_oid'
|
||||
|
||||
> NOTE: It is advisable to monitor sensor polling when you change this to ensure you don't set the value too high.
|
||||
|
||||
#### Optimise poller-wrapper
|
||||
### Optimise poller-wrapper
|
||||
|
||||
The default 16 threads that `poller-wrapper.py` runs as isn't necessarily the optimal number. A general rule of thumb is
|
||||
2 threads per core but we suggest that you play around with lowering / increasing the number until you get the optimal value.
|
||||
|
||||
This can be changed by going to the cron job for librenms. Usually in /etc/cron.d/librenms and changing the "16"
|
||||
**Note** KEEP in MIND that this doesn't always help, it depends on your system and CPU. So be careful.
|
||||
This can be changed by going to the cron job for librenms. Usually in `/etc/cron.d/librenms` and changing the "16"
|
||||
|
||||
```
|
||||
*/5 * * * * librenms /opt/librenms/cronic /opt/librenms/poller-wrapper.py 16
|
||||
```
|
||||
|
||||
KEEP in MIND that this doesn't always help, it depends on your system and CPU. So be careful.
|
||||
|
||||
|
||||
#### Recursive DNS
|
||||
### Recursive DNS
|
||||
|
||||
If your install uses hostnames for devices and you have quite a lot then it's advisable to setup a local recursive dns instance on the
|
||||
LibreNMS server. Something like pdns-recursor can be used and then configure `/etc/resolv.conf` to use 127.0.0.1 for queries.
|
||||
|
||||
#### Per port polling - experimental
|
||||
### Per port polling - experimental
|
||||
|
||||
By default the polling ports module will walk ifXEntry + some items from ifEntry regardless of the port. So if a port is marked as deleted because you don't want to see them
|
||||
or it's disabled then we still collect data. For the most part this is fine as the walks are quite quick. However for devices with a lot of ports and good % of those are
|
||||
either deleted or disabled then this approach isn't optimal. So to counter this you can enable 'selected port polling' per device within the edit device -> misc section or by
|
||||
globally enabling it (not recommended): `$config['polling']['selected_ports'] = true;`. You can also set it for a specific OS: `$config['os']['ios']['polling']['selected_ports'] = true;`.
|
||||
globally enabling it (**not recommended**): `$config['polling']['selected_ports'] = true;`. You can also set it for a specific OS: `$config['os']['ios']['polling']['selected_ports'] = true;`.
|
||||
|
||||
Running `./scripts/collect-port-polling.php` will poll your devices with both full and selective polling, display a table with the difference and optionally enable or disable selected ports polling for devices which would benefit from a change.
|
||||
Note that it doesn't continously re-evaluate this, it will only be updated when the script is run. There are a number of options:
|
||||
|
Loading…
Reference in New Issue
Block a user