Prezentacja ENT_PL

advertisement
Monitorowanie aplikacji i rozwiązywanie
problemów
21 Maj 2015, Poznań
Adrian TUROWSKI
[email protected]
Agenda
 Po co monitorować aplikacje sieciowe?
 Sposoby monitorowania – SPAN vs. Netflow.
 Przykładowe narzędzia do monitorowania.
 Monitorowanie aplikacji w środowisku wirtualnym.
 Monitorowanie kodu aplikacji .NET i JAVA.
 Rozwiązywanie problemów aplikacji sieciowych – przykłady.
Po co monitorować aplikacje sieciowe?
Problem z aplikacją
Po co monitorować aplikacje sieciowe?
Aby mieć widok na:
 sieć
 całościowy ruch sieciowy
 jakość i wykorzystywanie aplikacji
 wrażenia użytkowników
 czasy odpowiedzi aplikacji
 opóźnienia w sieci
 retransmisje
Miejsce problemu
Sposoby monitorowania
Netflow vs. SPAN
Netflow
Kolektor
Oddział terenowy
WAN
Data Center
Oddział terenowy
SPAN
Sonda
WAN
SPAN
Oddział terenowy
Internet
Serwery
Data Center
Oddział terenowy
SPAN
Sonda
SPAN
Sonda
WAN
SPAN
Oddział terenowy
Sonda
Internet
SPAN
Serwery
Data Center
Oddział terenowy
SPAN vs. Netflow
Dostarczane dane
SPAN
Netflow
Adresy IP (źródłowy i docelowy)
√
√
Porty (źródłowy i docelowy)
√
√
Ilość pakietów
√
√
Ilość danych (b/s)
√
√
Flagi TCP
√
√ (suma flag)
Interfejsy (ruch wychodzący i przychodzący)
√
Interfejsy wykorzystanie przepustowości
√
Quality of Service
√
Próby połączeń TCP (SYN)
√
Udane połączenia (three-way handshake SYN-SYN/ACK-ACK)
√
Zerwane połączenia (FIN bez ACK)
√
Resetowane połączenia (RST)
√
Retransmisje
√
Opóźnienia RTT
√
Czas odpowiedzi serwera
√
Czas odpowiedzi do użytkownika
√
Dodatkowe statystyki dla wyższych warstw
√ (np. http, sql, citrix, voip)
√
√ (opcjonalnie http)
Przykładowe narzędzia do monitorowania
Riverbed AppResponse
Analiza
Dane aplikacyjne
(pakiety i przepływy)
* Moduły opcjonalne
Wszystkie
aplikacje
Analiza
strumieni
aplikacji TCP
Aplikacje
WWW
Analiza
transakcji
WWW
Wszystkie
aplikacje
Moduł
NetShark*
Citrix XenApp
Moduł CXTracer*
Bazy danych
SQL
Moduł baz
danych*
Połączenia
VoIP i wideo
Moduł VoIP
i wideo*
Dane wydajnościowe
Statystyki
wydajnościowe
i archiwum
pakietów
Zalety rozwiązania

Pasywne monitorowanie – Port Mirroring / SPAN

Wgląd w działanie wszystkich aplikacji sieciowych

Przedstawianie czasów odpowiedzi dla aplikacji i serwerów

Monitorowanie jakości działania aplikacji i wrażeń użytkowników końcowych

Wykrywanie problemów z wydajnością sieci, serwerów i aplikacji

Monitorowanie opóźnień sieciowych i retransmisji

Wykrywanie anomalii sieciowych:

•
duże ilości zerwanych połączeń - robaki, nieaktywne usługi sieciowy
•
użycie protokołów nie szyfrowanych – trojany, wyciek loginów i haseł
Integracja z akceleratorami WAN Riverbed SteelHead
Wgląd w działanie wszystkich aplikacji sieciowych
Czasy odpowiedzi aplikacji i serwerów
Czasy odpowiedzi aplikacji
Wszystkie wykryte aplikacje
Całkowity ruch sieciowy
Monitorowanie jakości działania aplikacji i wrażeń
użytkowników końcowych
Jakość działania aplikacji
Wrażenia użytkowników
Wykrywanie problemów z wydajnością sieci,
serwera / aplikacji 1
Czas odpowiedzi do użytkownika
Czas odpowiedzi serwera
Czas nawiązania połączenia
Retransmisje
Czas transferu danych
Opóźnienie sieci
Wykrywanie problemów z wydajnością sieci,
serwera / aplikacji 2
Problem z siecią
Problem z serwerem / aplikacją
Monitorowanie opóźnień sieciowych i
retransmisji
Wykrywanie anomalii sieciowych:
użycie protokołów nie szyfrowanych
Riverbed NetExpress
NetExpress
Korelowanie i deduplikowanie
danych ze SPAN oraz Netflow
Analiza, analityka, wizualizacja
oraz raportowanie
Przechwytywanie i
przechowywanie pakietów
Kolektor Netflow
Analiza pakietów
Deduplikacja
Port Mirroring / SPAN
Netflow
Netflow – problem duplikacji
Kolektor
Oddział terenowy
Data Center
Oddział terenowy
Monitorowanie wykorzystania przepustowości na
łączach WAN
Wykorzystanie przepustowości łącza
Monitorowanie ruchu na łączach WAN
Monitorowanie klas ruchu na interfejsach WAN
Quality of Service
Klasa ruchu - znacznik DSCP
Monitorowanie aplikacji w środowisku
wirtualnym
Zastosowanie wirtualnych sond do
monitorowania aplikacji w środowisku wirtualnym
SPAN
?
ESXi Host
?
ESXi Host
Zastosowanie wirtualnych sond do
monitorowania aplikacji w środowisku wirtualnym
Zastosowanie wirtualnych sond do
monitorowania aplikacji w środowisku wirtualnym
SPAN
ESXi Host
ESXi Host
Monitorowanie kodu aplikacji .NET i JAVA
AppInternals – monitorowanie kodu aplikacji

Analiza kodu .NET, JAVA

Monitorowanie wywoływanych klas, metod, zapytań SQL

Rejestrowanie wystąpień wyjątków w kodzie źródłowym

Wskazywanie miejsca problemu (serwer aplikacji, WEB, SQL)

Zbieranie informacji o otwieranych adresach URL

Identyfikowanie użytkowników mających problem: login, adres IP

Zbieranie podstawowych informacji o wydajności systemu: zajętość pamięci
serwera, obciążenie procesorów, operacje dyskowe

Monitorowanie operacji wykonywanych na pamięci (Garbage Collection)
AppInternals
podstawowa architektura
Analizy
Kolekcja
danych
Transaction Trace
Warehouse
Service Management
Platform
Baza danych
Baza danych (Oracle/MS)
AppInternals
Dynamic
Sampling
Agent
Dynamic
Sampling
Agent
Dynamic
Sampling
Agent
DA Java
DA .NET
DA SQL
DA Java
Linux
Win
Win
DA
DA
DA
Dane zbierane
przez agentów
Szybkie identyfikowanie problemu z wydajnością
aplikacji
1. Identyfikowanie kto i w jakiej lokalizacji
ma problem z wydajnością aplikacji
2. Przejście do wykresu kropkowego
przedstawiającego wszystkie problemy z
wydajnością aplikacji dla danej lokalizacji
3. Przejście do konkretnej transakcji i
przedstawienie gdzie jest problem
4. Korelowanie transakcji do wykrycia
na co problem ma największy wpływ
Calls price.jws
Transactions that show the issue
Does not call price.jws
These transactions do not show any sign of the issue
Dashboards
widok na wszystko
“Problemy sieciowe i aplikacyjne są teraz wykrywane i
rozwiązywane w ciągu zaledwie kilku minut”
Raport z testów na Politechnice Poznańskiej
Ruch sieciowy
Jakość aplikacji
Czasy odpowiedzi serwerów 1
Czasy odpowiedzi serwerów 2
Problemy z siecią 1
Problemy z siecią 2
Problemy z siecią 3
Problemy z siecią 4
Monitorowanie HTTP 1
Monitorowanie HTTP 2
Nieudane połączenia 1
Nieudane połączenia 2
Nieudane połączenia 3
Nieudane połączenia 4
Duża ilość nawiązywanych połączeń
przez klienta – skanowanie?
Wykrywanie protokołów
nieszyfrowanych
Rozwiązywanie problemów aplikacji
sieciowych – przykłady na żywo
Rozwiązywanie problemów aplikacji
sieciowych – AppTransaction
AppTransaction Xpert
gdzie pasuje?
AppResponse Xpert
Shark Module
Packet Analyzer /
NetShark
AppTransaction Xpert
Dostarczenie globalnej widoczności
Identyfikacja i lokalizacja anomalii
Filtrowanie pojedynczych
transakcji
Analiza transakcji
Zalecenia
naprawy
AppTransaction Xpert
AppDoctor

Szczegółowe posumowanie

Identyfikowanie „wąskich gardeł” wpływających na wydajność
Symulacja optymalizacji WAN
QuickPredict

Przewidzenie jaki wpływ będzie miała akceleracja WAN
• Określenie wielkości redukcji czasów odpowiedzi dla wielu scenariuszy np.:
 Dla oddziałów w rożnych lokalizacjach
 Dla oddziałów z rożnymi przepustowościami łącza
Czasy transakcji w
istniejącej
infrastrukturze
Te same transakcje z
użyciem akceleracji
WAN
Rozwiązywanie problemów aplikacji
sieciowych – Packet Analyzer
Download