-MW- pisze:
mozesz nakreslic w kilku slowach na czym polega
Cytuj:
1. Optymalizacja poleceń/skryptów służących do zbierania danych i umieszczenie ich w pliku /etc/mrtg/mrtg.conf
Proszę bardzo - oto wszystkie zmiany:
Było np.
Target[eth1]: `/etc/mrtg/eth1`
Jest
Target[eth1]: `awk -F ":( *)| +" '/eth1/ {print $3"\n"$11}' /proc/net/dev`
Było np.
Target[172.16.10.1]: `/etc/mrtg/mrtg.ip 172.16.10.1`
Jest
Target[172.16.10.1]: `iptables -t mangle -L mrtg_traffic -v -x -n | awk '/ 172.16.10.1 / {print $2}'`
Było
Target[cpu]: `awk '/cpu /{print $4; print $2+$3+$4}'</proc/stat; uptime; hostname`
Jest
Target[cpu]: `awk '/cpu /{print $4; print $2+$3+$4}' /proc/stat`
Było
Target[hda1]: `df|grep hda1|awk '{print $3 "\n" $4}'`
Jest
Target[hda1]: `df|awk '/hda1/ {print $3"\n"$4}'`
Było
Target[swap]: `/etc/mrtg/swap`
Jest
Target[swap]: `awk '/Swap:/ {print $3"\n"$2}' /proc/meminfo`
Było
Target[mem]: `/etc/mrtg/memory`
Jest
Target[mem]: `awk '/Mem:/ {print $3"\n"$2}' /proc/meminfo`
Było
Target[procesy]: `/etc/mrtg/procesy`
Jest
Target[procesy]: `awk -F" |/" '{print $5-1"\n"$4-2}' /proc/loadavg`
Jak widać, skrypty służące do zbierania danych zostały "zminimalizowane" do pojedynczych poleceń (wyrzucone wszystkie grep-y, cat-y, wc-ty) i umieszczone bezpośrednio w mrtg.conf , żeby było mniej gmerania po dysku.
Czerwo porównywał czasy wykonania tych skryptów - z 20 sekund zrobiły się 2 sekundy (duża sieć - ponad 200 komputerów).
Co do zliczania hostów - to skrypty zostały w oddzielnych plikach. Można oczywiście wrzucić sobie któryś z nich do mrtg.conf (oddzielając linie średnikami), ale trochę brzydko by było
Zaznaczam, że zmiany nie są wprowadzane z automatu przy aktualizacji - trzeba odpalić konfigurator, wybrać opcję 'Aktualizacja', wybrać które skrypty chcemy podmienić i zatwierdzić zmiany - dopiero wtedy zostanie wygenerowany nowy mrtg.conf. Tak więc jeśli masz własny konfigurator i własne skrypty, i nie chcesz ich zmieniać, to po prostu nic nie rób