Freesco, NND, CDN, EOS
http://forum.freesco.pl/

[ mrtg ] - nowa wersja pakietu w testing.
http://forum.freesco.pl/viewtopic.php?f=24&t=16206
Strona 1 z 1

Autor:  viater [ piątek, 9 listopada 2007, 12:39 ]
Tytuł:  [ mrtg ] - nowa wersja pakietu w testing.

Nowa wersja pakietu mrtg znajduje się w testing.

Zmiany w stosunku do poprzednich wersji pakietu:

1. Optymalizacja poleceń/skryptów służących do zbierania danych i umieszczenie ich w pliku /etc/mrtg/mrtg.conf (z wyjątkiem skryptów zliczających aktywne hosty),
Powinno to przynajmniej w niewielkim stopniu zmniejszyć zużycie zasobów przez MRTG.

2. Zmiana sposobu zliczania aktywnych hostów - do wyboru są dwa skrypty:
- hosty.iptables - zliczanie na podstawie ruchu generowanego przez hosty (z reguł iptables),
- hosty.arpscan - zliczanie skanowaniem sieci przy użyciu programu arpscan (wymaga zainstalowania pakietu arpscan).

UWAGA !!!
Aby wprowadzić zmiany do mrtg.conf, należy po aktualizacji pakietu uruchomić konfigurator ( nndconf -> Konfiguracja MRTG ), wybrać opcję "Aktualizacja" i dalej postępować według instrukcji podawanych przez konfigurator.

Bardzo proszę o testy.

=== EDIT ======

Pakiet w wersji 2.10.13-12 jest już w extra-current.

Autor:  barte-k [ piątek, 9 listopada 2007, 21:14 ]
Tytuł: 

Na czym polega błąd? Nie kopiuje plików z /root/tmp?
Właśnie miałem zgłosić...

__
Update: czy możliwe jest dodanie do konfiguratora pinga do Onetu lu WP ?

Autor:  viater [ piątek, 9 listopada 2007, 21:28 ]
Tytuł: 

barte-k pisze:
Na czym polega błąd? Nie kopiuje plików z /root/tmp?

Bingo !
Nie tyle nie kopiuje, co zapisuje nie tam, gdzie trzeba. Po prostu testowałem u siebie i zapomniałem zmienić ścieżki przed zbudowaniem paczki :oops:

Przepraszam wszystkich - właśnie poprawiam, jutro będzie w repo.

barte-k pisze:
[...] czy możliwe jest dodanie do konfiguratora pinga do Onetu lu WP ?


Tak :)
A poważniej - dążymy do tego, aby mrtg zużywał jak najmniej zasobów, a pingowanie wcale temu nie sprzyja ;) Jeśli ktoś chce mieć pingi, może sobie dodać - gdzieś na forum był o tym wątek, może nawet kilka.
W przyszłości może zrobimy ankietę - czy dodać taką opcję do konfiguratora - jeśli będzie zainteresowanie, nie wykluczam takiej możliwości.

Autor:  barte-k [ piątek, 9 listopada 2007, 21:44 ]
Tytuł: 

Myślę, że ten ping można by dodać na zasadzie kompromisu... można by go było włączyć lub nie z poziomu Konfiguratora. Oczywiście mam dodany ping, (na forum krążą dwie wersje: jedna pokazuje tylko "średni" ping a druga dodatkowo rysuje ping "maksymalny"). Nie mniej jednak meczy ręczne dodawanie go do plików index.html i mrtg.conf. Co prawda można go dodać do pliku nndconf.d/mrtg ale też by "znikał" np: po aktualizacji pakietu.

Co do nowego mrtg - jak na razie chodzi bezbłędnie (testuje z hosty.iptables)

Autor:  viater [ piątek, 9 listopada 2007, 22:55 ]
Tytuł: 

barte-k pisze:
Myślę, że ten ping można by dodać na zasadzie kompromisu... można by go było włączyć lub nie z poziomu Konfiguratora.[...]

Ewentualnie przy następnej aktualizacji paczki.
barte-k pisze:
Co do nowego mrtg - jak na razie chodzi bezbłędnie (testuje z hosty.iptables)

No nie wiem... Jeśli zainstalowałeś z tej paczki, która jest w tej chwili w testing, to wszystkie zmiany, jakie wprowadziłeś konfiguratorem, poszły nie tam, gdzie trzeba... czyli podejrzewam, że nadal masz "stare" MRTG ;) chyba że skopiowałeś ten konfig z /root/tmp do /etc/mrtg ?

Autor:  -MW- [ piątek, 9 listopada 2007, 22:57 ]
Tytuł: 

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


majac swoj konfigurator mrtg nie chcialbym w przyszlosci byc zdziwiony,
ze nie zadziala z nowozainstlowana wersja mrtg.

Autor:  barte-k [ piątek, 9 listopada 2007, 23:21 ]
Tytuł: 

viater pisze:
No nie wiem... Jeśli zainstalowałeś z tej paczki, która jest w tej chwili w testing, to wszystkie zmiany, jakie wprowadziłeś konfiguratorem, poszły nie tam, gdzie trzeba... czyli podejrzewam, że nadal masz "stare" MRTG ;) chyba że skopiowałeś ten konfig z /root/tmp do /etc/mrtg ?


Czy ja wyglądam na głupka? :-) Poza tym nie tylko config tam wylądował...


(Pyt. retoryczne, nie odpowiadać)

Autor:  viater [ sobota, 10 listopada 2007, 00:43 ]
Tytuł: 

-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 :)

Autor:  -MW- [ sobota, 10 listopada 2007, 01:07 ]
Tytuł: 

mrtg u mnie niestety zostalo ustawione do pracy co 600s - przyczyna?
pozeralo za duzo zasobow procesora, a to bylo najprostrze rozwiazanie,
wiec jesli zadaliscie sobie tyle trudu aby przesledzic instrukcje zliczajace dane to dlaczego nie mailbym zrewidowac pliku configuratora,
na nowo dostosowujac go do swoich potrzeb, zwlaszcza ze przy 250 osobach w sieci mrgt stanowi znaczace obciazenie.

Autor:  viater [ sobota, 10 listopada 2007, 01:22 ]
Tytuł: 

-MW- pisze:
[...]zwlaszcza ze przy 250 osobach w sieci mrgt stanowi znaczace obciazenie.

Jak wynikałoby z testów Czerwa, przy tak dużej sieci zysk powinien być całkiem spory.

== EDIT ==

... chociaż i tak lwią część czasu MRTG zajmuje generowanie wykresów, samo zbieranie danych to przy tym mały pryszczyk...

Autor:  -MW- [ sobota, 10 listopada 2007, 02:29 ]
Tytuł: 

przy dosc sporych procesorach nie trwa to az tak dlugo :)

szkoda tylko ze nnd nie obsluguje dwurdzeniowych, ale moze juz niedlugo.



ps.
wlasnie dokonalem zmian w konfiguratorze, ale oszczednosci sie nie spodziewam kto wie jakich.
troche odciazy to dysk.

dzieki za info o zmianach.

Autor:  MAC!EK [ sobota, 10 listopada 2007, 03:19 ]
Tytuł: 

-MW- pisze:
przy dosc sporych procesorach nie trwa to az tak dlugo :)

szkoda tylko ze nnd nie obsluguje dwurdzeniowych, ale moze juz niedlugo.


jak nie ? SMP jest wkompilowane

Autor:  -MW- [ poniedziałek, 9 lutego 2009, 23:01 ]
Tytuł: 

ale jeden proces obslugiwany jest wylacznie przez jeden rdzen, a nie dwa na raz.

Autor:  -MW- [ czwartek, 19 lutego 2009, 23:32 ]
Tytuł: 

a moze do konfiguratora dolozyc na stale sekwencje pingujaca jakies serwisy w necie?

: [/] [] ()
#---pingi---przygotowanie
dialog --clear --separate-output --title "Wybor serwisow/adresow IP do testwania stanu lacza" \
--backtitle "Konfigurator mrtg dla NND" \
--checklist "Zaznacz testowany serwis/adres:" 16 70 10 \
"www.interia.pl" "" "on" \
"www.allegro.pl" "" "on" \
"www.wp.pl" "" "on" \
2> $tmp_dir/wybor_ping


#---pingi---
for IP in `cat < $tmp_dir/wybor_ping` ;do
cat >>$mrtg_conf_dir/$mrtg_conf_file <<!EOF

Title[$IP]: ----pingi----
PageTop[$IP]: <center> <H1>ping do $IP</H1>
Target[$IP]: \`echo 0 ;ping -f -c 10 $IP |tail -n 1 |cut -d "/" -f 5 |sed 's/\./ /g' |awk '{print \$1}'\`
MaxBytes[$IP]: 500
kilo[$IP]: 1000
ShortLegend[$IP]: &nbsp; ms
YLegend[$IP]: ms
Legend1[$IP]:
Legend2[$IP]: $IP
LegendI[$IP]:
LegendO[$IP]: $IP
#Options[$IP]: growright, gauge, nopercent, integer, nobanner, noinfo, nolegend

!EOF
done
rm $tmp_dir/wybor_ping

i ladnie wybor z okienka :)

Autor:  -MW- [ czwartek, 19 lutego 2009, 23:38 ]
Tytuł: 

a moze i dac mozliwosc zmiany czasu wykonania cyklu pracy przez mrtg?

: [/] [] ()
# czas wykonania skryptow
dialog --clear --title "Wybór cyklu wykonania skryptów mrtg" \
--backtitle "Konfigurator mrtg dla NND" \
--inputbox "Wpisz wartość co ile sekund mrtg ma generować wykresy:" 16 70 "600" \
2> $tmp_dir/wybor_czas
sel=$?

# wcisniety cancel - domyslna wartosc
if [ $sel = 1 ];then
    echo "300" > $tmp_dir/wybor_czas
fi
CZAS=`cat < $tmp_dir/wybor_czas`



: [/] [] ()
cat > $script_dir/mrtg.run <<!EOF
#!/bin/bash
while :; do
        sleep $CZAS
        mrtg $mrtg_conf_dir/mrtg.conf 1>/dev/null 2>&1
done

!EOF
chmod +x $script_dir/mrtg.run
rm $tmp_dir/wybor_czas

Autor:  -MW- [ wtorek, 24 lutego 2009, 18:19 ]
Tytuł: 

:)
jak juz tak zapunktowalem to zaproponuje jeszcze zmiane sekwencji
dotyczacej obciazenia procesora, ktora przy maszynach wieloprocesorowych nie sprawdzi sie.
wykres pokaze odpowiednio 200% i 400% obciazenia dla procesora dwu i cztero reczeniowego.

czyli zamiast standardowego wpisu obciazenia procka dajemy:


: [/] [] ()
PR=$[`cat </proc/stat | grep cpu |wc -l`-1]
if [ $PR = 0 ];then PR=1 ;fi

cat > $script_dir/cpu <<!EOF
#!/bin/sh
A=\`awk '/cpu /{print \$4}'</proc/stat\`
B=\`awk '/cpu /{print \$2+\$3+\$4;}'</proc/stat\`

echo \$[A/$PR]
echo \$[B/$PR]

uptime | sed -e 's/^.*up *//g' -e 's/, *[0-9] *u.*$//g'
hostname

!EOF
chmod +x $script_dir/cpu




: [/] [] ()
cat >>$mrtg_conf_dir/$mrtg_conf_file <<!EOF

Target[cpu]: \`$mrtg_conf_dir/cpu\`
Title[cpu]: Łączne użycie procesora na serwerze
PageTop[cpu]: <center> <H1>Łaczne użycie procesora na serwerze</H1>
MaxBytes[cpu]: 100
Unscaled[cpu]: ymwd
Options[cpu]: growright, nopercent, integer, nobanner, noinfo
LegendI[cpu]: &nbsp;user:
LegendO[cpu]: &nbsp;total:
Ylegend[cpu]: %
ShortLegend[cpu]: %
Legend1[cpu]: Czas spedzony trybie user
Legend2[cpu]: Czas spedzony trybie user + czas spedzony trybie system

!EOF

Autor:  -MW- [ wtorek, 24 lutego 2009, 18:22 ]
Tytuł: 

a dla chcacych ogladac obciazenie poszczegulnych rdzeni polecam wpis:


: [/] [] ()
# ============ obciazenie rdzenia
PR=$[`cat </proc/stat | grep cpu |wc -l`-1]
CPU=0

if [ $PR -gt 1 ];then
while [ $CPU -lt $PR ];do

cat >>$mrtg_conf_dir/$mrtg_conf_file <<!EOF

##Procek cpu$CPU
Target[cpu$CPU]: \`awk '/cpu$CPU /{print \$4; print \$2+\$3+\$4}'</proc/stat\`
Title[cpu$CPU]: Użycie rdzenia [ cpu$CPU ]
PageTop[cpu$CPU]: <center> <H1>Użycie rdzenia [ cpu$CPU ]</H1>
MaxBytes[cpu$CPU]: 100
Unscaled[cpu$CPU]: ymwd
Options[cpu$CPU]: growright, nopercent, integer, nobanner, noinfo
LegendI[cpu$CPU]: &nbsp;user:
LegendO[cpu$CPU]: &nbsp;total:
Ylegend[cpu$CPU]: %
ShortLegend[cpu$CPU]: %
Legend1[cpu$CPU]: Czas spedzony trybie user
Legend2[cpu$CPU]: Czas spedzony trybie user + czas spedzony trybie system

!EOF
CPU=$[CPU+1]

done
fi


i bedzie dodawany wylacznie w przypadku maszyn z wielordzeniowym procesorem na pokladzie.

ale o tym juz gdzies na forum pisalem :)
milej zabawy.

Autor:  stasziel [ środa, 25 marca 2009, 18:43 ]
Tytuł: 

Wpisując poniższe można sprawdzić jak rozkłada się obciążenie na poszczególne rdzenie. W/g moich obserwacji nigdy nie ma 50%/50%.

: [/] [] ()
Target[cpu01]: `/etc/mrtg/stosunek`
Title[cpu01]: Stosunek obciążenia procesorów
PageTop[cpu01]: <center> <H1>Stosunek obciążenia procesorów</H1>
MaxBytes[cpu01]: 100
Unscaled[cpu01]: ymwd
#Options[cpu01]: growright, nopercent, integer, nobanner, noinfo
LegendI[cpu01]: &nbsp;Procesor 1:
LegendO[cpu01]: &nbsp;Procesor 0:
Ylegend[cpu01]: %
ShortLegend[cpu01]: %
Legend1[cpu01]: Procesor 1
Legend2[cpu01]: Procesor 0


i jeszcze pliczek /etc/mrtg/stosunek

: [/] [] ()
#!/bin/sh
let cpu1=`awk '/cpu1 /{print $2+$3+$4}'</proc/stat`
let cpu=`awk '/cpu /{print $2+$3+$4}'</proc/stat`
let cpu0=`awk '/cpu0 /{print $2+$3+$4}'</proc/stat`
stosunek=`expr  100 \* $cpu1  / $cpu`
stosunek1=`expr  100 \* $cpu0  / $cpu`
echo $stosunek
echo $stosunek1
uptime | sed -e 's/^.*up *//g' -e 's/, *[0-9] *u.*$//g'
hostname


acha, i jeszcze w ...../mrtg/index.html trzeba dopisać:

: [/] [] ()
<tr><td><DIV><B>Stosunek obciążenia procesorów</B></DIV>
<DIV><A HREF="cpu01.html"><IMG BORDER=1 ALT="cpu01 Traffic Graph" SRC="cpu01-day.png"></A><BR>
<SMALL><!--#flastmod file="cpu01.html" --></SMALL></DIV>
</td></tr>

Autor:  -MW- [ środa, 25 marca 2009, 20:55 ]
Tytuł: 

ale jak podajsze to zrob to pod katem wklejenia do konfiguratora a nie recznego rozkladania plikow po katalogach, bedzie wygodniej i configurator sam zalatwi sprawe.

Strona 1 z 1 Strefa czasowa UTC+2godz.
Powered by phpBB® Forum Software © phpBB Group
https://www.phpbb.com/