Dodawanie węzłów Cassandra

Edge for Private Cloud w wersji 4.18.01

Z tego dokumentu dowiesz się, jak dodać 3 nowe węzły Cassandra do istniejącej instalacji Edge for Private Cloud.

Możesz dodać 1 lub 2 węzły Cassandra do istniejącej instalacji Edge, ale Apigee zaleca dodanie 3 węzłów naraz.

Listę wymagań systemowych dla węzła Cassandra znajdziesz w artykule Wymagania dotyczące instalacji.

Istniejąca konfiguracja Edge

We wszystkich obsługiwanych topologach Edge w systemie produkcyjnym używanie 3 węzłów Cassandra jest określone. Te 3 węzły są określone we właściwości CASS_HOSTS w pliku konfiguracyjnym w następujący sposób:

IP1=10.10.0.1
IP2=10.10.0.2
IP3=10.10.0.3
HOSTIP=$(hostname -i)
ADMIN_EMAIL=opdk@google.com 
APIGEE_ADMINPW=Secret123
LICENSE_FILE=/tmp/license.txt 
MSIP=$IP1 
USE_LDAP_REMOTE_HOST=n 
LDAP_TYPE=1
APIGEE_LDAPPW=secret 
MP_POD=gateway
REGION=dc-1 
ZK_HOSTS="$IP1 $IP2 $IP3" 
ZK_CLIENT_HOSTS="$IP1 $IP2 $IP3" 
# Must use IP addresses for CASS_HOSTS, not DNS names.
CASS_HOSTS="$IP1:1,1 $IP2:1,1 $IP3:1,1" 
SKIP_SMTP=n
SMTPHOST=smtp.example.com 
SMTPUSER=smtp@example.com  
SMTPPASSWORD=smtppwd       

Pamiętaj, że właściwość REGION określa nazwę regionu jako „dc-1”. Te informacje będą potrzebne przy dodawaniu nowych węzłów Cassandra.

zmodyfikować plik konfiguracji, aby dodać 3 nowe węzły Cassandra;

W tym przykładzie 3 nowe węzły Cassandra mają te adresy IP:

  • 10.10.0.14
  • 10.10.0.15
  • 10.10.0.16

Aby dodać nowe węzły, musisz najpierw zaktualizować plik konfiguracji Edge:

IP1=10.10.0.1
IP2=10.10.0.2
IP3=10.10.0.3
# Add the new node IP addresses.
IP14=10.10.0.14
IP15=10.10.0.15
IP16=10.10.0.16
HOSTIP=$(hostname -i)
ADMIN_EMAIL=opdk@google.com 
...
# Update CASS_HOSTS to add each new node after an existing nodes. 
# Must use IP addresses for CASS_HOSTS, not DNS names.
CASS_HOSTS="$IP1:1,1 $IP14:1,1 $IP2:1,1 $IP15:1,1 $IP3:1,1 $IP16:1,1" 

Ważne: dodaj każdy nowy węzeł Cassandra do CASS_HOSTS po istniejącym węźle.

Dzięki temu istniejące węzły zachowają początkowe ustawienia tokenów, a początkowy token każdego nowego węzła będzie znajdować się między wartościami tokenów istniejących węzłów.

Konfigurowanie Edge

Po zmodyfikowaniu pliku konfiguracji:

  • Ponowna konfiguracja istniejących węzłów Cassandra
  • Instalowanie systemu Cassandra w nowych węzłach
  • Ponowna konfiguracja serwera zarządzania

Ponownie skonfiguruj istniejące węzły Cassandra

Na istniejących węzłach Cassandra:

  1. Ponownie uruchom plik setup.sh z profilem „-p c” i nowym plikiem konfiguracji:
    > /opt/apigee/apigee-setup/bin/setup.sh -p c -f updatedConfigFile

Instalowanie systemu Cassandra na nowych węzłach

Na każdym nowym węźle Cassandra:

  1. Zainstaluj system Cassandra na 3 węzłach:
    1. Zainstaluj narzędzie apigee-setup w pierwszym węźle zgodnie z opisem w sekcji Instalowanie narzędzia Edge apigee-setup.
    2. Zainstaluj Cassandra na pierwszym węźle, używając zaktualizowanego pliku konfiguracji:
      > /opt/apigee/apigee-setup/bin/setup.sh -p c -f updatedConfigFile
    3. Powtórz te 2 kroki w przypadku pozostałych nowych węzłów Cassandra.
  2. Utwórz ponownie 3 nowe węzły Cassandra, podając nazwę regionu ustawioną w pliku konfiguracji za pomocą właściwości REGION. W tym przykładzie jest to „dc-1”:
    1. Na pierwszym węźle uruchom:
      > /opt/apigee/apigee-cassandra/bin/nodetool -h nodeIP rebuild dc-1
      gdzie nodeIP to adres IP węzła Cassandra.
    2. Powtórz ten krok w przypadku pozostałych nowych węzłów Cassandra.

Ponowna konfiguracja serwera zarządzania

Na węźle serwera zarządzania

  1. Uruchom ponownie plik setup.sh, aby zaktualizować serwer zarządzania nowo dodanymi węzłami Cassandra:
    > /opt/apigee/apigee-setup/bin/setup.sh -p ms -f updatedConfigFile

Uruchom ponownie wszystkie routery i procesory wiadomości

  1. Na wszystkich routerach:
    > /opt/apigee/apigee-service/bin/apigee-service edge-router restart
  2. Na wszystkich procesorach wiadomości:
    > /opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart

Wolna pamięć w istniejących węzłach Cassandra

Na istniejących węzłach Cassandra uruchom polecenie cleanup w narzędziu Nodetool, aby zwolnić pamięć:

> /opt/apigee/apigee-cassandra/bin/nodetool -h cassandraIP cleanup