À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 fazendo upgrade do seu sistema operacional, dc-2 poderá ser o data center em que você instalou a nova versão do sistema operacional (SO). No entanto, a instalação de um novo SO não é necessária para desativar um data center.
Considerações antes de desativar um data center
Ao desativar um data center, considere o seguinte:
- Bloquear todo o tráfego de ambiente de execução e de gerenciamento para o data center que está sendo desativado e redirecionar para outros data centers.
- Depois de desativar o data center, a capacidade do seu cluster da Apigee será reduzida. Para compensar, considere aumentar a capacidade dos data centers restantes ou adicionar data centers após a desativação.
- Durante o processo de desativação, existe a possibilidade de perda de dados de análise, dependendo dos componentes de análise instalados no data center que está sendo desativado. Veja mais detalhes em Adicionar ou remover nós Qpid.
- Antes de desativar um data center, é importante entender como todos os componentes estão configurados em todos eles, especialmente nos servidores OpenLDAP, ZooKeeper, Cassandra, e Postgres. Também é necessário 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 que você instale 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. Além disso, certifique-se de que um dos servidores de gerenciamento esteja sempre disponível.
- Roteador: antes de desativar um roteador, desative a acessibilidade deles bloqueando a porta 15999. Verifique se nenhum tráfego de ambiente de execução está sendo direcionado para os roteadores que estão sendo desativados.
Cassandra e ZooKeeper: as seções abaixo descrevem como desativar o 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, elimine 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 em espera disponíveis como um novo mestre postgres. Enquanto o servidor QPID mantém um buffer na fila, se o mestre 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 fazer 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 deles um de cada vez, já que o processo de backup encerra temporariamente o ZooKeeper.
- Verifique se o Edge está em execução antes de desativar usando o comando:
/opt/apigee/apigee-service/bin/apigee-all status
- Verifique se nenhum tráfego de ambiente de execução está 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, desative os componentes do Edge nesses nós na seguinte ordem:
- IU do Edge (interface de borda)
- Servidor de gerenciamento (edge-management-server)
- OpenLDAP (apigee-openldap)
- Roteador (roteador de borda)
- Processador de mensagens (processador de mensagens de borda)
- Qpid Server e Qpidd (edge-qpid-server e apigee-qpidd)
- Postgres e banco de dados 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 de interface do Edge de 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:
- Interrompa 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"
- Exclua o servidor. Observação:se outros componentes também estiverem instalados nesse 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 Configurações com mais de dois data centers abaixo.
Para desativar o OpenLDAP em dc-1, siga estas etapas:
- Faça backup do nó do 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.
Outra opção é seguir as etapas abaixo, que criam um usuário somente leitura no nó do OpenLDAP dc-2 e, em seguida, verificam se o usuário é 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}
- Adicionar 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 replicando:
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 que você adicionou 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
- Pare o OpenLDAP em dc-1:
/opt/apigee/apigee-service/bin/apigee-service apigee-openldap stop
- Desinstale o componente OpenLDAP na 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 ver 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 supomos que a porta 15999 de verificação de integridade do roteador está configurada no balanceador de carga e que o bloqueio da porta 15999 o tornará inacessível. Pode ser necessário acesso raiz para bloquear a porta.
Para desativar um roteador, siga estas etapas:
Desative a acessibilidade dos roteadores bloqueando a porta 15999, a porta de verificação de integridade. Verifique se o tráfego do ambiente 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 Acessar UUIDs.
- Interrompa o roteador:
/opt/apigee/apigee-service/bin/apigee-service edge-router stop
- Liste os pods de gateway disponíveis na organização pelo 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"
- Exclua o servidor:
curl -u <AdminEmailID>:'<AdminPassword>’ -X DELETE http://{MS_IP}:8080/v1/servers/UUID
- Desinstale
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 a remoção do processador de mensagens.
Como estamos supondo que dc-1 tem uma instalação de 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.
- Interrompa 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
Esta seção explica como desativar o Qpid Server (edge-qpid-server
) e o Qpidd (apigee-qpidd
). Como há dois nós Qpid configurados em dc-1, é preciso seguir as etapas a seguir para ambos:
- Consiga o UUID do Qpidd, conforme descrito em Acessar UUIDs.
- Interromper
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
- Veja uma lista do Analytics e dos grupos 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 os componentes de Edge-qpid-server em todos os nós para garantir que a alteração seja captada por eles:
$ /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 Edge-qpid-server e 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 você está desativando pode ter um mestre Postgres ou um Postgres de espera. Veja nas seções a seguir como desativá-los:
Desativando mestre Postgres
Observação:se você desativar o mestre do Postgres, promova qualquer um dos nós de espera disponíveis como um novo mestre postgres. Enquanto as queeus do QPID armazenam os dados em buffer, se o mestre Postgres não estiver disponível por muito tempo, você corre o risco de perder os 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, insira 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ó do Postgres em espera, será necessário adicionar entradas de host no novo mestre e atualizar a configuração de replicação para todos os nós do Postgres em espera 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 existente e promoveu um dos nós postgres em espera restantes para o mestre. Configure o nó de espera restante seguindo estas etapas:
- No novo 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
- Ative 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 pertence ao
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 todos 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
- Remova e adicione os servidores Postgresql do grupo de análise e do grupo de consumidores.
- Remova o servidor antigo do Postgres do grupo de análise seguindo as instruções em Remover um servidor 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 existente a um grupo de análise.
- Cancele o registro do antigo servidor postgres em 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
- Agora é seguro desativar o mestre Postgres. 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:
Desativando o modo de espera do Postgres
Observação: a documentação de uma instalação em cluster de 12 nós mostra o nó postgresql dc-1 como mestre, mas, por conveniência, nesta seção, presume-se que o nó postgresql dc-1 é em espera e o nó postgresql dc-2 é mestre.
Para desativar o modo de espera do Postgres, siga estas etapas:
- Acesse os UUIDs dos servidores Postgres seguindo as instruções em Receber UUIDs.
- Interrompa
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
- Remova e adicione os servidores Postgresql do grupo de análise e do grupo de consumidores.
- Remova o servidor antigo do Postgres do grupo de análise seguindo as instruções em Remover um servidor 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 existente a um grupo de análise.
- Cancele o registro do antigo servidor postgres em 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
- Agora é seguro desativar o mestre Postgres. 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 ZooKeeper e 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, elimine esses hosts de
CASS_HOSTS
. Os nós restantes do Cassandra precisam permanecer na ordem original deCASS_HOSTS
.Observação no ZooKeeper:é necessário manter um quórum de nós votantes ao modificar a propriedade
ZK_HOST
no arquivo de configuração para garantir que o ensemble do ZooKeeper permaneça funcional. Você precisa ter um número ímpar de nós eleitorais 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 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 serem 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 que foram 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 atuais 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 atuais 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 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 e execute o perfil MP/RMP
em todos os nós do roteador e do processador de mensagens:
- Se o Edge Router 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 Edge Router e o processador de mensagens estiverem configurados no mesmo nó, digite:
- Reconfigure todos os nós do Qpid, com os IPs de 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 de nós desativados removidos do arquivo de resposta:
/opt/apigee/apigee-setup/bin/setup.sh -p ps -f updated_config_file
- Alterar o keyspace
system_auth
. Se você tiver o Cassandra Auth ativado 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 essa etapa, a topologia do Cassandra não poderá 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, insira 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 em 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
- Paradas
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
Exclua 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 UUIDs, isso significa que as etapas anteriores removeram todas as vinculações 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
- Desassocie da 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 ainda existe um servidor específico no pod. Portanto, exclua-os seguindo as etapas de solução de problemas abaixo enquanto personaliza 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 as etapas para cancelar o registro e excluir os servidores. 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
É possível validar a desativação usando os comandos a seguir.
Servidor de gerenciamento
Execute os comandos a seguir 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 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 vai 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 sobre o data center ativo.
Nos nós do ZooKeeper, insira:
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
Confira 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 diz que o nó está em espera.
Faça login no banco de dados 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)
nas análises.”$org.$env.fact” limit 1
;Registros
Verifique os registros nos componentes para garantir que não há erros.
- No novo mestre, edite o arquivo de configuração para definir: