Przenoszenie serwerów Apigee

Przenoszenie komponentów z jednego komputera na drugi może spowodować niezgodność konfiguracji, jeśli adresy IP w plikach konfiguracji komponentu nie są synchronizowane.

W tej sekcji opisaliśmy, jak diagnozować i naprawiać niezgodności konfiguracji.

Adresy IP a nazwy hostów

W plikach konfiguracji komponentów używaj adresów IP, a nie nazw hostów.

Chociaż niektóre pliki konfiguracji komponentów umożliwiają używanie nazw hostów zamiast adresów IP, może to utrudniać rozwiązywanie problemów. Na przykład nazwy hostów może być źródłem problemów z połączeniem z serwerem DNS, błędami wyszukiwania synchronizacji.

W związku z tym Apigee zdecydowanie zaleca używanie adresów IP na potrzeby wszystkich komponentów konfiguracji. W niektórych przypadkach, takich jak Cassandra, trzeba używać adresów IP i nie można używać nazw hostów. W większości przykładów w dokumentacji użyto adresów IP do konfiguracji komponentów.

W przypadku nazw hostów i adresów IP rozważ konsekwencje tych scenariuszy przenoszenia serwerów Apigee:

Scenariusz Wpływ na przenoszenie serwerów
Zmiana adresu IP Zaktualizuj wszystkie powiązane pliki, które odwołują się do pierwotnego adresu IP
Zmiana nazwy hosta bez zmiany adresu IP Brak wpływu
Zmiana nazwy hosta ze zmianą adresu IP Taka sama jak zmiana adresu IP

Zmienianie adresu IP węzła Cassandra

Aby zmienić adres IP węzła Cassandra, wykonaj te czynności:

Dla: konfiguracje z jednym węzłem Cassandra

  1. Edytuj /opt/apigee/customer/application/cassandra.properties w modyfikowanym systemie. Jeśli plik nie istnieje, utwórz go.
  2. Zmień te parametry:
    • Ustaw conf_cassandra_seeds i conf_cassandra_listen_address podając nowy adres IP systemu.
    • Zmień conf_cassandra_rpc_address, którego chcesz używać nowego adresu IP lub adresu 0.0.0.0 (co umożliwia Cassandra Thrift nasłuchiwanie ).
  3. Otwórz aplikację /opt/apigee/apigee-cassandra/conf/cassandra-topology.properties w edytorze. Powinieneś zobaczyć stary adres IP i ustawienie domyślne w formie:
    192.168.56.101=dc-1:ra-1
    default=dc-1:ra-1

    Zapisz te informacje.

  4. Zmień /opt/apigee/customer/application/cassandra.properties, aby zmienić stary adres IP na nowy:
    conf_cassandra-topology_topology=192.168.56.103=dc-1:ra-1\ndefault=dc-1:ra-1\n

    Pamiętaj, aby wstawić „\n” po adresie IP i określić te same ustawienia domyślne, znalezionym powyżej w kroku 3.

  5. Uruchom ponownie Cassandra:
    /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra restart
  6. W razie potrzeby możesz też naprawić ZooKeeper (patrz poniżej), a w przeciwnym razie ponownie uruchomić każdą platformę Apigee. komponentem rozpoczynający się od serwera zarządzania.

W przypadku konfiguracji z wieloma węzłami Cassandra (pierścień)

  1. Jeśli zmieniany węzeł jest węzłem początkowym, edytuj /opt/apigee/customer/application/cassandra.properties w każdym systemie w pierścieniu, a potem zmień parametr conf_cassandra_seeds, tak by uwzględniał nowego adresu IP zmodyfikowanego systemu. Jeśli plik cassandra.properties nie istnieje, utwórz go.
  2. Edytuj /opt/apigee/customer/application/cassandra.properties w zmodyfikowanym systemie i zmień następujące parametry:
    • Ustaw conf_cassandra_listen_address tak, aby używał nowego adresu IP.
    • Ustaw conf_cassandra_rpc_address tak, aby używał nowego adresu IP lub adresu „0.0.0.0” (dzięki czemu Cassandra Thrift może nasłuchiwać przez wszystkie interfejsy).
  3. Otwórz aplikację /opt/apigee/apigee-cassandra/conf/cassandra-topology.properties w edytorze. Powinny być widoczne wszystkie adresy IP Cassandra oraz domyślne ustawienia w formularz:
    192.168.56.101=dc-1:ra-1
    192.168.56.102=dc-1:ra-1
    192.168.56.103=dc-1:ra-1
    default=dc-1:ra-1

    Zapisz te informacje.

  4. Edytuj /opt/apigee/customer/application/cassandra.properties aby zmienić stary adres IP na nowy:
    conf_cassandra-topology_topology=192.168.56.101=dc-1:ra-1\n192.168.56.102=dc-1:ra-1\n192.168.56.104=dc-1:ra-1\ndefault=dc-1:ra-1\n

    Pamiętaj, aby wstawić „\n” po każdym adresie IP i użyć tych samych ustawień domyślnych zanotowaliśmy powyżej w kroku 3.

  5. Uruchom ponownie Cassandra w zmodyfikowanym systemie. Jeśli zmodyfikowany system jest węzłem początkowym, Uruchom ponownie każdy system, który używał zmodyfikowanego węzła wyjściowego.
    /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra restart
  6. Uruchom polecenie nodetool ring na zmodyfikowanym węźle, aby upewnić się, że pierścień jest gotowe. Narzędzie to jest dostępne pod adresem /opt/apigee/apigee-cassandra/bin
    nodetool [-u username -pw password] -h localhost ring

    Nazwę użytkownika i hasło musisz podać tylko wtedy, gdy usługa Cassandra ma włączone uwierzytelnianie JMX.

  7. Uruchom nodetool repair w zmodyfikowany węzeł. Pamiętaj, że ten proces może zająć trochę czasu, dlatego zdecydowanie zalecamy ten proces. Należy pamiętać, że nie należy tego robić w godzinach największego ruchu interfejsów API.
    nodetool [-u username -pw password] -h localhost repair -pr
  8. W razie potrzeby napraw ZooKeepera (patrz poniżej), a następnie uruchom ponownie wszystkie komponenty platformy Apigee, zaczynając od serwera zarządzania.

Zaktualizowanie magazynu danych Rejestracje

  1. Znajdź identyfikatory UUID rejestracji w magazynie danych zawierające stary adres IP, korzystając z metody poniżej. Zanotuj „typ”, i „UUID” parametry:
    • curl -u ADMINEMAIL:PW "http://$MSIP:$port/v1/servers?pod=central&region=DC" | egrep -i '[type|internalip|uuid|region]'
    • curl -u ADMINEMAIL:PW "http://$MSIP:$port/v1/servers?pod=gateway&region=DC" | egrep -i '[type|internalip|uuid|region]'
    • curl -u ADMINEMAIL:PW "http://$MSIP:$port/v1/servers?pod=analytics&region=DC" | egrep -i '[type|internalip|uuid|region]'

      Gdzie DC to nazwa centrum danych. W ramach jednej instalacji centrum danych to zwykle „dc-1”.

  2. Zarejestruj nowe adresy IP, używając jednego z poniższych poleceń. Potrzebne polecenie będzie zależą od typu zmienionego węzła.
    • W przypadku type="application-datastore":
      curl -u ADMINEMAIL:PW "http://MSIP:port/v1/servers -d \
        "Type=application-datastore&Type=audit-datastore&InternalIP=NEWIP&region=REGION&pod=central" \
        -H 'content-type: application/x-www-form-urlencoded' -X POST
    • W przypadku typu="kms-datastore":
      curl -u ADMINEMAIL:PW "http://MSIP:port/v1/servers -d \
        "Type=kms-datastore&Type=dc-datastore&Type=keyvaluemap-datastore&Type=counter-datastore&Type=cache-datastore \
        &InternalIP=NEWIP&region=REGION&pod=GATEWAY_POD" -H 'content-type: \
        application/x-www-form-urlencoded' -X POST
    • W przypadku typu="reportcrud-datastore":
      curl -u ADMINEMAIL:PW "http://MSIP:port/v1/servers" -d \
        "Type=reportcrud-datastore&InternalIP=NEW_IP&region=REGION&pod=analytics" \
        -H 'content-type: application/x-www-form-urlencoded' -X POST 
  3. Usuń stare rejestracje identyfikatora UUID systemu, w którym znajdował się adres IP została zmieniona. W przypadku każdego z tych problemów z identyfikatorami UUID:
    curl -u ADMINEMAIL:PW "http://MSIP:port/v1/servers/OLD_UUID" -X DELETE

Zmiana adresu IP węzła ZooKeeper

Aby zmienić adres IP węzła ZooKeeper, wykonaj te czynności:

Zmień adres IP i ponownie uruchom zbiór ZooKeeper (w przypadku konfiguracji z wieloma węzłami tylko)

  1. Otwórz plik /opt/apigee/apigee-zookeeper/conf/zoo.cfg w edytorze. Powinny się wyświetlić wszystkie adresy IP ZooKeeper i ustawienie domyślne w formacie:
    server.1=192.168.56.101:2888:3888
    server.2=192.168.56.102:2888:3888
    server.3=192.168.56.103:2888:3888

    Zapisz te informacje.

  2. W każdym węźle ZooKeeper edytuj plik /opt/apigee/customer/application/zookeeper.properties. aby ustawić we właściwości conf_zoo_quorum prawidłowe adresy IP. Jeśli plik nie istnieje, utwórz ją.
    conf_zoo_quorum=server.1=192.168.56.101:2888:3888\nserver.2=192.168.56.102:2888:3888\nserver.3=192.168.56.104:2888:3888\n

    Pamiętaj, aby wstawić „\n” po każdym adresie IP i że wpisy są w tej samej kolejności każdego węzła.

  3. Znajdź lidera zespołu ZooKeeper, używając następującego polecenia (zastąp node za pomocą adresu IP komputera Zookeeper):
    echo srvr | nc node 2181

    Wiersz trybu w danych wyjściowych powinien zawierać tekst „leader”.

  4. Uruchamiaj ponownie jeden ZooKeeper po drugim, zaczynając od lidera, a kończąc na węźle. którego adres IP został zmieniony. Jeśli więcej niż jeden węzeł zookeeper zmienił adresy IP, może to spowodować może być konieczne ponowne uruchomienie wszystkich węzłów.
    /opt/apigee/apigee-service/bin/apigee-service apigee-zookeeper restart
  5. Aby zweryfikować każdy węzeł ZooKeeper, użyj polecenia echo opisanego powyżej.

Poinformuj węzły Apigee o zmienionej konfiguracji

  1. W każdym węźle routera edytuj plik /opt/apigee/customer/application/router.properties. w następujący sposób. Jeśli plik nie istnieje, utwórz go.
    • Zmień parametr conf_zookeeper_connection.string, aby uwzględnić nowy adres IP adres
    • Zmień parametr conf_zookeeper_zk1.host, aby uwzględnić nowy adres IP adres
  2. W każdym węźle procesora wiadomości edytuj plik /opt/apigee/customer/application/message-processor.properties. w następujący sposób. Jeśli plik nie istnieje, utwórz go.
    • Zmień parametr conf_zookeeper_connection.string, aby uwzględnić nowy Adres IP
    • Zmień parametr conf_zookeeper_zk1.host, aby uwzględnić nowy adres IP adres
  3. W węźle serwera zarządzania edytuj plik /opt/apigee/customer/application/management-server.properties. w następujący sposób. Jeśli plik nie istnieje, utwórz go.
    • Zmień parametr conf_zookeeper_connection.string, aby uwzględnić nowy Adres IP
    • Zmień parametr conf_zookeeper_zk1.host, aby uwzględnić nowy adres IP adres
  4. Uruchom ponownie wszystkie komponenty platformy Apigee, uruchamiając to polecenie w każdym węźle:
    /opt/apigee/apigee-service/bin/apigee-all restart

Zmiana adresu IP serwera LDAP (OpenLDAP)

Aby zmienić adres IP węzła OpenLDAP:

  1. W węźle serwera zarządzania edytuj plik /opt/apigee/customer/application/management-server.properties. . Jeśli plik nie istnieje, utwórz go.
  2. W pliku management-server.properties ustaw parametr conf_security_ldap.server.host na nowy adres IP.
  3. Ponownie uruchom serwer zarządzania:
    /opt/apigee/apigee-service/bin/apigee-service edge-management-server restart

Zmienianie adresu IP innego węzła Apigee Typy

Aby zmienić adres IP dowolnego z tych typów węzłów (router, procesor wiadomości, Postgres: Server (nie postgresql) i Qpid Server (nie qpidd):

  1. Aby zarejestrować nowy wewnętrzny i zewnętrzny adres IP, użyj tego polecenia curl:
    curl -u ADMINEMAIL:PW -X PUT \
      http://MSIP:8080/v1/servers/uuid -d ExternalIP=ip
    curl -u ADMINEMAIL:PW -X PUT \
      http://$MSIP:8080/v1/servers/uuid -d InternalIP=ip

    Gdzie uuid to identyfikator UUID węzła.

Informacje o tym, jak uzyskać identyfikator UUID komponentu, znajdziesz w artykule Uzyskiwanie identyfikatorów UUID.