W tej sekcji znajdziesz ogólne wskazówki dotyczące skalowania operacji Cassandra przez w Apigee Edge na potrzeby wykrywania stojaka w chmurze prywatnej.
Więcej informacji o tym, dlaczego ważne jest informowanie o stojaku pierścieniowym Cassandra, przeczytaj te artykuły zasoby:
- Replikacja (dokumentacja Cassandra)
- Cassandra Architektura Strategia współczynnika replikacji
Co to jest stojak?
Stojak Cassandra to logiczna grupa węzłów Cassandra w pierścieniu. Cassandra, korzysta z stojaków, aby zapewnić rozłożenie replik między różne grupy logiczne. Jako operacje są wysyłane nie tylko do jednego węzła, ale do wielu węzłów, każdy na osobnym stojaku, co zapewnia większą odporność na awarie i większą dostępność.
W przykładach w tej sekcji są używane trzy stojaki Cassandra, czyli liczba szaf serwerowych obsługiwane przez Apigee w topologach produkcyjnych.
Domyślna instalacja systemu Cassandra w Apigee Edge dla Private Cloud zakłada 1 stojak logiczny i umieszcza wszystkie węzłów znajdujących się w centrum danych. Instalacja i zarządzanie tą konfiguracją jest proste, może ulec awarii, jeśli operacja na jednym z tych węzłów zakończy się niepowodzeniem.
Poniższy obraz przedstawia domyślną konfigurację pierścienia Cassandra:
.W bardziej niezawodnej konfiguracji każdy węzeł byłby przypisany do oddzielnego stelażu i operacji będzie również wykonywane w replikach w każdym z tych stelażów.
Ilustracja poniżej przedstawia pierścień z 3 węzłami. Ilustracja przedstawia kolejność wykonywania operacji zreplikowane w pierścieniu (w prawo) i podkreśla fakt, że żadne dwa węzły nie są na tym samym stojak:
.W tej konfiguracji operacje są wysyłane do węzła, ale także do jego replik na innych stelażach (w kolejności zgodnie z ruchem wskazówek zegara).
Dodaj rozpoznawalność stojaka (z 3 węzłami)
Wszystkie topologie instalacji produkcyjnej Apigee Edge for Private Cloud mają co najmniej 3 węzły Cassandra, których dotyczy ta sekcja odnoszą się do: „IP1”, „IP2” i „IP3”. Domyślnie każdy z tych węzłów znajduje się w tym samym stojaku, „ra-1”.
W tej sekcji opisano, jak przypisać węzły Cassandra do osobnych szaf serwerowych, aby wszystkie operacje są wysyłane do węzłów replik w oddzielnych grupach logicznych wewnątrz pierścienia.
Aby podczas instalacji przypisać węzły Cassandra do różnych szaf serwerowych:
- Przed uruchomieniem instalatora zaloguj się w węźle Cassandra i otwórz
ten plik konfiguracji cichej do edycji:
/opt/silent.conf
Utwórz plik, jeśli nie istnieje, i upewnij się, że atrybut „apigee” użytkownika jako właściciela.
- Edytuj właściwość
CASS_HOSTS
, czyli listę adresów IP oddzielonych spacjami (nie DNS ani wpisy nazwy hosta) o takiej składni:CASS_HOSTS="IP_address:data_center_number,rack_number [...]"
Wartość domyślna to pierścień Cassandra z 3 węzłami, z którym każdy węzeł jest przypisany do szafy rack 1 i danych środek 1, jak widać w tym przykładzie:
CASS_HOSTS="IP1:1,1 IP2:1,1 IP3:1,1"
- Zmień przypisania stojaków tak, aby węzeł 2 był przypisany do szafy rack 2, a węzeł 3 był przypisany do
stojaka 3, jak w poniższym przykładzie:
CASS_HOSTS="IP1:1,1 IP2:1,2 IP3:1,3"
Zmieniając przypisania stojaka, otrzymujesz od Cassandra polecenie utworzenia dwóch dodatkowych grupowania (stojaki), które następnie dostarczają repliki odbierające wszystkie operacje odebrane przez pierwszego węzła.
Więcej informacji o korzystaniu z właściwości konfiguracji
CASS_HOSTS
znajdziesz w artykule Odniesienie do pliku konfiguracji brzegowej. - Zapisz zmiany w pliku konfiguracji i wykonaj następujące polecenie, aby zainstalować aktualizację.
Cassandra ze zaktualizowaną konfiguracją:
/opt/apigee/apigee-setup/bin/setup.sh -p c -f path/to/silent/config
Na przykład:
/opt/apigee/apigee-setup/bin/setup.sh -p c -f /opt/silent.conf
- Powtórz tę procedurę dla każdego węzła Cassandra w pierścieniu, w kolejności, w której
są przypisane w usłudze
CASS_HOSTS
. W takim przypadku musisz zainstalować system Cassandra. w tej kolejności:- Węzeł 1 (IP1)
- Węzeł 2 (IP2)
- Węzeł 3 (IP3)
Po instalacji sprawdź konfigurację Cassandra.
Sprawdzanie konfiguracji Cassandra
Po zainstalowaniu konfiguracji Cassandra zależnej od stelażu możesz sprawdzić, czy węzły
i przypisać je do różnych stelaż za pomocą polecenia nodetool status
,
następujący przykład:
/opt/apigee/apigee-cassandra/bin/nodetool status
To polecenie wykonujesz na jednym z węzłów Cassandra.
Wyniki powinny wyglądać mniej więcej tak, jak poniżej, gdzie kolumna Rajd pokazuje różne identyfikatory stojaków dla każdego węzła:
Datacenter: dc-1 ======================== Status=Up/Down |/ State=Normal/Leaving/Joining/Moving -- Address Load Tokens Owns Host ID Rack UN IP1 737 MB 256 ? 554d4498-e683-4a53-b0a5-e37a9731bc5c ra-1 UN IP2 744 MB 256 ? cf8b7abf-5c5c-4361-9c2f-59e988d52da3 ra-2 UN IP3 723 MB 256 ? 48e0384d-738f-4589-aa3a-08dc5bd5a736 ra-3
Jeśli masz włączone uwierzytelnianie JMX dla Cassandra, musisz też podać swoją nazwę użytkownika i
hasło do nodetool
. Więcej informacji:
Użyj narzędzia nodetool do zarządzania węzłami klastra.
Zamontuj pierścień z 6 węzłami
Aby uzyskać dodatkową nadmiarowość, możesz rozszerzyć pierścień Cassandra do 6 węzłów. W tym przypadku przypisz po 2 węzły do każdego z 3 stojaków. Ta konfiguracja wymaga 3 dodatkowych węzłów: Węzeł 4 (IP4), Węzeł 5 (IP5) i Węzeł 6 (IP6).
Poniższa ilustracja przedstawia kolejność, w jakiej operacje są replikowane w pierścieniu (w prawo) i podkreśla fakt, że podczas replikacji żadne dwa sąsiednie węzły nie znajdują się na tym samym stojak:
.W tej konfiguracji każdy węzeł ma jeszcze 2 repliki: po jednej w każdym z pozostałych 2 stojaków. Dla: na przykład węzeł 1 w szafie rack 1 ma replikę w szafach Rack 2 i Rack 3. Operacje wysyłane do węzła 1 również są uwzględniane wysyłane do replik w innych stelażach, w kolejności zgodnie z ruchem wskazówek zegara.
Aby rozwinąć pierścień Cassandra z 3 węzłami do pierścienia Cassandra z 6 węzłami, skonfiguruj węzły w w następujący sposób w pliku konfiguracji cichej:
CASS_HOSTS="IP1:1,1 IP4:1,3 IP2:1,2 IP5:1,1 IP3:1,3 IP6:1,2"
Podobnie jak w przypadku pierścienia z 3 węzłami, musisz zainstalować system Cassandra w tej samej kolejności, w której węzły
pojawiają się we właściwości CASS_HOSTS
:
- Węzeł 1 (IP1)
- Węzeł 4 (IP4)*
- Węzeł 2 (IP2)
- Węzeł 5 (IP5)
- Węzeł 3 (IP3)
- Węzeł 6 (IP6)
* Wprowadź zmiany w pliku konfiguracji cichej przed uruchomieniem narzędzia konfiguracyjnego. w czwartym węźle (drugiej maszynie w zamówieniu instalacji Cassandra).
Rozwiń do 12 węzłów
Aby jeszcze bardziej zwiększyć odporność na awarie i dostępność, możesz zwiększyć liczbę funkcji Cassandra węzłów w pierścieniu, od 6 do 12. Ta konfiguracja wymaga 6 dodatkowych węzłów (od IP7 do IP12).
Poniższa ilustracja przedstawia kolejność, w jakiej operacje są replikowane w pierścieniu (w prawo) i podkreśla fakt, że podczas replikacji żadne dwa sąsiednie węzły nie znajdują się na tym samym stojak:
.Procedura instalowania pierścienia z 12 węzłami jest podobna do instalacji pierścienia z 3 lub 6 węzłami:
ustaw CASS_HOSTS
na podane wartości i uruchom instalator w określonej kolejności.
Aby rozwinąć do 12-węzłowego pierścienia Cassandra, skonfiguruj węzły w trybie cichym w następujący sposób plik konfiguracyjny:
CASS_HOSTS="IP1:1,1 IP7:1,2 IP4:1,3 IP8:1,1 IP2:1,2 IP9:1,3 IP5:1,1 IP10:1,2 IP3:1,3 IP11:1,1 IP6:1,2 IP12:1,3"
Tak jak w przypadku pierścieni z 3 i 6 węzłami, instalator musisz wykonać w węzłach w kolejności w których węzły pojawiają się w pliku konfiguracji:
- Węzeł 1 (IP1)
- Węzeł 7 (IP7)*
- Węzeł 4 (IP4)
- Węzeł 8 (IP8)
- Węzeł 2 (IP2)
- Węzeł 9 (IP9)
- Węzeł 5 (IP5)
- Węzeł 10 (IP10)
- Węzeł 3 (IP3)
- Węzeł 11 (IP11)
- Węzeł 6 (IP6)
- Węzeł 12 (IP12)
* Przed zainstalowaniem Apigee Edge dla Private Cloud w 7 węźle (drugiej maszynie w zamówienie instalacji Cassandra).