Najlepszym sposobem stwierdzenia, czy dana usługa zdalna jest aktywna, jest poproszenie jej o obsługę żądania w sposób, w jaki jest przeznaczony - w rzeczywistości jest to jedyny sposób, aby naprawdę wiedzieć, że coś działa poprawnie.
Jako przykład zawsze otrzymuję od moich równoważników obciążenia, aby otrzymali rzeczywistą odpowiedź „z góry” z naszych serwerów WWW, możesz zrobić to samo dla małego wyboru na polu DB, jeśli chcesz lub cokolwiek twój serwer obsługuje. Wskazówka: możesz utworzyć plik „online.txt” (lub dowolną nazwę, którą chcesz nadać) na swoich serwerach internetowych, poproś LB o pobranie tego pliku, a jeśli się nie powiedzie, usunie serwer z VIP-a, to jest dobry sposób na ręczne usunięcie poszczególnych serwerów ze swoich VIP-ów po prostu przez zmianę nazwy jednego pliku.
Ping tylko testuje zdolność do reagowania na pingi, więc to jest podstawowy system operacyjny, części stosu IP i łącza fizyczne - ale to wszystko, wszystko inne może być wyłączone i nie będziesz wiedział.
Wiem, że wspomniano o tym poniżej, ale należy to powtarzać wielokrotnie.
Żądania echa ICMP (inaczej „pingi”) (inaczej ICMP typ 8) są wbudowane w specyfikację stosu IP, tak, ale nie muszą być ani implementowane, ani używane. W rzeczywistości istnieje duża liczba dostawców Internetu, którzy odmawiają przekazania dalej i po cichu odrzucają te żądania, ponieważ są one formą ataku sieciowego (zwanego pingflood).
Jak wspomniano powyżej, jest to obsługiwane przez system operacyjny (szczególnie na poziomie stosu sieciowego), więc konfiguracja systemu operacyjnego zależy od tego, czy nie. Jeśli jest to wyłączone (środek bezpieczeństwa?), Nie możesz nic zrobić z otrzymywaniem odpowiedzi ping z drugiego końca. Dlatego nie jest wiarygodny.
Jednak przez większość czasu tak:
niektóre serwery blokują żądania ping
tylko dlatego, że serwer odpowiada , nie oznacza to automatycznie, że strona internetowa (lub jakakolwiek usługa, której oczekujesz) będzie działać , powinieneś również sprawdzić, czy odpowiedź odpowiada oczekiwanej treści.
źródło
Prawdą jest, że w wielu przypadkach ruch ICMP jest odfiltrowywany, co może być zawodne ...
Być może lepszym sposobem może być telnetowanie serwera do interesującego cię portu serwisowego.
tj. telnet 127.0.0.1 8080
źródło
Jeśli serwer wymaga tylko odpowiedzi na pingi, jest to dobra metoda określenia jego dostępności. Jeśli wymagane jest na przykład świadczenie usługi internetowej, należy przeprowadzić test w celu sprawdzenia, czy działa on podobnie w przypadku usług plików itp.
źródło
ping ma 2 wady:
lepszym rozwiązaniem jest sprawdzenie bezpośrednio portu udp / tcp, aby sprawdzić, czy usługa jest nadal dostępna ... :-)
źródło
Istnieją specjalne narzędzia do testowania i monitorowania, takie jak Nagios / Icinga .
Za pomocą tych narzędzi możesz (oczywiście) przeprowadzać kontrole za pomocą różnych testów ping, ale także sprawdzać swoje usługi.
Wszystkie kontrole mogą wykorzystywać zwracaną wartość do klasyfikowania wyniku jako „dobry”, „ostrzegawczy” i „krytyczny” i mogą być napisane w prawie każdym języku programowania.
Oczywiście nie jest łatwy w konfiguracji (jak wskaż i kliknij), ale można go dostosować, niezawodny i rozszerzalny. Działa dobrze w różnych dystrybucjach Linux i Unix.
źródło
Przetestuj usługi, których szukasz, pingowanie serwera nie oznacza, że usługi działają.
Na przykład:
Wyobraź sobie serwer WWW z kilkunastoma stronami internetowymi, a następnie muszę wiedzieć, czy strony te działają poprawnie, zrobiłem sobie mały skrypt w php i uruchamiam go co 10 minut.
Skrypt wykonuje następujące czynności ->
źródło
Użycie polecenia ping do ustalenia, czy serwer jest dostępny, jest jak lekarz ER sprawdzający, czy pacjent oddycha. Tak, jest to dobre miejsce na rozpoczęcie, ale mogą występować inne problemy.
źródło
ping
Przed uruchomieniem usługi systemowej, która próbuje nawiązać połączenie ssh, używamy do sprawdzenia, czy host jest włączony i osiągalny. Oszczędza to trochę czasu debugowania, ponieważsystemctl start
polecenie natychmiast się nie powiedzie, zamiast po cichu zawieść i zgubić się w dżungli dzienników.Zauważ, że ping nie jest „niezawodny” w tym samym znaczeniu co TCP. Jeśli masz złe połączenie (lub gburowaty stos sieciowy, dziękuję Mps Intel ) i pakiety są odrzucane, pojedynczy ping może się nie powieść. Z drugiej strony połączenie TCP jest niezawodne w przypadku odrzuconych pakietów. Jak na ironię, połączenie ssh może działać natychmiast po pojedynczej
ping
awarii . Więc jeśli używasz polecenia ping do sprawdzenia poprawności psychicznej, pamiętaj, aby pozwolić na pewną awarię.źródło
Tylko moje dwa centy: Mamy starszą aplikację, która korzysta z tej metody i musieliśmy ją obsłużyć, ponieważ ping nie był wystarczający do określenia dostępności usługi.
Ping pokazuje tylko, że serwer jest w stanie nasłuchiwać, ale w naszym przypadku usługa nie mogła zostać uruchomiona bez interwencji człowieka.
W rezultacie jednostki, które naiwnie zakładały, że serwer jest dostępny, próbowały się połączyć i upłynął limit czasu. Zamiast wyświetlać nasz komunikat „Serwer jest niedostępny”.
-
Nasza obecna aplikacja, która komunikuje się za pośrednictwem XMLHTTPRequests z serwerem WWW, wysyła sformatowaną wiadomość, na którą serwer odpowie kodem stanu. Kod stanu jest obliczany przez serwer przeprowadzający szereg kontroli, aby upewnić się, że różne podsystemy są w trybie online (DB, niezbędne katalogi są zapisywalne itp.)
źródło
Jeśli w normalnych okolicznościach serwer odpowiada na ping, przydatne jest pingowanie go w jednominutowych odstępach, aby sprawdzić, czy odpowiada. To oczywiście mówi tylko, że pod tym adresem IP znajduje się serwer i że istnieje ścieżka sieciowa od źródła polecenia ping do miejsca docelowego. Ustawienie progu czasu odpowiedzi może również umożliwić monitorowanie stanu sieci. Jeśli pingujesz serwer przez Internet, możesz niewiele zrobić, aby naprawić sieć, ale jeśli klient zadzwoni, aby złożyć skargę, będziesz już świadomy problemu. Przydaje się także pingowanie google.com. Jeśli ty i Google oboje jesteście załamani, coś się dzieje.
Jak wspomnieli inni, ważne jest monitorowanie, czy usługa, którą świadczysz, odpowiada i czy jej wydajność jest OK. Tzn. Możesz chcieć sprawdzić, dlaczego wiek sieci, który zwykle reaguje w ciągu sekundy, odpowiada teraz, mam 10 sekund.
Wiedząc, że usługa nie reaguje i ping nie działa, daje znacznie więcej informacji niż tylko jedno podejście. Również jeśli monitorujesz procesy, wiedząc, że ping odpowiada, usługa nie odpowiada, a serwer WWW nie ma prawidłowej liczby procesów, mówi, gdzie szukać najpierw.
Możesz zwariować na punkcie monitorowania, więc wystarczy monitorować, aby powiedzieć Ci, kiedy stało się coś złego lub staje się niebezpieczne. Tzn. Za dużo zamiany,> 90% użycia dysku, wysoki dysk io, 100% procesora przez dłuższy czas i pamiętaj, że monitorowanie to tylko atak typu „odmowa usługi” przeprowadzany bardzo powoli.
źródło
Ping (Packet Internet Groper) informuje, czy Twój system komunikuje się z systemem, z którym chcesz nawiązać połączenie przez sieć. Nawet pinguje, nie oznacza, że usługa, na przykład usługa RemoteRegistry jest uruchomiona.
Jednak w celu rozwiązania problemu ping jest konieczny. Możesz zdalnie naprawić każdy problem. Dlatego ping ma swoje znaczenie.
źródło
Najlepszym sposobem, w jaki używam w moich skryptach jest
zamiast rsh można zastosować alternatywy takie jak remsh. Zapewnia to całkowite uruchomienie systemu zdalnego i uruchomienie na nim poleceń. Proste pingowanie nie jest wystarczające, ponieważ podczas uruchamiania, gdy usługi sieciowe są uruchomione, system zaczyna odpowiadać na ping.
źródło
rsh
? Naprawdę? Dlaczego nie użyćssh
zamiast tego?rsh
wssh
przeciwieństwie do tego, w jaki sposób zdolność do wykonywaniadate
(zakładając, że jesteś, na początek) mówi cokolwiek o tym, czy serwer WWW, serwer SMTP, serwer DNS, lokalny serwer bazy danych lub co tam działa i może obsłużyć żądania? Lepiej zapytać o konkretną usługę, dla której chcesz sprawdzić dostępność (która może być zdalną powłoką, ale na pewno nie musi).Po ponownym uruchomieniu serwera Windows otwieram okno wiersza polecenia i wchodzę
Najpierw zasugeruje, że jest dostępny - to pole spada. Wtedy będziesz mieć dużo czasu na żądanie. Gdy zaczniesz otrzymywać odpowiedzi, okno jest gotowe.
źródło