Como mover servidores da Apigee

Edge para nuvem privada v4.19.01

Mover componentes de uma máquina para outra pode causar uma incompatibilidade de configuração se você não mantiver os endereços IP nos arquivos de configuração dos componentes sincronizados.

Esta seção descreve como diagnosticar e corrigir incompatibilidades de configuração.

Comparação entre endereços IP e nomes de host

Use endereços IP em vez de nomes de host nos arquivos de configuração dos componentes.

Embora alguns arquivos de configuração de componentes permitam usar nomes de host em vez de endereços IP, o uso de nomes de host pode complicar a solução de problemas. Por exemplo, os nomes de host podem ser a fonte de problemas relacionados à conectividade do servidor DNS, falhas de pesquisa e sincronização.

Como resultado, a Apigee recomenda o uso de endereços IP para todas as configurações dos componentes. Em alguns casos, como no Cassandra, é preciso usar endereços IP, mas não nomes de host. A maioria dos exemplos na documentação usa endereços IP para a configuração de componentes.

Para nomes de host e endereços IP, considere as implicações dos seguintes cenários ao mover os servidores da Apigee:

Cenário Impacto nos servidores de migração
Alteração no endereço IP Atualizar todos os arquivos relacionados que fazem referência ao endereço IP original
Alteração do nome do host sem alteração no endereço IP Nenhum impacto
Alteração do nome do host com alteração no endereço IP Igual a uma alteração no endereço IP

Como alterar o endereço IP de um nó do Cassandra

Para alterar o endereço IP de um nó do Cassandra, siga estas etapas:

Para configurações com um único nó do Cassandra

  1. Edite /opt/apigee/customer/application/cassandra.properties no sistema que está sendo modificado. Se o arquivo não existir, crie-o.
  2. Mude os seguintes parâmetros:
    • Defina os parâmetros conf_cassandra_seeds e conf_cassandra_listen_address para especificar o novo endereço IP do sistema.
    • Mude o conf_cassandra_rpc_address para usar o novo endereço IP ou 0.0.0.0, que permite que o Cassandra Thrift detecte todas as interfaces.
  3. Abra /opt/apigee/apigee-cassandra/conf/cassandra-topology.properties em um editor. Você verá o endereço IP antigo e a configuração padrão no formato:
    192.168.56.101=dc-1:ra-1
    default=dc-1:ra-1

    Salve essas informações.

  4. Edite /opt/apigee/customer/application/cassandra.properties para alterar o endereço IP antigo especificado para o novo:
    conf_cassandra-topology_topology=192.168.56.103=dc-1:ra-1\ndefault=dc-1:ra-1\n

    Insira "\n" após o endereço IP e especifique as mesmas configurações padrão encontradas na Etapa 3.

  5. Reinicie o Cassandra:
    /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra restart
  6. Se necessário, repare também o ZooKeeper (veja abaixo). Caso contrário, reinicie todos os componentes da plataforma Apigee, começando com o Servidor de gerenciamento.

Para configurações com vários nós do Cassandra (anel)

  1. Se o nó que está sendo alterado for de sugestão, edite o arquivo /opt/apigee/customer/application/cassandra.properties em cada sistema no anel e altere o parâmetro conf_cassandra_seeds para incluir o novo IP do sistema modificado. Se o arquivo cassandra.properties não existir, crie-o.
  2. Edite /opt/apigee/customer/application/cassandra.properties no sistema que está sendo modificado e mude os seguintes parâmetros:
    • Defina conf_cassandra_listen_address para usar o novo endereço IP.
    • Defina conf_cassandra_rpc_address para usar o novo endereço IP ou "0.0.0.0", que permite ao Cassandra Thrift detectar em todas as interfaces.
  3. Abra /opt/apigee/apigee-cassandra/conf/cassandra-topology.properties em um editor. Você verá todos os endereços IP e as configurações padrão do Cassandra no formato:
    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

    Salve essas informações.

  4. Edite /opt/apigee/customer/application/cassandra.properties para alterar o endereço IP antigo especificado para o novo:
    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

    Insira "\n" após cada endereço IP e use as mesmas configurações padrão registradas na Etapa 3.

  5. Reinicie o Cassandra no sistema modificado. Se o sistema modificado for um nó de sugestão, reinicie também cada sistema que usou esse nó.
    /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra restart
  6. Execute o comando nodetool ring no nó modificado para garantir que o anel esteja concluído. O utilitário pode ser encontrado em /opt/apigee/apigee-cassandra/bin.
    nodetool [-u username -pw password] -h localhost ring

    Você só precisará passar seu nome de usuário e senha se ativar a autenticação JMX para o Cassandra.

  7. Execute nodetool repair no nó modificado. Esse processo pode levar algum tempo, por isso é altamente recomendável que não seja feito durante os horários de pico de tráfego da API.
    nodetool [-u username -pw password] -h localhost repair -pr
  8. Se necessário, repare o ZooKeeper (veja abaixo) e reinicie todos os componentes da plataforma da Apigee, começando pelo Servidor de gerenciamento.

Atualizar registros do repositório de dados

  1. Use os comandos abaixo para encontrar os UUIDs de registros de repositório de dados que especificam o endereço IP antigo. Anote os parâmetros "type" e "UUID":
    • 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]'

      Em que DC é o nome do data center. Em uma única instalação de data center, o valor normalmente é "dc-1".

  2. Registre os novos endereços IP usando um dos comandos abaixo. O comando necessário vai depender do tipo do nó alterado.
    • Para 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
    • Para type="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
    • Para type="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. Excluir registros antigos do UUID do sistema em que o endereço IP foi alterado. Para cada um desses UUIDs:
    curl -u ADMINEMAIL:PW "http://MSIP:port/v1/servers/OLD_UUID" -X DELETE

Como alterar o endereço IP de um nó do ZooKeeper

Siga as etapas abaixo para alterar o endereço IP de um nó do ZooKeeper:

Mudar o endereço IP e reiniciar o conjunto do ZooKeeper (somente para configurações do conjunto de vários nós)

  1. Abra /opt/apigee/apigee-zookeeper/conf/zoo.cfg em um editor. Você verá todos os endereços IP do ZooKeeper e as configurações padrão no formato:
    server.1=192.168.56.101:2888:3888
    server.2=192.168.56.102:2888:3888
    server.3=192.168.56.103:2888:3888

    Salve essas informações.

  2. Em cada nó do ZooKeeper, edite o arquivo /opt/apigee/customer/application/zookeeper.properties para definir a propriedade conf_zoo_quorum com os endereços IP corretos. Se o arquivo não existir, crie-o.
    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

    Não se esqueça de inserir "\n" depois de cada endereço IP e de que as entradas estejam na mesma ordem em todos os nós.

  3. Encontre o líder do conjunto do ZooKeeper usando o seguinte comando (substitua node pelo endereço IP da máquina do Zookeeper):
    echo srvr | nc node 2181

    A linha de modo na saída deve mostrar "leader".

  4. Reinicie um ZooKeeper após o outro, começando com o líder e terminando com o nó em que o endereço IP foi alterado. Se mais de um nó do zookeeper tiver alterado os endereços IP, talvez seja necessário reiniciar todos os nós.
    /opt/apigee/apigee-service/bin/apigee-service apigee-zookeeper restart
  5. Use o comando echo descrito acima para verificar cada nó do ZooKeeper.

Informe os nós da Apigee sobre a configuração alterada.

  1. Em cada nó do roteador, edite o arquivo /opt/apigee/customer/application/router.properties da seguinte maneira. Se o arquivo não existir, crie-o.
    • Altere o parâmetro conf_zookeeper_connection.string para incluir o novo endereço IP.
    • Altere o parâmetro conf_zookeeper_zk1.host para incluir o novo endereço IP.
  2. Em cada nó do processador de mensagens, edite o arquivo /opt/apigee/customer/application/message-processor.properties da seguinte maneira. Se o arquivo não existir, crie-o.
    • Altere o parâmetro conf_zookeeper_connection.string para incluir o novo endereço IP.
    • Altere o parâmetro conf_zookeeper_zk1.host para incluir o novo endereço IP.
  3. No nó do servidor de gerenciamento, edite o arquivo /opt/apigee/customer/application/management-server.properties da seguinte maneira: Se o arquivo não existir, crie-o.
    • Altere o parâmetro conf_zookeeper_connection.string para incluir o novo endereço IP.
    • Altere o parâmetro conf_zookeeper_zk1.host para incluir o novo endereço IP.
  4. Reinicie todos os componentes da plataforma Apigee executando o seguinte comando em cada nó:
    /opt/apigee/apigee-service/bin/apigee-all restart

Como alterar o endereço IP de um servidor LDAP (OpenLDAP)

Para alterar o endereço IP de um nó do OpenLDAP, faça o seguinte:

  1. No nó do servidor de gerenciamento, edite o arquivo /opt/apigee/customer/application/management-server.properties. Se o arquivo não existir, crie-o.
  2. No arquivo management-server.properties, defina o parâmetro conf_security_ldap.server.host como o novo endereço IP.
  3. Reinicie o servidor de gerenciamento:
    /opt/apigee/apigee-service/bin/apigee-service edge-management-server restart

Como alterar o endereço IP de outros tipos de nós da Apigee

Para alterar o endereço IP de qualquer um desses tipos de nó (roteador, processador de mensagens, servidor Postgres (não postgresql) e servidor Qpid (não qpidd):

  1. Use o seguinte comando curl para registrar os novos endereços IP interno e externo:
    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

    em que uuid é o UUID do nó.

Para saber como conseguir o UUID de um componente, consulte Acessar UUIDs.