Performance "statystyki" bez PerfStat lub OPS mgr
przez Chris Kranz na Apr.01, 2009, w ramach Generalnego
PerfStat to świetny sposób, aby uzyskać pewne dość szczegółowe informacje o wydajności z filtr antyspamowy, gdy masz wydajność lub inne zagadnienia, które nie można całkiem umieścić palec na. Musisz mieć dostęp do przeglądarki PerfStat lub dostać ktoś do przetworzenia tego wyjście dla Ciebie, a następnie musisz włoka przez niego.
Doradca wydajności Operations Manager, a dokładniej jest genialny i 99% czasu daje liczników musisz zdiagnozować problem. Po znalezieniu odwrotnie to, to jest całkowicie niezbędna!
Ale co, jeśli nie masz Operations Manager, lub po prostu chcesz szybko wyciągnąć informacje na temat jednego obszaru systemu?
Pierwsze rzeczy, które chcesz spojrzeć na sysstat r. Everyone najlepszym przyjacielem i doskonałym sposobem widzenia "Czy mój system zajęty?". Przy każdym uruchomieniu sysstat, upewnij się, że przez to "-s" modyfikator, aby uzyskać podsumowanie na koniec wyjścia. Jeśli nie określić liczbę iteracji (-c <numer>), a następnie CTRL + C, aby przerwać produkcję. "-X" jest wielki podając wszystkie obszary produkcji, ale może być trochę szeroki czasami. "-U" jest moim ulubionym ponieważ daje odczyty wykorzystania i to zazwyczaj najbardziej przydatne podczas rozwiązywania problemów.
Większość kolumn są dość wymowne. Procesor jest zajęty%, NFS, CIFS, HTTP, FCP oraz iSCSI są wszystkie liczniki operacje protokołu. Net kB / s i obecnie są oczywiste (dla porównania jeden interfejs Gigabit przyjemnością utrzymać około 80 MB / s, ale można rozciągnąć do 110/120MB/s). Dysk i Tape in & out. Obejrzyj wiek cache, gdy robi się naprawdę nisko, ale jest lepsze liczniki dla tego. Hit cache jest licznik chcesz, jak blisko 100%, jak to możliwe. Im więcej danych jest coraz odczytywane z pamięci podręcznej, tym lepiej! Typ CP Punkty konsystencję, nie będę wchodzić w szczegóły, co to, to bardzo dobry artykuł KB na to już (https://now.netapp.com/Knowledgebase/solutionarea.asp?id=kb23471) . I wreszcie Wykorzystanie dysku, który wydaje się powodować pewne zamieszanie. To jest odczyt z jednego dysku najbardziej ruchliwych w systemie, a nie średnią. Ta lektura może ciekawie go o 100% (podobnie jak CPU może też), a to oznacza po prostu dyski robią więcej niż powinni!
Więc sysstat to świetny sposób, aby uzyskać wysoki widok poziom "Czy mój system zajęty", a także daje przybliżone pojęcie o tym, gdzie wąskim gardłem jest. Jeśli procesor jest naprawdę wysoka, ale nic poza tym, to jest to co wstrzymuje system. Jeżeli wykorzystanie dysku jest bardzo wysoka, potem znowu, tutaj jest problem. Ale to nie są przekonywujące dane, i nie wskazują bezpośrednio na winnego. Na przykład, jeśli wykorzystanie dysku jest bardzo wysoki, być może trzeba uruchomić WAFL realokacji jak masz dodano kilka nowych dysków i nie są one trzymając jeszcze żadnych danych. Jeżeli Twój procesor jest bardzo wysoka, może to oznaczać, że robisz wiele innych przetwarzania jak A-SIS i SnapVault, lub może być całkowicie losowe IO tak CPU pracuje ciężej na próbują dokonać obliczeń wokół tego.
Następnym krokiem może być spojrzenie na statit. "Priv zestaw zaawansowanych" polecenie, a nie za udawanie serca, wielki komend w celu uzyskania migawkę szczegółów w okresie. Wystarczy uruchomić "statit-B" na początku okresu monitorowania, a następnie "statit-e" na końcu. Upewnij się zalogować okna wyjściowego jak dostaniesz dużo od statit (ponad standardowego Windows i Putty bufor pokaże). Istnieje wiele statit wyjścia, i nie pójdę na zbyt szczegółowo w nim wszystko tutaj (ale może inny dzień). Większość z nich jest dość wymowne bardzo.
To prowadzi mnie na prawdziwym powodem tego artykułu w pierwszej kolejności. Jeden z moich ulubionych komend, a na pewno w dużej mierze pomijane jeden "statystyki". Ma to wiele informacji na jego ręki, prawie nic widać w Advisor wydajności i wszystko można przekazać w PerfStats jest dostępna w poleceniu statystyk. I prawdopodobnie o wiele więcej! "Statystyki" działa bardzo podobnie do sysstat w tym, że zgłasza liczniki oparte na iteracji. Jeśli po prostu go uruchomić, będzie to zgłosić co system robi w tym dokładnego czasu. Jeśli powiesz jej uruchomić co 5 sekund, będzie to zgłosić, co się wydarzyło w ciągu tych 5 sekund.
A więc najpierw w górę, nie tylko w polecenie "Pokaż statystyki" bez konieczności kilka minut, aby oszczędzić. Wyjście jest bardzo kompletny! Najpierw chcemy zobaczyć co liczniki są dostępne. Statystyki są podzielone na "obiektów", "Przypadki" i "Lady". Aby pokazać każdy, możemy użyć "listę statystyki ..."
filer01> lista obiektów statystyki
Obiekty:
Zrzuć
logical_replication_source
logical_replication_destination
vfiler
qtree
kruszywo
iSCSI
FCP
cifs
tom
LUN
cel
nfsv3
ifnet
Procesor
dysk
system
filer01> statystyki lista przypadki ifnet
Wystąpienia w imieniu obiektu: ifnet
B2net
Storage-101
filer01> statystyki lista liczniki ifnet
Liczniki Nazwa obiektu: ifnet
recv_packets
recv_errors
send_packets
send_errors
Kolizje
recv_data
send_data
recv_mcasts
send_mcasts
recv_drop_packets
Jako przykład powyżej, mogę pokazać wszystkie obiekty dostępne do mnie, mogę zapytać wszystkich wystąpień sieciowych mam setup (2 VIFs, 1 z VLAN), i widzę, co liczniki mogę zgłosić na. Więc wprowadzenie tego razem ...
filer01> statystyki pokazują ifnet: Składowanie-101: kolizje
ifnet: Składowanie-101: Zderzenia: 0 / s
Świetnie, mój interfejs pamięci nie ma żadnych kolizji sieciowych za okres ten został uruchomiony! To dobra wiadomość dla mnie!
Jeśli chcę uruchomić to przez kilka iteracji, mogę karmić ją trochę więcej opcji. Uwaga: Opcje musi iść przed przeciw informacji!
filer01> statystyki show-n 5-i 1 ifnet: Składowanie-101: kolizje
Kolizje instancji
/ S
Storage-101 0
Storage-101 0
Storage-101 0
Storage-101 0
Storage-101 0
Świetnie, więc w ciągu 5 sekund nie jestem wciąż się kolizje!
Zauważysz z góry, że istnieje wiele liczników wydajności dostępnych, a nie wszystkie z nich mają najwięcej nazw verbose. Można wyszukać każdy z nich poprzez uruchomienie "Statystyki wyjaśniają liczników".
filer01> statystyki wyjaśnić liczniki ifnet kolizje
Liczniki Nazwa obiektu: ifnet
Nazwa: kolizje
Opis: zderzeń na sekundę na interfejsach CSMA
Właściwości: stopy
Jednostka: per_sec
Więc weźmy inny przykład, chcę patrzeć na odczyty opóźnienia na moim systemie Exchange ...
filer01> statystyki show-n 5-i 1 objętość: exch01_db: objętość read_latency: exch01_db: objętość write_latency: exch01_logs: objętość read_latency: exch01_logs: write_latency
Instancja read_latency write_latenc
ms ms
exch01_db 0 0
exch01_logs 0 0
exch01_db 0 0
exch01_logs 0 0
exch01_db 0 0
exch01_logs 0 0
exch01_db 0 0
exch01_logs 0 0
exch01_db 0 0
exch01_logs 0 0
Jest 8 rano, nikt z zespołu sprzedaży nie śpi jeszcze! Nagłówki kolumn się nieco wypaczone, ale widać czytać opóźnienia w pierwszej kolumnie, a następnie napisz opóźnienia w sekund.
Jednym z moich największych skarg sysstat co się dzieje, jeśli chcę utrzymać ten bieg przez pewien okres czasu i zaloguj wyjście? Cóż, mogę zmienić "autologout opcji" i opuścić mój laptop podłączony, ale to nigdy nie jest dobry pomysł. "Statystyki" daje Ci możliwość rury wszystkie wyjścia statystyki bezpośrednio do pliku. Brilliant wiadomość!
filer01> statystyki show-n 5-i 1-o / etc / stats.txt objętość: exch01_db: objętość read_latency: exch01_db: objętość write_latency: exch01_logs: objętość read_latency: exch01_logs: write_latency
filer01> rdfile / etc / stats.txt
Instancja read_latency write_latenc
ms ms
exch01_db 0 16,00
exch01_logs 0 0
exch01_db 0 0
exch01_logs 0 0
exch01_db 0 8,00
exch01_logs 0 0
exch01_db 0 0
exch01_logs 0 0
exch01_db 0 1,00
exch01_logs 0 0
Niestety nie za darmo konsolę, więc skryptów to z RSH lub SSH może być najlepszym, ale uważaj jak długo uruchamiać iteracji za!
Kolejną miłą cechą jest to, że można mieć kilka presetów. Więc jeśli masz 4 Wymiana serwerów każdy z 3 baz danych, a następnie można załadować całą objętość: <vol_name>: odczyt / polecenia write_latency do pliku i wydać to bezpośrednio z polecenia statystyki. Presety plików to pliki XML, więc mają one trochę myśli na piśmie, ale jeśli widzieliście XML przed, to nie jest takie trudne.
Mój plik XML wygląda tak ...
<? Xml version = "1.0"?>
<preset>
<object name="volume">
instancji> name="exch01_db">
<counter name="read_latency">
</ Licznik>
<counter name="write_latency">
</ Licznik>
</ Przykład>
instancji> name="exch01_logs">
<counter name="read_latency">
</ Licznik>
<counter name="write_latency">
</ Licznik>
</ Przykład>
</ Object>
</ Preset>
Po zapisaniu w pliku / etc / stats / pamięci jako ". Xml" pliku, mogę zadzwonić bezpośrednio z poziomu wiersza statystyk.
filer01> statystyki show-p wymiana-i 1-n 5
Instancja read_latency write_latenc
ms ms
exch01_db 0 0
exch01_logs 0 0
exch01_db 0 0
exch01_logs 0 0
exch01_db 0 0,13
exch01_logs 0 0,12
exch01_db 0 0,00
exch01_logs 0 0,00
exch01_db 0 0
exch01_logs 0 0
Możliwości są ogromne dla tego, ale to otwiera się coś jeszcze lepszego. Teraz możemy używać "Stats Start" i "statystyki stop", aby wywołać ten sprawozdawczości i otrzymam konsolę z powrotem!
filer01> stats start-p wymiana
Nazwa identyfikator statystyki jest "Ind0x6920b2f0"
filer01> statystyki show-I Ind0x6920b2f0
StatisticsID: Ind0x6920b2f0
Objętość: exch01_db: read_latency: 0ms
Objętość: exch01_db: write_latency: 5.14ms
Objętość: exch01_logs: read_latency: 0ms
Objętość: exch01_logs: write_latency: 0.00ms
filer01> statystyki stop-ja Ind0x6920b2f0
StatisticsID: Ind0x6920b2f0
Objętość: exch01_db: read_latency: 0ms
Objętość: exch01_db: write_latency: 5.36ms
Objętość: exch01_logs: read_latency: 0ms
Objętość: exch01_logs: write_latency: 0.00ms
Mam nadzieję, że zaczynają zdawać sobie sprawę, dlaczego lubię to polecenie, i dlatego możliwości korzystania z tego są ogromne, a że jest bardzo mocny w istocie!
Jedną z ostatnich rzeczy dodać, istnieje wiele liczników dostępnych domyślnie w normalnym trybie uprzywilejowanym, ale spróbuj włączony do zaawansowanych, a nawet diag i zobacz ile liczniki są dostępne wtedy! To jest przytłaczające, ale przy odrobinie kopanie, bardzo silny.
Ostatnią rzeczą, można użyć symboli wieloznacznych w "Pokaż statystyki" polecenia, tak aby wyciągnąć wszystkie liczniki dla mojej bazy danych Exchange ...
filer01> statystyki objętość show: exch01_db: *
Objętość: exch01_db: avg_latency: 0.00ms
Objętość: exch01_db: total_ops: 3 / s
Objętość: exch01_db: read_data: 0b / s
Objętość: exch01_db: read_latency: 0ms
Objętość: exch01_db: read_ops: 0 / s
Objętość: exch01_db: WRITE_DATA: 12288b / s
Objętość: exch01_db: write_latency: 0.00ms
Objętość: exch01_db: write_ops: 3 / s
Objętość: exch01_db: other_latency: 0ms
Objętość: exch01_db: other_ops: 0 / s
Lub pokaż wszystkie read_latency dla wszystkich moich tomów ...
filer01> objętość Pokaż statystyki: *: read_latency
Objętość: vol0: read_latency: 0ms
Objętość: exch01_db: read_latency: 0ms
objętość: Strona główna: read_latency: 0ms
Objętość: backup: read_latency: 0ms
Objętość: akcja: read_latency: 0ms
Jeśli masz jakieś konkretne pytania, lub chcesz zapytać jak uzyskać konkretne informacje licznika z systemu, prosimy o przesłanie mi na pytanie. Nadzieję, że ta jest przydatna dla każdego!











































01 kwietnia 2009 o 2:06 pm
statystyki jest wielkim polecenie użyć do zbierania danych dla długoterminowych trendów też (jeśli same dane nie jest narażony na SNMP MIB) - na przykład na danych o wydajności głośności nie jest dostępna poprzez SNMP MIB - Mam wpis w blogu o tym, jak zbierać i zapewniają, że niektóre wykresy przykład na http://aditya.grot.org/2009/02/netapp-ontap-per-volume-statistics.html~~pobj
09 lipiec 2009 o 5:59 pm
Kilka świetnych narzędzi dostępnych do tłumaczenia wyjście z "Stats" dostępne na NetApp Wspólnot - http://communities.netapp.com/docs/DOC-2092~~HEAD=pobj
02 marca 2011 o 10:42
Wielki Post Chris, bardzo pouczające i na pewno nie coś, co jest ujęte w żadnej z dokumentacje "fundamentals" - lub nawet raporty techniczne Przeczytałem do tej pory.