Dodawanie węzłów ZooKeeper

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

Do istniejącej instalacji Edge możesz dodać 1 lub 2 węzły ZooKeeper, jednak upewnij się, że masz nieparzystą liczbę węzłów głosujących ZooKeeper, jak opisano poniżej.

Istniejąca konfiguracja Edge

Wszystkie obsługiwane topologie Edge w przypadku systemu produkcyjnego wymagają użycia 3 węzłów ZooKeeper. Te 3 węzły są określone w parametrach ZK_HOSTS i Właściwości ZK_CLIENT_HOSTS w pliku konfiguracyjnym, jak pokazano poniżej:

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"
CASS_HOSTS="$IP1:1,1 $IP2:1,1 $IP3:1,1"
SKIP_SMTP=n
SMTPHOST=smtp.example.com
SMTPUSER=smtp@example.com
SMTPPASSWORD=smtppwd

Gdzie:

  • ZK_HOSTSokreśla adresy IP lub nazwy DNS węzłów ZooKeeper. Adresy IP lub nazwy DNS muszą być wymienione w tej samej kolejności na wszystkich węzłach ZooKeeper. W środowisku z wieloma centrami danych wyświetl wszystkie węzły ZooKeeper z obu centrów danych.
  • ZK_CLIENT_HOSTS określa adresy IP lub nazwy DNS węzłów ZooKeeper używanych przez to centrum danych. Adresy IP lub DNS muszą być podane w tej samej kolejności we wszystkich węzłach ZooKeeper.

    W jednej instalacji centrum danych są to te same węzły określone przez ZK_HOSTS W środowisku z wieloma centrami danych wyświetlaj tylko węzły ZooKeeper w tym centrum danych.

Zmodyfikowanie pliku konfiguracyjnego w celu dodania oraz trzy nowe węzły ZooKeeper

W tym przykładzie trzy nowe węzły ZooKeeper znajdują się pod następującymi adresami 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 ZK_HOSTS to add each new node after an existing nodes.
ZK_HOSTS="$IP1 $IP2 $IP3 $IP14 $IP15 $IP16:observer"
# Update ZK_Client_HOSTS to add each new node after an existing nodes.
ZK_CLIENT_HOSTS="$IP1 $IP2 $IP3 $IP14 $IP15 $IP16"

Oznacz ostatni węzeł w regionie ZK_HOSTS znakiem z Modyfikator :observer. Węzły bez modyfikatora :observer nazywamy „głosującymi”. W konfiguracji musisz mieć nieparzystą liczbę „głosujących”. W tej konfiguracji masz więc 5 głosujących serwerów ZooKeeper i 1 obserwatora.

Pamiętaj, aby dodać węzły do obu właściwości ZK_HOSTSZK_CLIENT_HOSTS w tej samej kolejności. Jednak podczas ustawiania ZK_CLIENT_HOSTS pomiń modyfikator :observer.

Skonfiguruj Edge

Po wprowadzeniu zmian w pliku konfiguracji musisz wykonać wszystkie poniższe czynności.

Zainstaluj ZooKeeper w nowych węzłach

  1. Zainstaluj apigee-setup na pierwszym węźle zgodnie z instrukcjami w artykule Instalowanie narzędzia do konfiguracji apigee w Edge.
  2. Zainstaluj ZooKeeper na pierwszym węźle, używając tych poleceń:
    /opt/apigee/apigee-service/bin/apigee-service apigee-zookeeper install
    /opt/apigee/apigee-service/bin/apigee-service apigee-zookeeper setup -f updatedConfigFile
  3. Powtórz kroki 1 i 2 w przypadku pozostałych nowych węzłów ZooKeeper.

Ponowne skonfigurowanie istniejących węzłów ZooKeeper

Na istniejących węzłach ZooKeeper:

  1. Uruchom ponownie polecenie konfiguracji z nowym plikiem konfiguracyjnym:
    /opt/apigee/apigee-service/bin/apigee-service apigee-zookeeper setup -f updatedConfigFile

Uruchom ponownie wszystkie węzły Zookeeper

Na wszystkich węzłach ZooKeeper:

  1. Ponownie uruchom węzeł:
    /opt/apigee/apigee-service/bin/apigee-service apigee-zookeeper restart

    Musisz ponownie uruchomić wszystkie węzły ZooKeeper, ale kolejność ponownego uruchamiania nie ma znaczenia.

Ponowne konfigurowanie serwera zarządzania węzeł

W węźle serwera zarządzania:

  1. Uruchom polecenie konfiguracji:
    /opt/apigee/apigee-service/bin/apigee-service edge-management-server setup -f updatedConfigFile
  2. Ponownie uruchom serwer zarządzania:
    /opt/apigee/apigee-service/bin/apigee-service edge-management-server restart

Ponowne konfigurowanie wszystkich routerów

We wszystkich węzłach routera:

  1. Uruchom polecenie konfiguracji:
    /opt/apigee/apigee-service/bin/apigee-service edge-router setup -f updatedConfigFile
  2. Ponownie uruchom router:
    /opt/apigee/apigee-service/bin/apigee-service edge-router restart

Skonfiguruj ponownie wszystkie procesory wiadomości.

We wszystkich węzłach procesora wiadomości:

  1. Uruchom polecenie konfiguracji:
    /opt/apigee/apigee-service/bin/apigee-service edge-message-processor setup -f updatedConfigFile
  2. Ponownie uruchom przetwarzacz wiadomości:
    /opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart

Zmień konfigurację wszystkich węzłów Qpid

Na wszystkich węzłach Qpid:

  1. Uruchom polecenie konfiguracji:
    /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server setup -f updatedConfigFile
  2. Uruchom ponownie Qpid:
    /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server restart

Skonfiguruj ponownie wszystkie węzły Postgres

We wszystkich węzłach Postgres:

  1. Uruchom polecenie konfiguracji:
    /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server setup -f updatedConfigFile
  2. Uruchom ponownie Postgres:
    /opt/apigee/apigee-service/bin/apigee-service edge-postgres-server restart

Sprawdzanie instalacji

Instalację nowych węzłów ZooKeeper możesz zweryfikować, wysyłając polecenia na port 2181 za pomocą netcat (nc) lub telnetu. Więcej informacji o poleceniach ZooKeeper znajdziesz na stronie https://zookeeper.apache.org/doc/r3.8.3/zookeeperAdmin.html#sc_zkCommands.

Aby przeprowadzić weryfikację:

  1. Jeśli nie jest zainstalowany na węźle ZooKeeper, zainstaluj nc:
    sudo yum install nc
  2. Uruchom następujące polecenie nc:
    echo stat | nc localhost 2181
  3. Powtórz kroki 1 i 2 na każdym węźle ZooKeeper. W wierszu Mode danych wyjściowych dotyczących węzłów jeden węzeł powinien być oznaczony jako obserwator, jeden jako lider, a pozostałe jako węzły podrzędne.