Ta sekcja opisuje okresowe zadania konserwacyjne w systemie Cassandra.
Konserwacja zapobiegająca entropii
Węzły pierścienia Apache Cassandra wymagają okresowej konserwacji, aby zapewnić spójność we wszystkich węzłach. Aby przeprowadzić tę konserwację, użyj tego polecenia:
apigee-service apigee-cassandra apigee_repair -pr
Podczas uruchamiania tego polecenia Apigee zaleca:
- Uruchamianie w każdym węźle Cassandra (we wszystkich regionach lub centrach danych).
Uruchamianie w jednym węźle naraz, aby zapewnić spójność we wszystkich węzłach pierścienia. Uruchamianie zadań naprawy w wielu węzłach jednocześnie może pogorszyć stan systemu Cassandra.
Aby sprawdzić, czy zadanie naprawy w węźle zostało wykonane, poszukaj w pliku
system.logwęzła wpisu z identyfikatorem UUID najnowszej sesji naprawy i frazą „session completed successfully”. Oto przykładowy wpis logu:INFO [AntiEntropySessions:1] 2015-03-01 10:02:56,245 RepairSession.java (line 282) [repair #2e7009b0-c03d-11e4-9012-99a64119c9d8] session completed successfully" Ref: https://support.datastax.com/hc/en-us/articles/204226329-How-to-check-if-a-scheduled-nodetool-repair-ran-successfully
- Uruchamianie w okresach stosunkowo niskiego obciążenia (narzędzie znacznie obciąża system ).
- Uruchamianie co najmniej co 7 dni, aby wyeliminować problemy związane z „zapomnianymi usunięciami” w systemie Cassandra.
- Uruchamianie w różnych węzłach w różne dni lub zaplanowanie tak, aby między uruchomieniem w poszczególnych węzłach było kilka godzin.
- Używanie opcji
-pr(zakres partycjonowania), aby określić tylko podstawowy zakres partycjonowania węzła.
Jeśli włączysz uwierzytelnianie JMX w systemie Cassandra,
podczas wywoływania nodetool musisz podać nazwę użytkownika i hasło. Na przykład:
apigee-service apigee-cassandra apigee_repair -u username -pw password -pr
Aby sprawdzić obsługiwane opcje apigee_repair:, możesz też uruchomić to polecenie:
apigee-service apigee-cassandra apigee_repair -h
Uwaga: apigee_repair to otoka narzędzia naprawy nodetool w systemie Cassandra,
która przed wykonaniem naprawy w systemie Cassandra przeprowadza dodatkowe kontrole.
Więcej informacji znajdziesz w tych materiałach:
Konserwacja plików dziennika
Dzienniki Cassandra są przechowywane w katalogu /opt/apigee/var/log/apigee-cassandra w
każdym węźle. Domyślnie można utworzyć maksymalnie 50 plików dziennika, z których każdy może mieć maksymalnie 20 MB.
Po osiągnięciu tego limitu starsze dzienniki są usuwane, gdy tworzone są nowsze.
Jeśli stwierdzisz, że pliki dziennika Cassandra zajmują zbyt dużo miejsca, możesz zmodyfikować ilość miejsca przydzielonego na pliki dziennika, edytując ustawienia log4j.
- Edytuj
/opt/apigee/customer/application/cassandra.propertiesaby ustawić te właściwości. Jeśli ten plik nie istnieje, utwórz go:conf_logback_maxfilesize=20MB # max file size conf_logback_maxbackupindex=50 # max open files
- Uruchom ponownie system Cassandra za pomocą tego polecenia:
/opt/apigee/apigee-service/bin/apigee-service apigee-cassandra restart
Konserwacja miejsca na dysku
Regularnie sprawdzaj wykorzystanie dysku Cassandra, aby upewnić się, że co najmniej 50% każdego dysku jest wolne. Jeśli wykorzystanie dysku przekroczy 50%, zalecamy dodanie więcej miejsca na dysku, aby zmniejszyć procent zajętego miejsca.
Aby zmniejszyć wykorzystanie dysku, system Cassandra automatycznie wykonuje te operacje:
- Usuwanie tokenów uwierzytelniania po ich wygaśnięciu. Jednak w zależności od konfiguracji zwolnienie miejsca na dysku, które zajmowały tokeny, może potrwać kilka tygodni. Jeśli automatyczne usuwanie nie wystarczy, aby utrzymać wystarczającą ilość miejsca na dysku, skontaktuj się z zespołem pomocy, aby dowiedzieć się, jak ręcznie usunąć tokeny i odzyskać miejsce.
Kompaktowanie danych: począwszy od Edge for Private Cloud 4.51.00, nowe instalacje Apigee Cassandra tworzą przestrzenie kluczy ze strategią kompaktowania na poziomie.
Instalacje wcześniejszych wersji Edge dla chmury prywatnej, które zostały uaktualnione do Edge dla chmury prywatnej 4.54.00, zachowują poprzednią strategię kompaktowania. Jeśli dotychczasowa strategia kompaktowania to
SizeTieredCompactionStrategy, Apigee zaleca zmianę naLeveledCompactionStrategy, która zapewnia lepsze wykorzystanie dysku. Instrukcje znajdziesz w artykule Zmiana strategii kompaktowania Cassandra.
Uwaga: gdy system Cassandra wykonuje kompaktowanie danych, może to zająć znaczną ilość cykli procesora
i pamięci. Po zakończeniu kompaktowania wykorzystanie zasobów powinno jednak wrócić do normy.
Aby sprawdzić, czy kompaktowanie jest w toku, możesz uruchomić polecenie 'Nodetool compactionstats' w każdym węźle. Dane wyjściowe compactionstats informują, czy są jakieś kompaktowania do wykonania i jaki jest szacowany czas ich ukończenia.