Skocz do zawartości
hicky

Skrypt statusu serwerów .

Polecane posty

Witam,

Poszukuję skryptu statusu serwerów via Biznes-host ./status/ . Czy istnieją takie darmowe lub jakieś płatne . Ew. Czy ktoś posiada na sprzedaż taki skrypt ?

Z tego co widziałem kiedyś to kamikadze miał, ale chyba tylko only 1 serwer .

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
Gość Kamikadze

Demo mojego skryptu: http://emimar.waw.pl/demo/index.php :)

 

Powiązać z kilkoma serwerami jest łatwo bo wrzucasz do na serwer1 i serwer2 i na serwerze3 jak chcesz aby wyświetlało się wszystko to po prostu napisać skrypt (testowałem taki już i działa) - pobieranie danych z innych skryptów ;)

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

http://phpsysinfo.sourceforge.net/

lub rozwiń sobie taki na przykład podstawowy:

<?php
// ==============================
// Server Uptime And Hardware Information |
// ==============================
?>

<html>
<head>
<title><?php echo $SERVER_NAME; ?> - Server Information</title>
<STYLE type=text/css>BODY { FONT-SIZE: 8pt; COLOR: black; FONT-FAMILY: Verdana,arial, helvetica, serif; margin : 0 0 0 0;}</STYLE>
</head>
<body>
<b>Uptime:</b> 
<?php system("uptime"); ?>
<b>System Information:</b>
<?php system("uname -a"); ?>
<b>Memory Usage (MB):</b> 
<?php system("free -m"); ?>
<b>Disk Usage:</b> 
<?php system("df -h"); ?>
<b>CPU Information:</b> 
<?php system("cat /proc/cpuinfo | grep \"model name\\|processor\""); ?>
</body></html>

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

http://phpsysinfo.sourceforge.net/

lub rozwiń sobie taki na przykład podstawowy:

<?php
// ==============================
// Server Uptime And Hardware Information |
// ==============================
?>

<html>
<head>
<title><?php echo $SERVER_NAME; ?> - Server Information</title>
<STYLE type=text/css>BODY { FONT-SIZE: 8pt; COLOR: black; FONT-FAMILY: Verdana,arial, helvetica, serif; margin : 0 0 0 0;}</STYLE>
</head>
<body>
<b>Uptime:</b> 
<?php system("uptime"); ?>
<b>System Information:</b>
<?php system("uname -a"); ?>
<b>Memory Usage (MB):</b> 
<?php system("free -m"); ?>
<b>Disk Usage:</b> 
<?php system("df -h"); ?>
<b>CPU Information:</b> 
<?php system("cat /proc/cpuinfo | grep \"model name\\|processor\""); ?>
</body></html>

 

 

Dzięki d.v o takie właśnie mi coś chodziło. Dorobić tylko ikonkę czy online czy off I będzie git . Łap plusa

 

 

To tak miało być czy nie ?

 

Klik

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
Gość Kamikadze

Ale ty chyba dane z kilku serwerów albo ja nie czaje... ;)

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Ten skrypt od d.v to jest na jednym serwerze jeden skrypt xD . Potem to sobie napisze w php prostą listę ;d. tylko wyświetla mi tam info z 1 serwa .

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Ja uzywam Cacti. Mozliwosci prawnie nieograniczone, zarzadzanie proste i bardzo elastyczne. Tylko trzeba ze 2-3 mu poswiecic zeby ogarnac dobrze.

 

U mnie monitoruje 12 serwerow, router i switcha, a serwer do monitoringu to slabiutka maszyna mimo to radzi sobie swietnie.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

a może zabbix ?

dzisiaj widziałem zabbixa monitorującego prawie 300 switchy i ruch na poziomie kilku gbps;-)

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Zobaczę, Luki jak mówisz że to tyle obsługuje . Bo chcę zrobić Do sieci osiedolwej Prosty skrypt . ktora baza online, u ktorego klienta cos ew. padlo .

No i do monitorowania szafy bo ode mnie do całego bajzlu jest 10 km. A jechać tylko tam po to żeby zobaczyć co nie odpowiada no to.. NO i też no prywatnych zastosowań,

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Sam Zabbix, to do monitorowania serwerów nadaje się dosyć dobrze.

Ale głównie dzięki temu, że na nich ma swojego agenta.

Zbiórka nim danych via SNMP wcale taka łatwa i przyjemna nie jest.

 

Jeśli chcesz mieć prosty skrypt do monitorowania dostępności, to może po prostu smokeping?

 

Jeśli coś bardziej skomplikowanego, zdolnego zbierać dokładniejsze dane z urządzeń, to (z opensourcowych darmowych) np. wspomniane wcześniej Cacti, albo też np. jffnms.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

A jakieś proste. Co odpytuje serwer po pingi i pokazuje ikonek zielona albo czerwona.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

@crazyluki

1) Musi być włączony URL wrapper, a to nie zawsze jest.

2) Wiesz co ten skrypt zwróci, jak serwer będzie niedostępny?

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

@crazyluki

 

jak padnie serwer http to dostaniesz false-positive, że cały serwer padł. Imo najlepiej zrobić to socketach (php -> fsockopen) na jakiś port który wiadomo, że zawsze będzie otwarty ( może ssh, on zwykle bez powodu nie pada) + dodatkowo ping ( pear -> Net_Ping)

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

@crazyluki

 

jak padnie serwer http to dostaniesz false-positive, że cały serwer padł. Imo najlepiej zrobić to socketach (php -> fsockopen) na jakiś port który wiadomo, że zawsze będzie otwarty ( może ssh, on zwykle bez powodu nie pada) + dodatkowo ping ( pear -> Net_Ping)

 

 

 

Bedę musiał powalczyć z tym Net_ping itd. ponieważ chcę to wdrożyć do sieci osiedlowej . Odpytywanie pingiem urządzeń w sieci jak i osoba kategoria MT klientów .

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
<?php// ============================== // Server Uptime And Hardware Information | // ============================== ?> <html> <head> <title><?php echo $SERVER_NAME; ?> - Server Information</title> <STYLE type=text/css>BODY { FONT-SIZE: 8pt; COLOR: black; FONT-FAMILY: Verdana,arial, helvetica, serif; margin : 0 0 0 0;}</STYLE> </head> <body> <b>Uptime:</b> <?php system("uptime"); ?> <b>System Information:</b> <?php system("uname -a"); ?> <b>Memory Usage (MB):</b> <?php system("free -m"); ?> <b>Disk Usage:</b> <?php system("df -h"); ?> <b>CPU Information:</b> <?php system("cat /proc/cpuinfo | grep \"model name\\|processor\""); ?>

</body></html>

 

Nie polecam Ci tego skryptu, odświeżając szybko stronę load może nieźle podskoczyć bo php wysyła cały czas te komendy. Lepiej napisać skrypt w bashu który zapisuje uptime serwera do pliku txt potem w cronie ustawic uruchamianie tego skryptu co kilka minut i przez php zaladowac plik txt na strone :)

 

//Edit

Jak chcesz mogę udostępnić Ci na PW skrypt "uptajmu" z http://biszkopcik.eu

Edytowano przez Biszkopcik (zobacz historię edycji)

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Nie polecam Ci tego skryptu, odświeżając szybko stronę load może nieźle podskoczyć bo php wysyła cały czas te komendy. Lepiej napisać skrypt w bashu który zapisuje uptime serwera do pliku txt potem w cronie ustawic uruchamianie tego skryptu co kilka minut i przez php zaladowac plik txt na strone :)

 

Pomijam juz bezpieczenstwo uzywania komendy system() i jej pochodnych w php. Po co pisac od nowa cos co juz zostalo napisane tyle razy? :) Ja bede zawsze powtarzal, ze Cacti roxx! :)

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
Ja bede zawsze powtarzal, ze Cacti roxx!

To powtarzaj... zaczynasz mi przypominać pewnego użytkownika, który to kiedyś do firmy z kilkoma komputerami, to chciał ciskacze i ActiveDirectory wdrażać...

 

Cacti, to może owszem, jest dobre. Ale jeśli się chce coś poważnie monitorować.

 

Dla odczytania głupiego loadu i uptime, to spokojnie wystarczy napisać prosty skrypcik wykonujący kilka SNMP-Getów i ewentualnie cacheujący to przez jakąś minutę, co by nie zabić serwera wciśnięciem F5. Jakieś 50 linijek kodu, plus instalacja snmpd na monitorowanych serwerach.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

To powtarzaj... zaczynasz mi przypominać pewnego użytkownika, który to kiedyś do firmy z kilkoma komputerami, to chciał ciskacze i ActiveDirectory wdrażać...

 

Cacti, to może owszem, jest dobre. Ale jeśli się chce coś poważnie monitorować.

 

Dla odczytania głupiego loadu i uptime, to spokojnie wystarczy napisać prosty skrypcik wykonujący kilka SNMP-Getów i ewentualnie cacheujący to przez jakąś minutę, co by nie zabić serwera wciśnięciem F5. Jakieś 50 linijek kodu, plus instalacja snmpd na monitorowanych serwerach.

 

Cacti to nie jest w standardzie duzy kombajn. Polecam bo jest bardzo elastyczne i jego skonfigurowanie zajmie na pewno mniej czasu niz napisanie wlasnego skryptu. Nie umiejszajac oczywiscie Waszym zdolnoscia koderskim, ale jakosc stworzonego przez siebie samego kodu raczej nie dorowna tego co tworzyli developerzy Cacti przez lata.

 

Sam jestem programista. Na koncie mam wiele sporych projektow, ale na system monitoringu bym sie nie porwal, bo zdaje sobie sprawe ile to jest roboty. Takze jak juz mowilem - po co wynajdywac kolo od nowa?

 

Ja mam Cacti monitorujace kilkanascie serwerow i innych klamotow na naprawde slabym serwerze, a i tak sie nudzi. Dlatego argument, ze Cacti jest ciezkie dla serwera raczej nie ma pokrycia w rzeczywistosci.

 

Konczac ten przydlugi post dodam, ze ja nikomu nie zabraniam pisac wlasnego oprogramowania, ale trzeba miec swiadomosc dostepnych na rynku rozwiazan.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

No to zobaczę dziś tego Cacti ogółem i status2k. com .

 

//Biszkopcik taki skrypt jak narazie właśnie mam.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

ale trzeba miec swiadomosc dostepnych na rynku rozwiazan.

Ale tu sam sobie zaprzeczasz chyba. Bo ty masz klapki na oczach i nic poza swoim megaukochanym i megaulubionym Cacti nie widzisz i nie chcesz przyjąć do wiadomości, że na rynku są dostępne także inne rozwiązania.

 

Cacti, to jak z resztą opis wskazuje, to jest głównie do rysowania wykresów przy pomocy rrdtoola.

A jeśli komuś nie są wykresy potrzebne, a prosty zrzut chwilowych wartości, to po co ma niby sobie utrudniać życie, i te skalary z wykresów odczytywać?

 

Poza tym - autorowi chodzi o monitorowanie dostępności urządzeń.

A w Cacti (domyślnej instalce) zaobserwować to się da... gapiąc się na wykresy (bo do tego ono jest natywnie stworzone) i patrząc, czy RTT/icmp drop rate nie są jakieś anormalne.

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Ale tu sam sobie zaprzeczasz chyba. Bo ty masz klapki na oczach i nic poza swoim megaukochanym i megaulubionym Cacti nie widzisz i nie chcesz przyjąć do wiadomości, że na rynku są dostępne także inne rozwiązania.

 

Cacti, to jak z resztą opis wskazuje, to jest głównie do rysowania wykresów przy pomocy rrdtoola.

A jeśli komuś nie są wykresy potrzebne, a prosty zrzut chwilowych wartości, to po co ma niby sobie utrudniać życie, i te skalary z wykresów odczytywać?

 

Poza tym - autorowi chodzi o monitorowanie dostępności urządzeń.

A w Cacti (domyślnej instalce) zaobserwować to się da... gapiąc się na wykresy (bo do tego ono jest natywnie stworzone) i patrząc, czy RTT/icmp drop rate nie są jakieś anormalne.

 

Znam tez inne rozwiazania i z nich korzystalem m.in. z Lstata i Nagiosa. Lstat jednak juz smierdzi padlina, a Nagios to faktycznie kombajn.

 

Do Cacti jest plugin Monitor do raportowania dostepnosci hostow. Poza tym ktos proponowal SmokePinga, ktory jest zintegrowany z Cacti do malowania ladnych wykresow odpowiedzi.

 

Ja tam nikogo nie namawiam. Podaje tylko konkretne argumenty za rozwiazaniem, ktore sam sprawdzilem i uzywam z powodzeniem. Nie musisz sie unosic - Ty masz swoje racje, ja mam swoje, a glowny zainteresowany wybierze co uzna za najlepsze. :D

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

a się wtrącę :) , nie będę zakładał nowego tematu bo moje pytanie jest bardzo podobne do tematu poruszanego tutaj :) . Otóż jakim poleceniem można wyciągnąć tylko wolną pamięć serwera? próbowałem <? echo exec ("free -m -g -t"); ?> lecz pokazuje mi 3 wartości total , swap i free a potrzebuje przecież tylko free :)

Udostępnij ten post


Link to postu
Udostępnij na innych stronach
Gość Kamikadze

Mniej więcej coś takiego:

exec ("cat /proc/meminfo", $details);

$wolnyram = $details[0];

Udostępnij ten post


Link to postu
Udostępnij na innych stronach

Bądź aktywny! Zaloguj się lub utwórz konto

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto

Zarejestruj nowe konto, to proste!

Zarejestruj nowe konto

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się


×