Atualize o Apigee Edge 4.16.05.x para a versão 4.16.05 mais recente

Edge para nuvem privada v. 4.16.05

Este documento contém o procedimento usado para atualizar sua instalação 4.16.05 atual para usar as RPMs e os arquivos de suporte mais recentes da Apigee. Este procedimento usa o utilitário update.sh para realizar a atualização.

Quais versões do Edge podem ser atualizadas para a versão mais recente 4.16.05

Só é possível atualizar uma instalação atual do Apigee Edge versão 4.16.05.x para a versão mais recente 4.16.05.

Se você estiver usando o Edge versão 4.16.01.0x ou anterior, primeiro migre para a versão 4.16.05. Consulte Atualizar o Apigee Edge 4.16.01 para 4.16.05 para informações sobre como migrar para a versão 4.16.05.

Quem pode executar a atualização

O usuário que está executando a atualização precisa ser o mesmo que instalou o Edge ou um usuário que está executando como raiz.

Depois que você instalar as RPMs do Edge, qualquer usuário poderá configurá-las.

Requisitos de espaço em disco para atualização

Verifique se você tem pelo menos 1 GBytes de espaço livre em disco antes de fazer a atualização.

Propagação automática de configurações de propriedade de 4.16.05.x

Se você tiver definido alguma propriedade editando arquivos .properties em /opt/apigee/customer/application, esses valores serão mantidos pela atualização.

Atualizar pré-requisitos

Verifique os seguintes pré-requisitos antes de fazer upgrade do Apigee Edge:

  • Fazer backup de todos os nós
    Antes da atualização, é recomendável fazer um backup completo de todos os nós por motivos de segurança. Use o procedimento da sua versão atual do Edge para fazer o backup.

    Isso permite que você tenha um plano alternativo caso a atualização para uma nova versão não funcione corretamente. Para mais informações sobre backup, consulte Backup e restauração.
  • Verifique se o Edge está em execução
    Verifique se o Edge está funcionando durante o processo de atualização usando o comando:

    > /<inst_root>/apigee/apigee-service/bin/apigee-all status

Como lidar com uma atualização com falha

Em caso de falha na atualização, tente corrigir o problema e execute update.sh novamente. Você pode executar a atualização várias vezes e ela continua de onde parou.

Se a falha exigir que você reverta a atualização para a versão anterior, consulte Processo de reversão 4.16.05.

Como registrar informações de atualização

Por padrão, o utilitário update.sh grava informações de registro em:

/opt/apigee/var/log/apigee-setup/update.log

Se o usuário que executa o utilitário update.sh não tiver acesso a esse diretório, ele gravará o registro no diretório /tmp como um arquivo denominado update_username.log.

Se o usuário não tiver acesso a /tmp, o utilitário update.sh falhará.

Atualização sem inatividade

Uma atualização sem inatividade, ou atualização gradual, permite atualizar a instalação do Edge sem derrubar o Edge.

A atualização sem inatividade só é possível com uma configuração de cinco nós ou mais.

A chave para o upgrade sem inatividade é remover cada roteador, um de cada vez, do balanceador de carga. Em seguida, atualize o roteador e todos os outros componentes na mesma máquina que o roteador e, em seguida, adicione o roteador de volta ao balanceador de carga.

  1. Atualize as máquinas na ordem correta para a instalação, conforme descrito abaixo em "Ordem de atualização da máquina".
  2. Quando você precisar atualizar os roteadores, selecione um deles e torne-o inacessível, conforme descrito na próxima seção "Como tornar um roteador e um processador de mensagens inacessíveis".
  3. Atualize o roteador selecionado e todos os outros componentes de borda na mesma máquina que o roteador. Todas as configurações de borda mostram um roteador e um processador de mensagens no mesmo nó.
  4. Torne o roteador acessível novamente.
  5. Repita as etapas de 2 a 4 para os outros roteadores.
  6. Continue a atualização para as máquinas restantes na instalação.

Como tornar um roteador e um processador de mensagens inacessíveis

Em uma configuração de produção, você terá vários roteadores e processadores de mensagens para atingir o desempenho ideal e precisará ativar/desativar a acessibilidade desses roteadores e processadores de mensagens antes/depois da atualização.

A chamada de API a seguir configura um nó como acessível ou inacessível:

> curl -u adminEmail:pWord -X POST "http://<ms_IP>:8080/v1/servers/UUID" -d "reachable=true|false"

em que UUID é o UUID do processador ou roteador de mensagens e "reachable" é definido como "true" ou "false".

Se você precisar determinar o UUID do roteador, use o seguinte comando cURL:

> curl http://<routerIP>:8081/v1/servers/self

Se você precisar determinar o UUID do processador de mensagens, use o seguinte comando cURL:

> curl http://<mpIP>:8082/v1/servers/self

Tome cuidado com o seguinte antes/depois da atualização:

  • No nó combinado do roteador e processador de mensagens:
    • Antes da atualização: faça o seguinte:
      1. Torne o roteador inacessível usando a chamada de API mostrada acima.
      2. Torne o processador de mensagens inacessível.
    • Depois da atualização, faça o seguinte:
      1. Torne o processador de mensagens acessível.
      2. Torne o roteador acessível.
  • No único nó do roteador:
    • Antes de atualizar, torne o roteador acessível.
    • Após a atualização, torne o roteador acessível.
  • Em um único nó do processador de mensagens:
    • Antes da atualização, torne o processador de mensagens inacessível.
    • Após a atualização, torne o processador de mensagens acessível.

Como usar um arquivo de configuração silencioso

É necessário transmitir um arquivo de configuração silencioso para o comando de atualização. O arquivo de configuração silenciosa precisa ser o mesmo usado para instalar o Edge 4.16.05.

Procedimento para atualizar a versão 4.16.05 em um nó com uma conexão de Internet externa.

Use o procedimento a seguir para atualizar os componentes do Edge em um nó:

  1. Se estiver presente, desative todos os jobs CRON configurados para executar uma operação de reparo no Cassandra até que a atualização seja concluída.
  2. Faça login no nó como raiz para instalar as RPMs do Edge
    Observação: embora a instalação do RPM exija acesso raiz, é possível realizar a configuração do Edge sem esse acesso.
  3. Desative o SELinux conforme descrito em Instalar o utilitário de configuração da Apigee do Edge.
  4. Limpe todos os caches do Yum:
    > sudo yum clean all
  5. Faça o download do arquivo bootstrap_4.16.05.sh mais recente do Edge para /tmp/bootstrap_4.16.05.sh:
    > curl https://software.apigee.com/bootstrap_4.16.05.sh -o /tmp/bootstrap_4.16.05.sh
  6. Atualize o utilitário e as dependências do serviço Apigee Edge:
    > sudo bash /tmp/bootstrap_4.16.05.sh apigeeuser=uName apigeepassword=pWord

    em que uName:pWord são o nome de usuário e a senha que você recebeu da Apigee. Se você omitir o pWord, será solicitado que o insira.
  7. Usar apigee-service para atualizar o utilitário apigee-setup:
    > /opt/apigee/apigee-service/bin/apigee-service apigee-setup atualização

    Esta atualização para o apigee-service instala o utilitário update.sh em /<inst_dir>/apigee/apigee-setup/bin.
  8. Execute o utilitário de atualização nos nós na ordem descrita abaixo em "Ordem de atualização da máquina" abaixo:
    > /opt/apigee/apigee-setup/bin/update.sh -c attribute -f configFile

    O único requisito do arquivo de configuração é que ele precisa estar acessível ou legível pelo usuário "apigee". Por exemplo, coloque o arquivo no diretório /tmp do nó.

    Use a opção "-c" para especificar o componente a ser atualizado. A lista de possíveis componentes inclui:
    • ldap = OpenLDAP
    • cs = Cassandr
    • zk = tratador
    • qpid = qpidd
    • ps = postgresql
    • borda =Todos os componentes do Edge, exceto a interface do Edge: servidor de gerenciamento, processador de mensagens, roteador, servidor QPID e servidor Postgres
    • ui = interface do Edge
    • all = atualizar todos os componentes na máquina (use apenas para um perfil de instalação de Aio Edge ou um perfil de instalação de API BaaS asa)
    • e = ElasticSearch
    • b = Pilha BaaS de API
    • p = Portal da API BaaS
    • ebp = ElasticSearch, API BaaS Stack e API BaaS Portal no mesmo nó
  9. Para testar a atualização, execute o utilitário apigee-validate e teste a instalação.

Procedimento para atualizar a versão 4.16.05 de um repositório local

Se os nós do Edge estiverem protegidos por firewall ou, de alguma outra forma, estiverem proibidos de acessar o repositório da Apigee pela Internet, realize a atualização a partir de um repositório local, ou espelho, do repositório da Apigee.

Depois de criar um repositório local do Edge, você terá duas opções para atualizar o Edge a partir do repositório local:

  • Crie um arquivo .tar do repositório, copie-o em um nó e atualize o Edge a partir dele.
  • Instale um servidor da Web no nó com o repositório local para que outros nós possam acessá-lo. A Apigee fornece o servidor da Web Nginx para você usar, mas também é possível usar seu próprio servidor da Web.

Para atualizar de um repositório 4.16.05 local:

  1. Verifique se você tem um repositório 4.16.05 local, conforme descrito em Instalar componentes do Edge em um nó.
  2. Atualize o repositório local:
    1. Faça o download do arquivo bootstrap_4.16.05.sh mais recente do Edge para /tmp/bootstrap_4.16.05.sh:
      > curl https://software.apigee.com/bootstrap_4.16.05.sh -o /tmp/bootstrap_4.16.05.sh
    2. Faça a sincronização:
      > /opt/apigee/apigee-service/bin/apigee-service apigee-mirror sync --only-new-rpms
  3. Para instalar o apigee-service usando um arquivo .tar:
    1. No nó com o repositório local, use o seguinte comando para empacotar o repositório local em um único arquivo .tar chamado /opt/apigee/data/apigee-mirror/apigee-4.16.05.tar.gz:
      > /opt/apigee/apigee-service/bin/apigee-service pacote apigee-mirror
    2. Copie o arquivo .tar para o nó em que você quer atualizar o Edge. Por exemplo, copie-o para o diretório /tmp no novo nó.
    3. No novo nó, remova o arquivo para o diretório /tmp:
      > tar -xzf apigee-4.16.05.tar.gz

      Esse comando cria um novo diretório, chamado repos, no diretório que contém o arquivo .tar. Por exemplo, /tmp/repos.
    4. Faça login no nó como raiz para instalar as RPMs do Edge
      Observação: embora a instalação do RPM exija acesso raiz, é possível realizar a configuração do Edge sem esse acesso.
    5. Desative o SELinux conforme descrito em Instalar o utilitário de configuração da Apigee do Edge.
    6. Instale o utilitário apigee-service do Edge e as dependências de /tmp/repos:
      > sudo bash /tmp/repos/bootstrap_4.16.05.sh apigeeprotocol="file://" apigeerepobasepath=/tmp/repos

      Você inclui o caminho para o diretório de repositórios neste comando.
  4. Para instalar o serviço da Apigee usando o servidor da Web Nginx:
    1. Configure o servidor da Web Nginx conforme descrito em "Instalar do repositório usando o servidor da Web Nginx" em Instalar componentes do Edge em um nó.
    2. No nó remoto, faça o download do arquivo Edge bootstrap_4.16.05.sh para /tmp/bootstrap_4.16.05.sh:
      > /usr/bin/curl http://uName:pWord@remoteRepo:3939/bootstrap_4.16.05.sh o nome de usuário /tmp/bootstrap_4.16.05.SH

    3. Faça login no nó como raiz para instalar as RPMs do Edge
      Observação: embora a instalação do RPM exija acesso raiz, é possível realizar a configuração do Edge sem esse acesso.
    4. Desative o SELinux conforme descrito em Instalar o utilitário de configuração da Apigee do Edge.
    5. No nó remoto, instale o utilitário e as dependências do serviço Apigee Edge:
      > sudo bash /tmp/bootstrap_4.16.05.sh apigeerepohost=remoteRepo:3939 apigeeuser=uNamea pigeepassword=pWord. apigeeprotocol=http://



      o nome de usuário e senha em remoteRepo.
  5. Se estiver presente, desative todos os jobs CRON configurados para executar uma operação de reparo no Cassandra até que a atualização seja concluída.
  6. Usar apigee-service para atualizar o utilitário apigee-setup:
    > /opt/apigee/apigee-service/bin/apigee-service apigee-setup atualização

    Esta atualização para o apigee-service instala o utilitário update.sh em <inst_dir>/apigee/apigee-setup/bin.
  7. Execute o utilitário de atualização nos nós na ordem descrita abaixo em "Ordem de atualização da máquina" abaixo:
    > /opt/apigee/apigee-setup/bin/update.sh -c attribute -f configFile

    O único requisito do arquivo de configuração é que ele precisa estar acessível ou legível pelo usuário "apigee". Por exemplo, coloque o arquivo no diretório /tmp do nó.

    Use a opção "-c" para especificar o componente a ser atualizado. A lista de possíveis componentes inclui:
    • ldap = OpenLDAP
    • cs = Cassandr
    • zk = tratador
    • qpid = qpidd
    • ps = postgresql
    • borda =Todos os componentes do Edge, exceto a interface do Edge: servidor de gerenciamento, processador de mensagens, roteador, servidor QPID e servidor Postgres
    • ui = interface do Edge
    • all = atualizar todos os componentes na máquina (use apenas para um perfil de instalação de Aio Edge ou um perfil de instalação de API BaaS asa)
    • e = ElasticSearch
    • b = Pilha BaaS de API
    • p = Portal da API BaaS
    • ebp = ElasticSearch, API BaaS Stack e API BaaS Portal no mesmo nó
  8. Para testar a atualização, execute o utilitário Teste a instalação da Apigee.

Ordem de atualização da máquina

A ordem de atualização das máquinas em uma instalação do Edge é importante. As considerações mais importantes para uma atualização são:

  • É preciso atualizar todos os nós do Cassandra e do ZooKeeper antes de atualizar os outros.
  • Você precisa atualizar todos os nós qpidd e postgresql antes de atualizar qualquer nó do Roteador e do processador de mensagens.
  • Para qualquer máquina com vários componentes de borda (servidor de gerenciamento, processador de mensagens, roteador, servidor QPID, servidor Postgres), use a opção "-c borda" para atualizar todos ao mesmo tempo.
  • Se uma etapa especificar que ela precisa ser executada em várias máquinas, execute-a na ordem especificada.
  • Não há uma etapa separada para atualizar a monetização. Ela é atualizada quando você especifica a opção "-c borda".
  • Depois de atualizar um nó do roteador, remova todos os arquivos do diretório /opt/nginx/conf.d e reinicie o roteador.

Para uma instalação autônoma de um host

  1. Atualizar a máquina 1:
    > /opt/apigee/apigee-setup/bin/update.sh -c all -f configFile
  2. Exclua todos os arquivos em /opt/nginx/conf.d:
    > rm -f /opt/nginx/conf.d/*
  3. Reinicie o roteador de borda:
    > /<inst_root>/apigee/apigee-service/bin/apigee-service change-router restart

Para uma instalação autônoma de dois hosts

Consulte Topologias de instalação para ver a lista de topologias de borda e números de nós.

  1. Atualize o Cassandra e o ZooKeeper na máquina 1:
    > /opt/apigee/apigee-setup/bin/update.sh -c cs,zk -f configFile
  2. Atualize o qpidd e o postgresql na máquina 2:
    > /opt/apigee/apigee-setup/bin/update.sh -c qpid,ps -f configFile
  3. Atualizar o LDAP na máquina 1:
    > /opt/apigee/apigee-setup/bin/update.sh -c ldap -f configFile
  4. Atualize os componentes do Edge nas máquinas 2 e 1:
    > /opt/apigee/apigee-setup/bin/update.sh -c Edge -f configFile
  5. No nó 1:
    1. Exclua todos os arquivos em /opt/nginx/conf.d:
      > rm -f /opt/nginx/conf.d/*
    2. Reinicie o roteador de borda:
      > /<inst_root>/apigee/apigee-service/bin/apigee-service change-router restart
  6. Atualizar a IU na máquina 1:
    > /opt/apigee/apigee-setup/bin/update.sh -c ui -f configFile

Para uma instalação em cluster com 5 hosts

Consulte Topologias de instalação para ver a lista de topologias de borda e números de nós.

  1. Atualize o Cassandra e o ZooKeeper na máquina 1, 2 e 3:
    > /opt/apigee/apigee-setup/bin/update.sh -c cs,zk -f configFile
  2. Atualize o qpidd e o postgresql nas máquinas 4 e 5:
    > /opt/apigee/apigee-setup/bin/update.sh -c qpid,ps -f configFile
  3. Atualizar o LDAP na máquina 1:
    > /opt/apigee/apigee-setup/bin/update.sh -c ldap -f configFile
  4. Atualize os componentes do Edge na máquina 4, 5, 1, 2, 3:
    > /opt/apigee/apigee-setup/bin/update.sh -c Edge -f configFile
  5. Nos nós 2 e 3:
    1. Exclua todos os arquivos em /opt/nginx/conf.d:
      > rm -f /opt/nginx/conf.d/*
    2. Reinicie o roteador de borda:
      > /<inst_root>/apigee/apigee-service/bin/apigee-service change-router restart
  6. Atualizar a IU na máquina 1:
    > /opt/apigee/apigee-setup/bin/update.sh -c ui -f configFile

Para uma instalação em cluster com nove hosts

Consulte Topologias de instalação para ver a lista de topologias de borda e números de nós.

  1. Atualize o Cassandra e o ZooKeeper na máquina 1, 2 e 3:
    > /opt/apigee/apigee-setup/bin/update.sh -c cs,zk -f configFile
  2. Atualize o qpidd nas máquinas 6 e 7:
    > /opt/apigee/apigee-setup/bin/update.sh -c qpid -f configFile
  3. Atualize o postgresql nas máquinas 8 e 9:
    > /opt/apigee/apigee-setup/bin/update.sh -c ps -f configFile
  4. Atualizar o LDAP na máquina 1:
    > /opt/apigee/apigee-setup/bin/update.sh -c ldap -f configFile
  5. Atualize os componentes do Edge nas máquinas 6, 7, 8, 9, 1, 4 e 5 nesta ordem:
    > /opt/apigee/apigee-setup/bin/update.sh -c Edge -f configFile
  6. Nos nós 4 e 5:
    1. Exclua todos os arquivos em /opt/nginx/conf.d:
      > rm -f /opt/nginx/conf.d/*
    2. Reinicie o roteador de borda:
      > /<inst_root>/apigee/apigee-service/bin/apigee-service change-router restart
  7. Atualizar a IU na máquina 1:
    > /opt/apigee/apigee-setup/bin/update.sh -c ui -f configFile

Para uma instalação em cluster de 13 hosts

Consulte Topologias de instalação para ver a lista de topologias de borda e números de nós.

  1. Atualize o Cassandra e o ZooKeeper na máquina 1, 2 e 3:
    > /opt/apigee/apigee-setup/bin/update.sh -c cs,zk -f configFile
  2. Atualize o qpidd nas máquinas 12 e 13:
    > /opt/apigee/apigee-setup/bin/update.sh -c qpid -f configFile
  3. Atualize o postgresql nas máquinas 8 e 9:
    > /opt/apigee/apigee-setup/bin/update.sh -c ps -f configFile
  4. Atualize o LDAP nas máquinas 4 e 5:
    > /opt/apigee/apigee-setup/bin/update.sh -c ldap -f configFile
  5. Atualize os componentes do Edge nas máquinas 12, 13, 8, 9, 6, 7, 10 e 11 nesta ordem:
    > /opt/apigee/apigee-setup/bin/update.sh -c Edge -f configFile
  6. Nos nós 10 e 11:
    1. Exclua todos os arquivos em /opt/nginx/conf.d:
      > rm -f /opt/nginx/conf.d/*
    2. Reinicie o roteador de borda:
      > /<inst_root>/apigee/apigee-service/bin/apigee-service change-router restart
  7. Atualize a IU na máquina 6 e 7:
    > /opt/apigee/apigee-setup/bin/update.sh -c ui -f configFile

Para uma instalação em cluster de 12 hosts

Consulte Topologias de instalação para ver a lista de topologias de borda e números de nós.

  1. Atualize o Cassandra e o ZooKeeper:
    1. Nas máquinas 1, 2 e 3 no data center 1:
      > /opt/apigee/apigee-setup/bin/update.sh -c cs,zk -f configFile
    2. Nas máquinas 7, 8 e 9 no data center 2
      > /opt/apigee/apigee-setup/bin/update.sh -c cs,zk -f configFile
  2. Atualize o qpidd:
    1. Máquinas 4, 5 no data center 1
      > /opt/apigee/apigee-setup/bin/update.sh -c qpid -f configFile
    2. Máquinas 10, 11 no Data center 2
      > /opt/apigee/apigee-setup/bin/update.sh -c qpid -f configFile
  3. Atualize o postgresql:
    1. Máquinas 6 no Data center 1
      > /opt/apigee/apigee-setup/bin/update.sh -c ps -f configFile
    2. Máquinas 12 no data center 2
      > /opt/apigee/apigee-setup/bin/update.sh -c ps -f configFile
  4. Atualize o LDAP:
    1. Máquina 1 no Data center 1
      > /opt/apigee/apigee-setup/bin/update.sh -c ldap -f configFile
    2. Máquinas 7 no Data center 2
      > /opt/apigee/apigee-setup/bin/update.sh -c ldap -f configFile
  5. Atualize os componentes do Edge:
    1. Máquinas 4, 5, 6, 1, 2, 3 no Data center 1
      > /opt/apigee/apigee-setup/bin/update.sh -c Edge -f configFile
    2. Máquinas 10, 11, 12, 7, 8, 9 no Data Center 2
      > /opt/apigee/apigee-setup/bin/update.sh -c Edge -f configFile
    3. Nos nós 2, 3, 8 e 9:
      1. Exclua todos os arquivos em /opt/nginx/conf.d:
        > rm -f /opt/nginx/conf.d/*
      2. Reinicie o roteador de borda:
        > /<inst_root>/apigee/apigee-service/bin/apigee-service edge-router restart
  6. Atualize a interface:
    1. Máquina 1 no Data center 1
      > /opt/apigee/apigee-setup/bin/update.sh -c ui -f configFile
    2. Máquina 7 no Data center 2
      > /opt/apigee/apigee-setup/bin/update.sh -c ui -f configFile

Para uma instalação do BaaS da API com sete hosts

Consulte Topologias de instalação para ver a lista de topologias de borda e números de nós.

  1. Atualize o Cassandra nas máquinas 5, 6 e 7:
    > /opt/apigee/apigee-setup/bin/update.sh -c cs -f configFile
  2. Atualize o ElasticSearch e a API BaaS Stack na máquina 1, 2 e 3:
    > /opt/apigee/apigee-setup/bin/update.sh -c e,b -f configFile
  3. Atualize o portal BaaS da API na máquina 4:
    > /opt/apigee/apigee-setup/bin/update.sh -c p -f configFile

Para uma instalação de API BaaS com 10 hosts

Consulte Topologias de instalação para ver a lista de topologias de borda e números de nós.

  1. Atualize o Cassandra na máquina 8, 9 e 10:
    > /opt/apigee/apigee-setup/bin/update.sh -c cs -f configFile
  2. Atualize o ElasticSearch nas máquinas 1, 2 e 3:
    > /opt/apigee/apigee-setup/bin/update.sh -c e -f configFile
  3. Atualize a pilha da API BaaS nas máquinas 4, 5 e 6:
    > /opt/apigee/apigee-setup/bin/update.sh -c b -f configFile
  4. Atualize o portal BaaS da API na máquina 7:
    > /opt/apigee/apigee-setup/bin/update.sh -c p -f configFile

Para uma instalação não padrão

Se você tiver uma instalação não padrão, atualize os componentes do Edge na seguinte ordem:

  1. ZooKeeper
  2. Cassandra
  3. Qpidd
  4. postgresql
  5. LDAP
  6. Edge, ou seja, o perfil "-c borda" em todos os nós na ordem: Qpid, Postgres, Management Server, Message Processor, Router.
  7. Em todos os nós do roteador:
    1. Exclua todos os arquivos em /opt/nginx/conf.d:
      > rm -f /opt/nginx/conf.d/*
    2. Reinicie o roteador de borda:
      > /<inst_root>/apigee/apigee-service/bin/apigee-service change-router restart
  8. Interface