From bc992ef7ef8c7d78214a6893f9c64914e59df33b Mon Sep 17 00:00:00 2001 From: laf Date: Tue, 26 Jul 2016 20:29:06 +0100 Subject: [PATCH] Added performance doc + updated install docs --- .../Installation-CentOS-7-Apache.md | 8 +++ .../Installation-CentOS-7-Nginx.md | 8 +++ .../Installation-Ubuntu-1604-Apache.md | 8 +++ .../Installation-Ubuntu-1604-Nginx.md | 8 +++ doc/Support/Performance.md | 50 +++++++++++++++++++ 5 files changed, 82 insertions(+) create mode 100644 doc/Support/Performance.md diff --git a/doc/Installation/Installation-CentOS-7-Apache.md b/doc/Installation/Installation-CentOS-7-Apache.md index ea97d9fcb5..a198c48af3 100644 --- a/doc/Installation/Installation-CentOS-7-Apache.md +++ b/doc/Installation/Installation-CentOS-7-Apache.md @@ -153,6 +153,14 @@ That's it! You now should be able to log in to http://librenms.example.com/. P We now suggest that you add localhost as your first device from within the WebUI. +#### What next? + +Now that you've installed LibreNMS, we'd suggest that you have a read of a few other docs to get you going: + + - (Performance tuning)[http://docs.librenms.org/Support/Performance] + - (Alerting)[http://docs.librenms.org/Extensions/Alerting/] + - (Device Groups)[http://docs.librenms.org/Extensions/Device-Groups/] + #### Closing We hope you enjoy using LibreNMS. If you do, it would be great if you would consider opting into the stats system we have, please see [this page](http://docs.librenms.org/General/Callback-Stats-and-Privacy/) on what it is and how to enable it. diff --git a/doc/Installation/Installation-CentOS-7-Nginx.md b/doc/Installation/Installation-CentOS-7-Nginx.md index 7c122951c1..c49ff6204b 100644 --- a/doc/Installation/Installation-CentOS-7-Nginx.md +++ b/doc/Installation/Installation-CentOS-7-Nginx.md @@ -164,6 +164,14 @@ That's it! You now should be able to log in to http://librenms.example.com/. P We now suggest that you add localhost as your first device from within the WebUI. +#### What next? + +Now that you've installed LibreNMS, we'd suggest that you have a read of a few other docs to get you going: + + - (Performance tuning)[http://docs.librenms.org/Support/Performance] + - (Alerting)[http://docs.librenms.org/Extensions/Alerting/] + - (Device Groups)[http://docs.librenms.org/Extensions/Device-Groups/] + #### Closing We hope you enjoy using LibreNMS. If you do, it would be great if you would consider opting into the stats system we have, please see [this page](http://docs.librenms.org/General/Callback-Stats-and-Privacy/) on what it is and how to enable it. diff --git a/doc/Installation/Installation-Ubuntu-1604-Apache.md b/doc/Installation/Installation-Ubuntu-1604-Apache.md index ed82775edc..6165f2db48 100644 --- a/doc/Installation/Installation-Ubuntu-1604-Apache.md +++ b/doc/Installation/Installation-Ubuntu-1604-Apache.md @@ -135,6 +135,14 @@ That's it! You now should be able to log in to http://librenms.example.com/. P We now suggest that you add localhost as your first device from within the WebUI. +#### What next? + +Now that you've installed LibreNMS, we'd suggest that you have a read of a few other docs to get you going: + + - (Performance tuning)[http://docs.librenms.org/Support/Performance] + - (Alerting)[http://docs.librenms.org/Extensions/Alerting/] + - (Device Groups)[http://docs.librenms.org/Extensions/Device-Groups/] + #### Closing We hope you enjoy using LibreNMS. If you do, it would be great if you would consider opting into the stats system we have, please see [this page](http://docs.librenms.org/General/Callback-Stats-and-Privacy/) on what it is and how to enable it. diff --git a/doc/Installation/Installation-Ubuntu-1604-Nginx.md b/doc/Installation/Installation-Ubuntu-1604-Nginx.md index 0a75dfb5ec..b665fcfcc5 100644 --- a/doc/Installation/Installation-Ubuntu-1604-Nginx.md +++ b/doc/Installation/Installation-Ubuntu-1604-Nginx.md @@ -138,6 +138,14 @@ That's it! You now should be able to log in to http://librenms.example.com/. P We now suggest that you add localhost as your first device from within the WebUI. +#### What next? + +Now that you've installed LibreNMS, we'd suggest that you have a read of a few other docs to get you going: + + - (Performance tuning)[http://docs.librenms.org/Support/Performance] + - (Alerting)[http://docs.librenms.org/Extensions/Alerting/] + - (Device Groups)[http://docs.librenms.org/Extensions/Device-Groups/] + #### Closing We hope you enjoy using LibreNMS. If you do, it would be great if you would consider opting into the stats system we have, please see [this page](http://docs.librenms.org/General/Callback-Stats-and-Privacy/) on what it is and how to enable it. diff --git a/doc/Support/Performance.md b/doc/Support/Performance.md new file mode 100644 index 0000000000..585df1a8c0 --- /dev/null +++ b/doc/Support/Performance.md @@ -0,0 +1,50 @@ +# Performance optimisations + +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 + +We absolutely recommend running this, it will save on IO load. [RRDCached](http://docs.librenms.org/Extensions/RRDCached/) + + +#### 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. + +One recommendation we can make is that you set the following in my.cnf: + +```bash +innodb_flush_log_at_trx_commit = 0 +``` + +You can also set this to 2. This will have the possibility that you could lose upto 1 second on mysql data in the event +MySQL crashes or your server does but it provides an amazing difference in IO use. + + +#### Polling modules + +Disable polling (and discovery) modules that you do not need. You can do this globally in `config.php` like: + +Disable OSPF polling +```php +$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/) + + +#### 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. + +#### 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. + +