Podczas monitorowania serwera niezwykle ważna jest prawidłowa ocena obciążenia systemu. Zrozumienie poziomu obciążenia pozwala trzeźwo ocenić wydajność i dostępność systemu. W tym celu eksperci zazwyczaj szacują wskaźnik Load Average. O tym, co pokazuje i jak prawidłowo go mierzyć - w dalszej części naszego artykułu.
Load Average (LA, średnia obciążenia) jest średnią miarą obciążenia, jest wyświetlana w liczbie procesów, które są w stanie wykonywania lub w stanie oczekiwania na zasoby w przedziale czasowym 1, 5 i 15 minut. Aby najlepiej ocenić wydajność systemu, najlepiej jest spojrzeć na średnie obciążenie, ponieważ obciążenie zmienia się gwałtownie z powodu krótkotrwałych procesów.
Istnieje kilka prostych sposobów pomiaru średniego obciążenia. Najprostszym z nich jest napisanie i wykonanie polecenia. Na przykład w systemie Linux wystarczy uruchomić polecenie uptime w terminalu. Wyjście pokaże aktualny czas, czas działania systemu, liczbę użytkowników, a co najważniejsze, średnie obciążenie w przedziale 1, 5 i 15 minut. Obciążenie serwera można poznać, wykonując polecenie w za pośrednictwem konsoli SSH.
Wynik wygląda następująco:
Wartość średniego obciążenia jest obliczana na podstawie uruchomionych i oczekujących na wykonanie procesów (CPU, RAM, I/O). Największy wpływ na LA ma wykorzystanie CPU, które jest właściwie jedynym i kluczowym czynnikiem zwiększającym obciążenie serwera.
Oto prosty przykład: istnieje VPS z dwoma rdzeniami. Średnia wartość obciążenia na powyższym obrazku: 1.03, 1.11, 1.20 to normalne wartości obciążenia dla VPS z 2 rdzeniami.
1 (jednostka) LA = 100% obciążenia 1 rdzenia CPU. Jeśli VPS ma dwa rdzenie, średnie obciążenie może wynosić nawet 2 LA:
- LA pokazuje wartości 3.21, 4.22, 5.23 - obciążenie spada, ale w ciągu ostatnich 15 minut wynosiło średnio 4.22, co stanowi 422% obciążenia = 4 z 2 rdzeni nie jest normą;
- LA pokazuje 7.15, 5.24, 1.18 - obciążenie rośnie, a w ciągu ostatnich 15 minut wynosiło 1.18, w normalnych granicach, co równa się 118% obciążenia = 1 na 2 rdzenie - w normalnych granicach (szczytowe obciążenie trwające do 30 minut, powiedzmy).
Mając do dyspozycji trzy wartości, można przeanalizować stan systemu i ocenić jego wydajność. Jeśli wszystkie trzy wartości wynoszą 0, system znajduje się w trybie gotowości. Jeśli wartości rosną, oznacza to, że obciążenie rośnie, a jeśli maleją, oznacza to, że obciążenie maleje.
Należy wziąć pod uwagę, że system może doświadczyć dużej liczby skoków w przypadku jednoczesnego połączenia dużej liczby użytkowników. Oznacza to, że w połączeniu z poleceniami należy korzystać z różnych narzędzi monitorujących - Zabbix, Nagios, Monit. Rejestrują one aktywność procesora i pamięci w długim okresie.
W przypadku hostingu niezwykle ważne jest monitorowanie wartości LA. Działania hostera w przypadku wzrostu obciążenia będą zależały od przyczyny tego wzrostu. Na przykład, jeśli obciążenie rośnie, przekracza liczbę rdzeni i utrzymuje się przez długi czas, LA zwiększy kolejkę żądań do wykonania. W przypadku wirtualizacji KVM/OpenVZ wynikające z tego obciążenie jest niekorzystne dla serwera fizycznego.
Gdy użytkownik wykonuje kopię zapasową lub rozładowuje towary w 1C, w wyniku czego dochodzi do gwałtownych wzrostów obciążenia hostera, nie jest to poważny powód do niepokoju. Ale jeśli LA na serwerze fizycznym znacznie przekracza normę i zjawisko to utrzymuje się przez długi czas, często konieczne jest podjęcie pewnych działań, ponieważ wysokie LA ma negatywny wpływ na klientów, którzy umieścili swoje projekty na danym serwerze fizycznym.