Strategie monitorowania infrastruktury

12

Ostatnio miałem problemy z przestojem w niektórych witrynach Drupal, które wdrożyłem. Chciałbym podejść do problemu proaktywnie, zamiast reagować na te przestoje poprzez ponowne uruchomienie usług lub samego serwera. Czytałem o narzędziach do monitorowania, takich jak nagios, Munin, kaktusy itp. Do monitorowania stanu twojego serwera / infrastruktury, ale tak naprawdę nie próbowałem żadnego z nich w produkcji. Zajmuję się Drupalem prawie 99% razy i chciałbym znaleźć sugestie dotyczące monitorowania zarówno na poziomie serwera, jak i monitorowania na poziomie Drupal (kodu aplikacji).

Zasadniczo chciałbym otrzymywać powiadomienia, gdy obciążenie serwera jest wysokie, być może wskazywane przez winowajcę (lub ofiarę), aby móc podejmować świadome decyzje. Chciałbym również wiedzieć, czego ludzie używają do monitorowania poziomu Drupala (takiego jak e-mail), gdy pojawia się błąd / ostrzeżenie PHP. (Co się stanie, gdy sam serwer e-mail nie działa?)

Dipen
źródło

Odpowiedzi:

6

Jeśli chcesz monitorować kilka witryn Drupal z tego samego miejsca za pomocą alertów itp. Mogę powiedzieć, że nie jesteś jedyny. Zaczyna być niszą biznesową, wypełnioną przez:

Oba są komercyjnymi rozwiązaniami SaaS, z bezpłatnymi ograniczonymi opcjami wypróbowania usługi.

Istnieje również opcja monitorowania Open Source Zabbix z jego modułem Drupal http://drupal.org/project/zabbix , ale wtedy powinieneś skonfigurować i zbudować serwer.

Wszystkie te opcje mają moduły Drupal, które wysyłają informacje o serwerze i dane drupal do serwera monitorowania.

AKTUALIZACJA. Munin ma również specyficzny moduł Drupala , z gałęzią 2.x opartą na Drushie.

corbacho
źródło
Wypróbowałem nowy relikt z Drupalem i muszę powiedzieć, że jest naprawdę bardzo obszerny w dobry sposób przez większość czasu (xhprof mniej więcej jest dobrym substytutem śladów transakcji w NR, ale zbieranie danych jest niezbędne). Słyszałem również o przyjęciu przez drupal.org nagios do monitorowania, dziękuję za odpowiedź, poczekam jeszcze kilka dni na kilka więcej, zanim ją wybierzę.
Dipen
5

Niezależnie od tego, którego używasz, zdecydowanie sugerowałbym, że - o ile nie masz pełnoetatowego personelu IT - nie utrzymuj własnego monitorowania: polegaj na usłudze całkowicie niezależnej od twoich serwerów. Jedną rzeczą jest wyłączanie serwera publicznego, innym jest wyłączanie go i nie wiedzieć o nim, ponieważ serwer monitorujący jest wyłączony. Większość usług monitorowania obejmuje wszystkie wymagania wymienione od razu po wyjęciu z pudełka.

Ale ryzykując, że zostanie to przekształcone w pytanie dotyczące rekomendacji zakupowych, usługą, której używam do wymienionych przez ciebie wymagań, jest Pingdom :

  • Informuje, czy strony są aktywne (oczywiście)
  • Mierzy, jak długo trwa odpowiedź
  • Mierzy szybkość reakcji i dostępność na dowolnym niestandardowym porcie TCP / UDP
  • Sprawdzanie dostępności poczty e-mail
  • Umożliwia niestandardowe żądania HTTP, pozwalając przetestować różne aspekty aplikacji
  • Obszerne raportowanie
  • Monitorowanie na całym świecie, a oni dodają około kilkunastu kolejnych witryn monitorowania co kilka miesięcy
kiamlaluno
źródło
Korzystam już z site24x7.com, a także pingdom (dla witryny diff) do powiadamiania, chciałem monitorować, który proaktywnie mówi mi o zużyciu zasobów lub potencjalnych problemach i ściśle integruje się ze środowiskiem serwerowym. Dzięki za odpowiedź.
Dipen
2

Oto kilka sugestii agresywnych wobec Drupala:

  • Are My Sites Up będzie okresowo sprawdzać ping na serwerach i wysyłać Ci e-maile (lub SMS-y, jeśli otrzymasz pakiet niewolny), jeśli Twoja witryna jest offline lub nie odpowiada.
  • Load Impact to kolejne świetne bezpłatne narzędzie, które może przetestować twoją stronę internetową w taki sposób, abyś mógł stwierdzić, kiedy dokładnie zaczyna się ona zawodzić.

Jeśli chodzi o samą aplikację Drupal, sugerowałbym użycie Xdebug + Webgrind lub XHProf do profilowania kodu i pilnowanie tego pytania: Najlepszy sposób na przetestowanie wydajności stosu Drupal

Alex Weber
źródło
Dzięki za poinformowanie mnie o wpływie obciążenia, korzystam z jmeter, ale to jest więcej pracy przy konfigurowaniu twoich planów testów itp. Mam nadzieję, że wpływ obciążenia może poradzić sobie z symulacjami uwierzytelnionymi przez drupal.
Dipen
1

Lubię pingdom dla małych / średnich witryn, ponieważ jest to użyteczne: mówi ci, że coś jest nie tak z punktu widzenia klienta, co jest możliwe do wykonania. Rzeczy takie jak średnia obciążeń tak naprawdę nic nie znaczą, chyba że masz szalenie źle skonfigurowany stos (czego nie powinieneś) lub nie wbijasz się w Digg / Reddit (w takim przypadku i tak nic nie możesz zrobić, powinieneś mieć przygotowany).

Z bloga Teda Dziuby:

Tego rodzaju alerty nazywam Cool Story, w skrócie Bro. Są to fragmenty informacji, które nie wskazują żadnego rodzaju problemu i nie powodują żadnych działań. Fajne historie to rzeczy, na które nie powinieneś nawet otrzymywać alertów. Marnują twój czas i powodują paranoję. Alerty Cool Story Bro to między innymi:

  • Przeciętne obciążenie serwera przekracza 20.
  • W kolejce zadań znajduje się więcej niż X jednostek roboczych. Gratulacje, dupku, twoja kolejka robi dokładnie to, co powinna.
  • Niektóre wskaźniki są większe niż ustalona empirycznie średnia. Tak mnie to obraża.

Przeczytaj post na blogu, jest przezabawny.

Entendu
źródło
0

Używam check_drupal do monitorowania różnych witryn drupal. Jest to wtyczka nagios, która nie wymaga żadnych zmian kodu w samej witrynie Drupal. Jedynym wymaganiem jest to, że drush musi być obecny na serwerze.

lockdoc
źródło