Às vezes, pode ser necessário desativar um data center. Por exemplo, se você estiver fazendo upgrade do sistema operacional, será necessário instalar o novo sistema operacional em um novo data center e desativar o antigo. As seções a seguir apresentam um exemplo de desativação de um data center, em que há dois data centers, dc-1 e dc-2, em uma instalação em cluster de 12 nós:
- dc-1 é o data center a ser desativado.
- dc-2 é um segundo data center, usado no procedimento de desativação.
Se você estiver atualizando seu sistema operacional, dc-2 pode ser o data center em que você instalou a nova versão do sistema operacional (SO). No entanto, não é necessário instalar um novo SO para desativar um data center.
Considerações antes de desativar um data center
Considere o seguinte ao desativar um data center:
- Bloquear todo o tráfego de gerenciamento e execução para o data center que está sendo desativado e redirecioná-lo para outros data centers.
- Após a desativação do data center, você terá capacidade reduzida no cluster da Apigee. Para compensar, aumente a capacidade nos data centers restantes ou adicione data centers após a desativação.
- Durante o processo de desativação, há um potencial de perda de dados de análise, dependendo de quais componentes de análise estão instalados no data center que está sendo desativado. Veja mais detalhes em Adicionar ou remover nós Qpid.
- Antes de desativar um data center, é preciso entender como todos os componentes estão configurados em todos eles, especialmente os servidores OpenLDAP, ZooKeeper, Cassandra e Postgres. Você também precisa fazer backups de todos os componentes e das configurações deles.
Antes de começar
- Servidor de gerenciamento: todas as etapas de desativação dependem muito do servidor de gerenciamento. Se você tiver apenas um servidor de gerenciamento disponível, recomendamos a instalação de um novo componente do servidor de gerenciamento em um data center diferente de dc-1 antes de desativar o servidor de gerenciamento em dc-1 e garantir que um dos servidores de gerenciamento esteja sempre disponível.
- Roteador: antes de desativar um roteador, desative a acessibilidade dos roteadores bloqueando a porta 15999. Verifique se nenhum tráfego de ambiente de execução está sendo direcionado para os roteadores desativados.
Cassandra e ZooKeeper: as seções abaixo descrevem como desativar a dc-1 em uma configuração de dois data centers. Se você tiver mais de dois data centers, remova todas as referências ao nó que está sendo desativado (dc-1, neste caso) de todos os arquivos de configuração silenciosos em todos os data centers restantes. Para os nós do Cassandra que serão desativados, remova esses hosts de
CASS_HOSTS
. Os nós restantes do Cassandra precisam permanecer na ordem original deCASS_HOSTS
.Postgres: se você desativar o mestre do Postgres, promova qualquer um dos nós de espera disponíveis como um novo mestre do Postgres. Enquanto o servidor QPID mantém um buffer na fila, se o mestre do Postgres ficar indisponível por mais tempo, você corre o risco de perder dados de análise.
Pré-requisitos
Antes de desativar qualquer componente, recomendamos que você faça um backup completo de todos os nós. Use o procedimento da sua versão atual do Edge para fazer o backup. Para mais informações sobre backup, consulte Backup e restauração.
Observação:se você tiver vários nós do Cassandra ou do ZooKeeper, faça backup um de cada vez, porque o processo de backup encerra temporariamente o ZooKeeper.
- Verifique se o Edge está instalado e em execução antes da desativação, usando o comando:
/opt/apigee/apigee-service/bin/apigee-all status
- Verifique se não há tráfego de tempo de execução chegando ao data center que você está desativando.
Ordem de desativação dos componentes
Se você instalar o Edge para nuvem privada em vários nós, precisará desativar os componentes do Edge nesses nós na seguinte ordem:
- IU do Edge (edge-ui)
- Servidor de gerenciamento (edge-management-server)
- OpenLDAP (apigee-openldap)
- Roteador (roteador de borda)
- Message Processor (edge-message-processor)
- Qpid Server e Qpidd (edge-qpid-server e apigee-qpidd)
- Banco de dados Postgres e PostgreSQL (edge-postgres-server e apigee-postgresql)
- ZooKeeper (apigee-zookeeper)
- Cassandra (apigee-cassandra)
As seções a seguir explicam como desativar cada componente.
interface do Edge
Para interromper e desinstalar o componente da interface do Edge do dc-1, digite os seguintes comandos:
/opt/apigee/apigee-service/bin/apigee-service edge-ui stop
/opt/apigee/apigee-service/bin/apigee-service edge-ui uninstall
Servidor de gerenciamento
Para desativar o servidor de gerenciamento em dc-1, siga estas etapas:
- Pare o servidor de gerenciamento em dc-1:
apigee-service edge-management-server stop
- Encontre o UUID do servidor de gerenciamento registrado em dc-1:
curl -u <AdminEmailID>:'<AdminPassword>' \ -X GET “http://{MS_IP}:8080/v1/servers?pod=central®ion=dc-1&type=management-server”
- Cancelar o registro do tipo de servidor:
curl -u <AdminEmailID>:'<AdminPassword>' -X POST http://{MS_IP}:8080/v1/servers \ -d "type=management-server®ion=dc-1&pod=central&uuid=UUID&action=remove"
- Excluir o servidor. Observação:se outros componentes também estiverem instalados neste servidor,
cancele o registro de todos eles antes de excluir o UUID.
curl -u <AdminEmailID>:'<AdminPassword> -X DELETE http://{MS_IP}:8080/v1/servers/{UUID}
- Desinstale o componente do servidor de gerenciamento em dc-1:
/opt/apigee/apigee-service/bin/apigee-service edge-management-server uninstall
Abrir LDAP
Esta seção explica como desativar o OpenLDAP em dc-1.
Observação:se você tiver mais de dois data centers, consulte a seção Configurações com mais de dois data centers abaixo.
Para desativar o OpenLDAP em dc-1, siga estas etapas:
- Faça o backup do nó OpenLDAP dc-1 seguindo as etapas em Como fazer backup.
Interrompa a replicação de dados entre os dois data centers, dc-1 e dc-2, executando as etapas a seguir em ambos.
- Verifique o estado atual:
ldapsearch -H ldap://{HOST}:{PORT} -LLL -x -b "cn=config" -D "cn=admin,cn=config" -w {credentials} -o ldif-wrap=no 'olcSyncRepl' | grep olcSyncrepl
A saída será semelhante a esta:
olcSyncrepl: {0}rid=001 provider=ldap://{HOST}:{PORT}/ binddn="cn=manager,dc=apigee,dc=com" bindmethod=simple credentials={credentials} searchbase="dc=apigee,dc=com" attrs="*,+" type=refreshAndPersist retry="60 1 300 12 7200 +" timeout=1
- Crie um arquivo
break_repl.ldif
contendo os seguintes comandos:dn: olcDatabase={2}bdb,cn=config changetype: modify delete: olcSyncRepl dn: olcDatabase={2}bdb,cn=config changetype: modify delete: olcMirrorMode
- Execute o comando
ldapmodify
:ldapmodify -x -w {credentials} -D "cn=admin,cn=config" -H "ldap://{HOST}:{PORT}/" -f path/to/file/break_repl.ldif
A saída será semelhante a esta:
modifying entry "olcDatabase={2}bdb,cn=config" modifying entry "olcDatabase={2}bdb,cn=config"
- Verifique o estado atual:
É possível verificar se dc-2 não está mais replicando para dc-1 criando uma entrada no LDAP dc-2 e garantindo que ela não apareça no LDAP de dc-1.
Se preferir, siga as etapas abaixo para criar um usuário somente leitura no nó OpenLDAP dc-2 e verificar se o usuário foi replicado ou não. Em seguida, o usuário é excluído.
- Crie um arquivo
readonly-user.ldif
em dc-2 com o seguinte conteúdo:dn: uid=readonly-user,ou=users,ou=global,dc=apigee,dc=com objectClass: organizationalPerson objectClass: person objectClass: inetOrgPerson objectClass: top cn: readonly-user sn: readonly-user userPassword: {testPassword}
- Adicione o usuário com o comando "ldapadd" em dc-2:
ldapadd -H ldap://{HOST}:{PORT} -w {credentials} -D "cn=manager,dc=apigee,dc=com" -f path/to/file/readonly-user.ldif
A saída será semelhante a:
adding new entry "uid=readonly-user,ou=users,ou=global,dc=apigee,dc=com"
- Procure o usuário em dc-1 para garantir que ele não seja replicado. Se o usuário não estiver presente em dc-1, você terá certeza de que os dois LDAPs não estão mais sendo replicados:
ldapsearch -H ldap://{HOST}:{PORT} -x -w {credentials} -D "cn=manager,dc=apigee,dc=com" -b uid=readonly-user,ou=users,ou=global,dc=apigee,dc=com -LLL
A saída será semelhante a esta:
No such object (32) Matched DN: ou=users,ou=global,dc=apigee,dc=com
- Remova o usuário somente leitura adicionado anteriormente:
ldapdelete -v -H ldap://{HOST}:{PORT} -w {credentials} -D "cn=manager,dc=apigee,dc=com" "uid=readonly-user,ou=users,ou=global,dc=apigee,dc=com"
- Crie um arquivo
- Interrompa o OpenLDAP em dc-1:
/opt/apigee/apigee-service/bin/apigee-service apigee-openldap stop
- Desinstale o componente OpenLDAP em dc-1:
/opt/apigee/apigee-service/bin/apigee-service apigee-openldap uninstall
Roteador
Nesta seção, explicamos como desativar um roteador. Consulte Remover um servidor para mais detalhes sobre a remoção do roteador.
As etapas a seguir desativam o roteador de dc-1. Se houver vários nós do roteador configurados em dc-1, execute as etapas em todos os nós do roteador, um de cada vez.
Observação:aqui supõe-se que a porta de verificação de integridade 15999 do roteador esteja configurada no balanceador de carga e que a porta de bloqueio 15999 tornará o roteador inacessível. Talvez seja necessário ter acesso raiz para bloquear a porta.
Para desativar um roteador, siga estas etapas:
Desative a acessibilidade dos roteadores bloqueando a porta 15999, que é a de verificação de integridade. Verifique se o tráfego de execução está bloqueado neste data center:
iptables -A INPUT -i eth0 -p tcp --dport 15999 -j REJECT
Verifique se o roteador está acessível:
curl -vvv -X GET http://{ROUTER_IP}:15999/v1/servers/self/reachable
A saída será semelhante a esta:
About to connect() to 10.126.0.160 port 15999 (#0) Trying 10.126.0.160... Connection refused Failed connect to 10.126.0.160:15999; Connection refused Closing connection 0 curl: (7) Failed connect to 10.126.0.160:15999; Connection refused
- Consiga o UUID do roteador, conforme descrito em Receber UUIDs.
- Pare o roteador:
/opt/apigee/apigee-service/bin/apigee-service edge-router stop
- Liste os pods de gateway disponíveis na organização com o seguinte comando:
curl -u <AdminEmailID>:<AdminPassword> -X GET "http://{MS_IP}:8080/v1/organizations/{ORG}/pods"
Consulte Sobre pods.
- Cancele o registro do tipo do servidor:
curl -u <AdminEmailID>:'<AdminPassword>' -X POST http://{MS_IP}:8080/v1/servers \ -d "type=router&region=dc-1&pod=gateway-1&uuid=UUID&action=remove"
- Cancele o registro do servidor:
curl -u <AdminEmailID>:'<AdminPassword>’ -X DELETE http://{MS_IP}:8080/v1/servers/UUID
- Desinstale o
edge-router
:/opt/apigee/apigee-service/bin/apigee-service edge-router uninstall
Consulte Remover um servidor. - Apague as regras
iptables
para ativar a porta bloqueada 15999:iptables -F
processador de mensagens
Esta seção descreve como desativar o processador de mensagens de dc-1. Consulte Remover um servidor para ver mais detalhes sobre como remover o processador de mensagens.
Como presumimos que dc-1 tem uma instalação em cluster de 12 nós, há dois nós do processador de mensagens configurados em dc-1. Execute os comandos a seguir nos dois nós.
- Consiga os UUIDs dos processadores de mensagens, conforme descrito em Receber UUIDs.
- Pare o processador de mensagens:
apigee-service edge-message-processor stop
- Cancele o registro do tipo do servidor:
curl -u <AdminEmailID>:'<AdminPassword>' -X POST http://{MS_IP}:8080/v1/servers \ -d "type=message-processor&region=dc-1&pod=gateway-1&uuid=UUID&action=remove"/pre>
- Disassociate an environment from the Message Processor.
Note: You need to remove the bindings on each org/env that associates the Message Processor UUID.
curl -H "Content-Type:application/x-www-form-urlencoded" -u <AdminEmailID>:'
' \ -X POST http://{MS_IP}:8080/v1/organizations/{ORG}/environments/{ENV}/servers \ -d "action=remove&uuid=UUID" - Cancele o registro do tipo do servidor:
curl -u <AdminEmailID>:'<AdminPassword>' -X POST http://MS_IP:8080/v1/servers -d "type=message-processor®ion=dc-1&pod=gateway-1&uuid=UUID&action=remove"
- Desinstale o processador de mensagens:
/opt/apigee/apigee-service/bin/apigee-service edge-message-processor uninstall
- Cancele o registro do servidor:
curl -u <AdminEmailID>:'<AdminPassword> -X DELETE http://{MS_IP}:8080/v1/servers/UUID
Servidor Qpid e Qpidd
Nesta seção, explicamos como desativar o servidor Qpid (edge-qpid-server
) e o Qpidd
(apigee-qpidd
).
Há dois nós Qpid configurados em dc-1. Portanto, siga estas etapas para ambos:
- Consiga o UUID do Qpidd, conforme descrito em Receber UUIDs.
- Paradas
edge-qpid-server
eapigee-qpidd
:/opt/apigee/apigee-service/bin/apigee-service edge-qpid-server stop
/opt/apigee/apigee-service/bin/apigee-service apigee-qpidd stop
- Receber uma lista de grupos do Analytics e de consumidores:
curl -u <AdminEmailID>:'<AdminPassword>' -X GET http://{MS_IP}:8080/v1/analytics/groups/ax
- Remova o Qpid do grupo de consumidores:
curl -u <AdminEmailID>:'<AdminPassword>' -H "Content-Type: application/json" -X DELETE \ "http://{MS_IP}:8080/v1/analytics/groups/ax/{ax_group}/consumer-groups/{consumer_group}/consumers/{QPID_UUID}"
- Remova o Qpid do grupo de análise:
curl -v -u <AdminEmailID>:'<AdminPassword>' \ -X DELETE "http://{MS_IP}:8080/v1/analytics/groups/ax/{ax_group}/servers?uuid={QPID_UUID}&type=qpid-server"
- Cancele o registro do servidor Qpid na instalação do Edge:
curl -u <AdminEmailID>:'<AdminPassword>' -X POST http://{MS_IP}:8080/v1/servers \ -d "type=qpid-server®ion=dc-1&pod=central&uuid={QPID_UUID}&action=remove"
- Remova o servidor Qpid da instalação do Edge:
curl -u <AdminEmailID>:'<AdminPassword>' -X DELETE http://{MS_IP}:8080/v1/servers/UUID
- Reinicie todos os componentes do Edge-qpid-server em todos os nós para garantir que a mudança seja detectada
por esses componentes:
$ /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server restart $ /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server wait_for_ready
- Desinstale o Edge-qpid-server e o apigee-qpidd:
$ /opt/apigee/apigee-service/bin/apigee-service edge-qpid-server uninstall $ /opt/apigee/apigee-service/bin/apigee-service apigee-qpidd uninstall
Postgres e Postgresql
O data center que está sendo desativado pode ter um mestre do Postgres ou um espera do Postgres. As seções a seguir explicam como fazer isso:
Como desativar o mestre do Postgres
Observação: se você desativar o mestre do Postgres, promova qualquer um dos nós de espera disponíveis como um novo mestre do Postgres. Enquanto o QPID faz o buffer de dados, se o mestre do Postgres ficar indisponível por muito tempo, você corre o risco de perder dados de análise.
Para desativar o mestre do Postgres:
- Faça backup do nó mestre do Postgres dc-1 seguindo as instruções nos seguintes links:
- Consiga os UUIDs dos servidores Postgres, conforme descrito em Receber UUIDs.
- Em dc-1, pare
edge-postgres-server
eapigee-postgresql
no mestre atual:/opt/apigee/apigee-service/bin/apigee-service edge-postgres-server stop
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql stop
- No nó de espera em dc-2, digite o seguinte comando para torná-lo o nó mestre:
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql promote-standby-to-master <IP of OLD Progress master>
Observação:se você tiver mais de um nó em espera do Postgres, adicione entradas de host ao novo mestre e atualize a configuração de replicação para todos os nós de espera do postgres disponíveis.
Para adicionar entradas de host ao novo mestre do Postgres, siga as etapas na seção apropriada abaixo:
Se houver apenas um nó de espera restante
Por exemplo, suponha que, antes da desativação, houvesse três nós do Postgres configurados. Você desativou o mestre atual e promoveu um dos nós de espera do postgres restantes para o mestre. Configure o nó de espera restante seguindo estas etapas:
- Na nova instância mestre, edite o arquivo de configuração para definir:
PG_MASTER=IP_or_DNS_of_new_PG_MASTER PG_STANDBY=IP_or_DNS_of_PG_STANDBY
- Ativar a replicação no novo mestre:
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql setup-replication-on-master -f configFIle
Se houver mais de um nó de espera restante
- Adicione a seguinte configuração em
/opt/apigee/customer/application/postgresql.properties
:conf_pg_hba_replication.connection=host replication apigee standby_1_ip/32 trust \n host replication apigee standby_2_ip/32 trust
- Verifique se o arquivo /opt/apigee/customer/application/postgresql.properties é de propriedade do
usuário da Apigee:
chown apigee:apigee /opt/apigee/customer/application/postgresql.properties
- Reiniciar
apigee-postgresql
:apigee-service apigee-postgresql restart
- Modifique o arquivo de configuração
/opt/silent.conf
e atualize o campoPG_MASTER
com o endereço IP do novo mestre do Postgres. - Remova os dados antigos do Postgres com o seguinte comando:
rm -rf /opt/apigee/data/apigee-postgresql/
- Configure a replicação no nó de espera:
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql setup-replication-on-standby -f configFile
- Verifique se o mestre do Postgres está configurado corretamente inserindo o seguinte comando em dc-2:
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-master
- Remover e adicionar servidores Postgresql do grupo de análise e do grupo de consumidores.
- Remova o servidor Postgres antigo do grupo de análise seguindo as instruções em Remover um servidor do Postgres de um grupo de análise.
- Adicione um novo servidor postgres ao grupo de análise seguindo as instruções em Adicionar um servidor Postgres atual a um grupo de análise.
- Cancele o registro do servidor postgres antigo de dc-1:
curl -u <AdminEmailID>:'<AdminPassword>' -X POST http://{MS_IP}:8080/v1/servers \ -d "type=postgres-server®ion=dc-1&pod=analytics&uuid=UUID&action=remove"<
- Exclua o antigo servidor postgres de dc-1:
curl -u >AdminEmailID>:'>AdminPassword>' -X DELETE http://{MS_IP}:8080/v1/servers/UUID
- O antigo mestre do Postgres já pode ser desativado com segurança. Desinstale
edge-postgres-server
eapigee-postgresql
:/opt/apigee/apigee-service/bin/apigee-service edge-postgres-server uninstall /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql uninstall
Para atualizar as configurações de replicação em um nó de espera:
Como desativar o modo de espera do Postgres
Observação: a documentação de uma instalação em cluster de 12 nós mostra o nó dc-1 postgresql como mestre, mas, por conveniência, nesta seção presumimos que o nó dc-1 postgresql está em espera e o nó dc-2 postgresql é mestre.
Para desativar o modo de espera do Postgres, siga estas etapas:
- Consiga os UUIDs dos servidores Postgres, seguindo as instruções em Acessar UUIDs.
- Pare
apigee-postgresql
no nó de espera atual em dc-1:/opt/apigee/apigee-service/bin/apigee-service edge-postgres-server stop
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql stop
- Remover e adicionar servidores Postgresql do grupo de análise e do grupo de consumidores.
- Remova o servidor Postgres antigo do grupo de análise seguindo as instruções em Remover um servidor do Postgres de um grupo de análise.
- Adicione um novo servidor postgres ao grupo de análise seguindo as instruções em Adicionar um servidor Postgres atual a um grupo de análise.
- Cancele o registro do servidor postgres antigo de dc-1:
curl -u <AdminEmailID>:'<AdminPassword>' -X POST http://{MS_IP}:8080/v1/servers \ -d "type=postgres-server®ion=dc-1&pod=analytics&uuid=UUID&action=remove"<
- Exclua o antigo servidor postgres de dc-1:
curl -u >AdminEmailID>:'>AdminPassword>' -X DELETE http://{MS_IP}:8080/v1/servers/UUID
- O antigo mestre do Postgres já pode ser desativado com segurança. Desinstale
edge-postgres-server
eapigee-postgresql
:/opt/apigee/apigee-service/bin/apigee-service edge-postgres-server uninstall /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql uninstall
ZooKeeper e Cassandra
Esta seção explica como desativar os servidores do ZooKeeper e do Cassandra em uma configuração de dois data centers.
Se você tiver mais de dois data centers, remova todas as referências ao nó que está sendo desativado (dc-1, neste caso) de todos os arquivos de configuração silenciosos em todos os data centers restantes. Para os nós do Cassandra que serão desativados, remova esses hosts de
CASS_HOSTS
. Os nós restantes do Cassandra precisam permanecer na ordem original deCASS_HOSTS
.Observação sobre ZooKeeper: é necessário manter um quórum de nós eleitores ao modificar a propriedade
ZK_HOST
no arquivo de configuração para garantir que o conjunto do ZooKeeper permaneça funcional. Você precisa ter um número ímpar de nós eleitores na sua configuração. Para mais informações, consulte Tarefas de manutenção do Apache ZooKeeper.Para desativar os servidores do ZooKeeper e do Cassandra:
- Faça backup dos nós dc-1 do Cassandra e do ZooKeeper seguindo as instruções nos seguintes links:
Liste os UUIDs dos servidores ZooKeeper e Cassandra no data center em que os nós do Cassandra estão prestes a ser desativados.
apigee-adminapi.sh servers list -r dc-1 -p central -t application-datastore --admin <AdminEmailID> --pwd '<AdminPassword>' --host localhost
- Cancele o registro do tipo do servidor:
curl -u <AdminEmailID>:'<AdminPassword>' -X POST http://MS_IP:8080/v1/servers -d "type=cache-datastore&type=user-settings-datastore&type=scheduler-datastore&type=audit-datastore&type=apimodel-datastore&type=application-datastore&type=edgenotification-datastore&type=identityzone-datastore&type=user-settings-datastore&type=auth-datastore®ion=dc-1&pod=central&uuid=UUID&action=remove"
- Cancele o registro do servidor:
curl -u <AdminEmailID>:'<AdminPassword>' -X DELETE http://MS_IP:8080/v1/servers/UUID
- Atualize o arquivo de configuração com os IPs dos nós desativados removidos de
ZK_HOSTS
eCASS_HOSTS
.Exemplo: suponha que você tenha os IPs
$IP1 $IP2 $IP3
em dc-1 e$IP4 $IP5 $IP6
em dc-2 e esteja desativando dc-1. Em seguida, remova os IPs$IP1 $IP2 $IP3
dos arquivos de configuração.- Entradas existentes do arquivo de configuração:
ZK_HOSTS="$IP1 $IP2 $IP3 $IP4 $IP5 $IP6" CASS_HOSTS="$IP1:1,1 $IP2:1,1 $IP3:1,1, $IP4:2,1 $IP5:2,1 $IP6:2,1”
- Novas entradas do arquivo de configuração:
ZK_HOSTS="$IP4 $IP5 $IP6" CASS_HOSTS="$IP4:2,1 $IP5:2,1 $IP6:2,1"
- Entradas existentes do arquivo de configuração:
- Atualize o arquivo de configuração silenciosa (modificado na etapa e) com os IPs dos nós desativados
removidos e execute o perfil do servidor de
gerenciamento em todos os nós que hospedam os servidores de gerenciamento:
/opt/apigee/apigee-setup/bin/setup.sh -p ms -f updated_config_file
- Atualize o arquivo de configuração com os IPs dos nós desativados que foram removidos e execute o perfil de MP/RMP
em todos os nós do roteador e do processador de mensagens:
- Se o roteador de borda e o processador de mensagens estiverem configurados no mesmo nó, digite:
/opt/apigee/apigee-setup/bin/setup.sh -p rmp -f updated_config_file
Se o roteador de borda e o processador de mensagens estiverem configurados em nós separados, digite o seguinte:
Para o roteador:
/opt/apigee/apigee-setup/bin/setup.sh -p r -f updated_config_file
Para o processador de mensagens:
/opt/apigee/apigee-setup/bin/setup.sh -p mp -f updated_config_file
- Se o roteador de borda e o processador de mensagens estiverem configurados no mesmo nó, digite:
- Reconfigure todos os nós Qpid, com os IPs dos nós desativados removidos do arquivo de resposta:
/opt/apigee/apigee-setup/bin/setup.sh -p qs -f updated_config_file
- Reconfigure todos os nós do Postgres com os IPs dos nós desativados removidos do arquivo de resposta:
/opt/apigee/apigee-setup/bin/setup.sh -p ps -f updated_config_file
- Alterar o espaço de tecla
system_auth
. Se a autenticação do Cassandra estiver ativada em um nó atual do Cassandra, atualize o fator de replicação do keyspacesystem_auth
executando o seguinte comando:ALTER KEYSPACE system_auth WITH replication = {'class': 'NetworkTopologyStrategy', 'dc-2': '3'};
Esse comando define o fator de replicação como
'3'
, indicando três nós do Cassandra no cluster. Modifique esse valor conforme necessário.Depois de concluir esta etapa, a topologia do Cassandra não pode ter
dc-1
em nenhum dos keyspaces. - Desative os nós do Cassandra em dc-1, um por um.
Para desativar os nós do Cassandra, digite o seguinte comando:
/opt/apigee/apigee-cassandra/bin/nodetool -h cassIP -u cassandra -pw '<AdminPassword>' decommission
- Verifique a conexão dos nós do Cassandra a partir de dc-1 usando um dos seguintes comandos:
/opt/apigee/apigee-cassandra/bin/cqlsh cassIP 9042 -u cassandra -p '<AdminPassword>'
Ou comando de verificação secundário a ser executado no nó desativado:
/opt/apigee/apigee-cassandra/bin/nodetool netstats
O comando acima retornará:
Mode: DECOMMISSIONED
- Execute o perfil do DS para todos os nós do Cassandra e do ZooKeeper em dc-2:
/opt/apigee/apigee-setup/bin/setup.sh -p ds -f updated_config_file
- Para
apigee-cassandra
eapigee-zookeeper
em dc-1:apigee-service apigee-cassandra stop
apigee-service apigee-zookeeper stop
- Desinstale
apigee-cassandra
eapigee-zookeeper
em dc-1:apigee-service apigee-cassandra uninstall
apigee-service apigee-zookeeper uninstall
Excluir as vinculações de dc-1
Para excluir as vinculações de dc-1, siga estas etapas:
- Exclua as vinculações de dc-1.
- Liste todos os pods disponíveis na organização:
curl -v -u <AdminEmailID>:<AdminPassword> -X GET "http://MS_IP:8080/v1/o/ORG/pods"
- Para verificar se todas as vinculações foram removidas, acesse os
UUIDs dos servidores associados aos pods:
curl -v -u <AdminEmailID>:<AdminPassword> \ -X GET "http://MS_IP:8080/v1/regions/dc-1/pods/gateway-1/servers"
Se esse comando não retornar nenhum UUID, isso significa que todas as vinculações foram removidas das etapas anteriores e você pode pular a próxima etapa. Caso contrário, execute a próxima etapa.
- Remova todas as vinculações de servidor para os UUIDs recebidos na etapa anterior:
curl -u <AdminEmailID>:'<AdminPassword>' -X DELETE http://MS_IP:8080/v1/servers/UUID
- Desassociar a organização do pod:
curl -v -u <AdminEmailID>:<AdminPassword> "http://MS_IP:8080/v1/o/ORG/pods" -d "action=remove®ion=dc-1&pod=gateway-1" -H "Content-Type: application/x-www-form-urlencoded" -X POST
- Liste todos os pods disponíveis na organização:
- Exclua os pods:
curl -v -u <AdminEmailID>:<AdminPassword> "http://MS_IP:8080/v1/regions/dc-1/pods/gateway-1" -X DELETE
- Exclua a região.
curl -v -u <AdminEmailID>:<AdminPassword> "http://MS_IP:8080/v1/regions/dc-1" -X DELETE
Observação: se você perder uma das etapas para excluir os servidores, a etapa acima retornará uma mensagem de erro informando que um servidor específico no pod ainda existe. Portanto, exclua-os seguindo as etapas de solução de problemas abaixo e personalize os tipos no comando
curl
.Neste ponto, você concluiu a desativação de dc-1.
Apêndice
Solução de problemas
Se depois de executar as etapas anteriores ainda houver servidores em alguns pods, siga estas etapas para cancelar o registro e excluí-los. Observação:altere os tipos e o pod conforme necessário.
- Consiga os UUIDs usando o seguinte comando:
apigee-adminapi.sh servers list -r dc-1 -p POD -t --admin <AdminEmailID> --pwd '<AdminPassword>’ --host localhost
- Cancelar o registro do tipo de servidor:
curl -u <AdminEmailID>:'<AdminPassword>' -X POST http://MP_IP:8080/v1/servers -d "type=TYPE=REGION=dc-1&pod=POD&uuid=UUID&action=remove"
- Exclua os servidores um por um:
curl -u <AdminEmailID>:'<AdminPassword>' -X DELETE http://MP_IP:8080/v1/servers/UUID
validação
Valide a desativação usando os comandos a seguir.
Servidor de gerenciamento
Execute os seguintes comandos nos servidores de gerenciamento em todas as regiões.
curl -v -u <AdminEmailID>:'<AdminPassword>' http://MS_IP:8080/v1/servers?pod=central®ion=dc-1 curl -v -u <AdminEmailID>:'<AdminPassword>' http://MS_IP:8080/v1/servers?pod=gateway®ion=dc-1 curl -v -u <AdminEmailID>:'<AdminPassword>' http://MS_IP:8080/v1/servers?pod=analytics®ion=dc-1
Execute o comando a seguir em todos os componentes para verificar os requisitos de porta para todas as portas de gerenciamento.
curl -v http://MS_IP:8080/v1/servers/self
Verifique o grupo de análise.
curl -v -u <AdminEmailID>:'<AdminPassword>' "http://MS_IP:8080}/v1/o/ORG/e/ENV/provisioning/axstatus" curl -v -u <AdminEmailID>:'<AdminPassword>' http://MS_IP:8080/v1/analytics/groups/ax
Nós do Cassandra/ZooKeeper
Em todos os nós do Cassandra, insira:
/opt/apigee/apigee-cassandra/bin/nodetool -h <host> statusthrift
Isso retornará um status
running
ounot running
para esse nó específico.Em um nó, digite:
/opt/apigee/apigee-cassandra/bin/nodetool -h <host> ring
/opt/apigee/apigee-cassandra/bin/nodetool -h <host> status
Os comandos acima retornarão informações do data center ativo.
Nos nós do ZooKeeper, insira primeiro:
echo ruok | nc <host> 2181
Esse comando retornará
imok
.Em seguida, insira o seguinte comando:
echo stat | nc <host> 2181 | grep Mode
O valor de
Mode
retornado pelo comando acima será um dos seguintes:observer
,leader
oufollower
.Em um nó do ZooKeeper:
/opt/apigee/apigee-zookeeper/contrib/zk-tree.sh >> /tmp/zk-tree.out.txt
No nó mestre do Postgres, execute:
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-master
Valide se a resposta diz que o nó é o mestre.
No nó de espera:
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-standby
Valide se a resposta informa que o nó é o de espera.
Faça login no banco de dados do PostgreSQL usando o comando
psql -h localhost -d apigee -U postgres
Quando solicitado, digite a senha de usuário "postgres" como
'postgres'
. Selecionemax(client_received_start_timestamp)
na análise.”$org.$env.fact” limit 1
;Registros
Verifique os registros nos componentes para garantir que não há erros.
- Na nova instância mestre, edite o arquivo de configuração para definir: