Skip to main content

RRDTool 更新到最新版本

目前在 CentOS7 內鍵的版本是 RRDTool 1.4.8 版,由於這個版本已經是五年前的版本了,目前官方已經更新到 RRDTool 1.7.2 版,新的版本已經有做很多的改善並且增加新的功能,並且再跟 LibreNMS 服務搭配使用,這樣子在效能上會有所提高

 

運行環境


CentOS 7

 

更新方式


由於不能使用 yum 方式來安裝,只能靠編譯方式來進行安裝,那在安裝之前如果有先安裝舊版的 RRDTool 套件,要先移除不然會響影編譯後的問題

移除指令是

yum remove rrdtool

安裝要編譯的所需套件

yum install -y glibc glibc-devel cairo-devel libxml2-devel pango-devel pango libpng-devel freetype freetype-devel libart_lgpl-devel perl-devel gcc wget

到 RRDTool 官方下載新版套件

cd /opt
wget https://oss.oetiker.ch/rrdtool/pub/rrdtool-1.7.2.tar.gz

目錄權限設定

chown -R root:root /opt/rrdtool-1.7.2/

下載完成解壓並且進行編譯

tar xvfz rrdtool-1.7.2.tar.gz
cd rrdtool-1.7.2
./configure
make && make install

建立檔案鏈結

cd /usr/bin
ln -s /opt/rrdtool-1.7.2/bin/rrdcached rrdcached
ln -s /opt/rrdtool-1.7.2/bin/rrdtool rrdtool
ln -s /opt/rrdtool-1.7.2/bin/rrdcreate rrdcreate
ln -s /opt/rrdtool-1.7.2/bin/rrdupdate rrdupdate
ln -s /opt/rrdtool-1.7.2/bin/rrdcgi rrdcgi

驗證指令是否可以運行

rrdtool

更新成功之後執行剛剛輸入的指令會顯示所安裝的版本

nms-rrdtool-01.png

 

LibreNMS 效能 RRDCache


在 LibreNMS 官方說明,使用 RRDCache 可以增強 I/O 的效能,Ops/sec 可以減少約30-40%
套件需求要在 RRDTool 1.5.5 版本以上

編輯 「 vim config.php

$config['rrdtool_version'] = '1.5.5';

將下面一行的註解刪掉
$config['rrdcached']    = "unix:/var/run/rrdcached.sock";

如何產生 「 rrdcached.pid 」檔,請下面的指令系統會自動產生

 rrdcached -l localhost

新增啟動設定檔 「 vim /etc/systemd/system/rrdcached.service
因是自行編譯  RRDTool ,路徑PIDFile=/run/rrdcached.pid改為PIDFile=/opt/rrdtool-1.7.2/var/run/rrdcached.pid

[Unit]
Description=Data caching daemon for rrdtool
After=network.service

[Service]
Type=forking
PIDFile=/opt/rrdtool-1.7.2/var/run/rrdcached.pid
ExecStart=/usr/bin/rrdcached -w 1800 -z 1800 -f 3600 -s librenms -U librenms -G librenms -B -R -j /var/tmp -l unix:/run/rrdcached.sock -t 4 -F -b /opt/librenms/rrd/

[Install]
WantedBy=default.target

啟動 「 rrdcached 」服務

systemctl enable --now rrdcached.service

 

參考相關網頁: