Czy kiedykolwiek musieliście zmierzyć się w obrębie firmy z dziesiątkami aplikacji,
które generują TB-y logów dziennie?
Celem tej prezentacji jest pokazanie w jaki sposób używać Amazon OpenSearch,
jako najlepszego źródła przechowywania logów AWS w dużych i silnie regulowanych środowiskach.
3. Od wielu lat wspiera silnie regulowane rynki w migracjach do chmury AWS.
Zwycięzca Migration Prospecting Ninja, prestiżowej nagrody przyznawanej przez AWS.
Prywatnie mąż, ojciec trójki dzieci, właściciel border collie i pasjonat sauny.
Maciej Cetler
CTO and co-founder of
4. Czy kiedykolwiek musieliście zmierzyć się w obrębie firmy z dziesiątkami aplikacji,
które generują TB-y logów dziennie?
Celem tej sesji jest zaprezentowanie Wam w jaki sposób używać Amazon OpenSearch,
jako najlepszego źródła przechowywania logów AWS w dużych i silnie regulowanych środowiskach.
Na podstawie konkretnych przykładów przedstawię Wam jak wdrożyć system logowania
uwzględniający kwestie finansowe, prawne, czasowe oraz bezpieczeństwa.
Wstęp
Amazon OpenSearch - Logi dla dużych firm. Maciej Cetler (Tameshi)
5. 1. Czym jest OpenSearch/Amazon Opensearch
2. Wartość logów
3. Proste architektury OpenSearch
4. Prawdziwe architektury OpenSearch
5. Integracja z AWS
Agenda
6. Integracja z setkami aplikacji
7. RBAC (Role Based Access Control)
8. “Performance” klastrów
9. Koszty
10. Pytania?
Amazon OpenSearch - Logi dla dużych firm. Maciej Cetler (Tameshi)
6. OpenSearch jest projektem bazującym na ElasticSearch od wersji 7.10
Główne cechy Opensearch:
● Zaawansowane moduły bezpieczeństwa
● Wizualizacje
● Trace analytics
● Zarządzanie indeksami
● Wykrywanie anomalii
● integracja z ML
● Alerty
1. Czym jest OpenSearch
Amazon OpenSearch - Logi dla dużych firm. Maciej Cetler (Tameshi)
7. Amazon OpenSearch Service jest w pełni zarządzalnym
serwisem, który pozwala na skalowanie klastrów opartych o
OpenSearch bez konieczności ich monitorowania i utrzymywania
Zapewnia integrację z takimi usługami jak
● Amazon S3
● Amazon Kinesis
● Amazon SNS
● .. i inne
2. Czym jest Amazon OpenSearch
Amazon OpenSearch - Logi dla dużych firm. Maciej Cetler (Tameshi)
8. Definicja logów
“Szczegółowa lista informacji o aplikacji, wydajności systemu lub aktywności użytkownika.”
3. Czym są logi?
Benefity ze zbierania logów :
● możliwość reakcji na wydarzenia występujące w środowiskach
do których dostęp jest ograniczony lub niemożliwy
● znajdowanie błędów w aplikacjach
● wyciąganie wartości biznesowej
Wyzwania logów :
● koszty przechowywania (szczególnie w dużych środowiskach)
● przetwarzanie i przeszukiwanie dużej ilości danych
● spójność format logów
Amazon OpenSearch - Logi dla dużych firm. Maciej Cetler (Tameshi)
9. Wzbogacanie logów:
● informacje geograficzne
● “łączenie” logów pomiędzy różnymi systemami
Integracja pól pomiędzy aplikacjami:
● tworzenie słownika “standardowych” logów i ich sensu pomiędzy grupami aplikacji
● wyciągnięcie z pojedynczej linii logów danych wartości i przypisanie ich do wspólnego słownika
Anonimizacja:
● możliwość ukrycia wybranych elementów logów (np. danych wrażliwych)
4. Potencjał logów
Amazon OpenSearch - Logi dla dużych firm. Maciej Cetler (Tameshi)
10. Load Balancer (pojedyncza linia):
http 2018-07-02T22:23:00.186641Z
app/my-loadbalancer/50dc6c495c0c9188 192.168.131.39:2817….
field: http
time: 2018-07-02T22:23:00.186641Z
elb: app/my-loadbalancer/50dc6c495c0c9188
client: 192.168.131.39
client_port: 2817
dane wzbogacone np. na podstawie tagów Load Balancera:
application: jira
env: dev
5. Potencjał logów - przykład
Amazon OpenSearch - Logi dla dużych firm. Maciej Cetler (Tameshi)
11. 6. Sens logów - przykład dashboardu
Amazon OpenSearch - Logi dla dużych firm. Maciej Cetler (Tameshi)
15. 10. Integracja z AWS
AWS ELB
AWS
Security Hub
Amazon
Guard Duty
Amazon OpenSearch - Logi dla dużych firm. Maciej Cetler (Tameshi)
16. AWS CloudHSM
Amazon Inspector
AWS Directory Service
AWS Config
AWS Trusted Advisor
10. Integracja z AWS
Amazon CloudFront
Amazon Route 53 Resolver
AWS Client VPN
Amazon FSX
Amazon S3
Amazon RDS
Amazon ElastiCache
Amazon MSK
Amazon Workspaces
Amazon OpenSearch - Logi dla dużych firm. Maciej Cetler (Tameshi)
17. Źródła danych
● log4j
● analiza plików z logami
● pobieranie logów z zewn. źródeł
● open telemetry (APM)
11. Integracja z aplikacjami
Obróbka danych (ETL)
● filebeat
● fluentbit
● logstash
● lambda
Amazon OpenSearch - Logi dla dużych firm. Maciej Cetler (Tameshi)
18. Przy projektowaniu Amazon OpenSearch
należy wziąć pod uwagę przede wszystkim takie elementy jak :
● częstotliwość zapytań
● ilość danych spływających do OpenSearch
● wielkość klastrów logstash
● retencję danych
(prędkość przejścia z indeksów hot -> warm -> cold)
● wielkość indeksów
(im więcej indeksów tym więcej “otwartych” uchwytów)
● ograniczenia indeksów typu WARM
(opartych o ultrawarm)
● łączną ilość replik indeksów
(tak aby przetrwać awarie pojedynczych node i jednocześnie nie zginąć od wysokich kosztów)
12. Wydajność
Amazon OpenSearch - Logi dla dużych firm. Maciej Cetler (Tameshi)
19. 13. Typy danych w Amazon OpenSearch
5
dni
30 dni 365 dni > 365 dni
dane hot dane warm dane cold skasowanie
Typowy
life cycle
logów
hot
dane błyskawicznie przeszukiwalne,
dostępne z zerowym opóźnieniem,
przechowywane w ramach EBS lub
w ramach ephermal storage
warm
dane utrzymywane w ramach tzw.
ultra warm gdzie backendem jest
S3, dane wolniej dostępne
cold
dane ‘zamrożone’ utrzymywane w
ramach S3 (dane ‘tanie’)
Amazon OpenSearch - Logi dla dużych firm. Maciej Cetler (Tameshi)
20. RBAC:
● integracja z AD
● stworzenie mechanizmu “mapowania” pomiędzy aplikacjami / środowiskami aplikacji
● document level security
● field level security
Przykład implementacji / aplikacja:
● ad-elk-jira-dev - grupa dla logów z aplikacji “jira” w środowisku dev
● ad-elk-jira-all - grupa dla logów z aplikacji “jira” ze wszystkich środowis
● ad-elk-jira-prd - grupa dla logów z aplikacji “jira” w środowisku produkcyjnym
Przykład implementacji / funkcje:
● ad-elk-ops-all - grupa dla operatorów dająca wgląd w szerszy zbiór logów aplikacyjnych
14. RBAC (Role Based Access Control)
Amazon OpenSearch - Logi dla dużych firm. Maciej Cetler (Tameshi)
21. Ilość replik / index 1
Wolumen danych 500 GB logów / dzień
Dostęp do danych typu hot 5 dni
Dostęp do danych typu warm 30 dni
Zapotrzebowanie storage klastra hot 5 * 500 * (1 + 1) * 1.45 = 7.25TB.
Zapotrzebowanie storage klastra warm 30 * 500 = 15TB
(klastry ultra warm korzystają z S3 do przechowywania danych
stąd nie występuje potrzeba utrzymania replik)
15. Use case
Amazon OpenSearch - Logi dla dużych firm. Maciej Cetler (Tameshi)
22. Master node 3 x c5.large
Data node przyjmujemy max 2TB storage / node oraz uwzględniamy “awarie”/resharding
+ 6 x r5.2xlarge (optymalna wielkość RAM / data node*)
+ 2 TB EBS GP3 (razem 12 TB)
Warm storage 11 x ultra warm medium
(15TB / 1.5TB + 1)
* Typ instancji dla data node wymaga testów czy ilość CPU/RAM dla wybranego klienta są wystarczające
15. Use case
Amazon OpenSearch - Logi dla dużych firm. Maciej Cetler (Tameshi)
23. Założenia kosztowe no upfront, 1y, Frankfurt
Nie uwzględniono logstash / load balancers / Elasticache
Koszty data node: 2041 USD / miesiąc
master node: 216 USD / miesiąc
data node storage: 1740 USD / miesiąc
ultra warm: 2720 USD / miesiąc
ARR*: 80.6k USD / rok
15. Use case - koszty
Amazon OpenSearch - Logi dla dużych firm. Maciej Cetler (Tameshi)
*https://calculator.aws/#/estimate?id=5288608614280a7e7f933077799214721aebaa4b
24. Amazon OpenSearch
➔ potrafi przyjmować dane z dowolnego źródła
➔ daje potężne możliwości “łączenia” logów z różnych źródeł
➔ łatwość przeszukiwania logów
➔ przejrzystość analizy logów (dashboardy)
15. Podsumowanie
Amazon OpenSearch - Logi dla dużych firm. Maciej Cetler (Tameshi)