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 a instalação 4.16.05 para usar os RPMs e 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 da versão 4.16.05.x do Apigee Edge para a versão mais recente 4.16.05.

Se você estiver executando a versão 4.16.01.0x ou anterior do Edge, primeiro migre para a versão 4.16.05. Consulte Atualizar o Apigee Edge 4.16.01 para 4.16.05 para saber como migrar para a versão 4.16.05.

Quem pode fazer a atualização

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

Depois de instalar os RPMs do Edge, qualquer usuário pode configurá-los.

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

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

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

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

Pré-requisitos de atualização

Antes de fazer upgrade do Apigee Edge, siga estes pré-requisitos:

  • Fazer backup de todos os nós
    Antes de atualizar, é 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 realizar o backup.

    Isso permite que você tenha um plano de backup, 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á em execução durante o processo de atualização usando o comando:

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

Como lidar com uma falha na atualização

No caso de uma falha na atualização, tente corrigir o problema e execute update.sh novamente. É possível executar a atualização várias vezes, e ela vai continuar de onde parou.

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

Informações de atualização do Logging

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 chamado update_username.log.

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

Atualização sem inatividade

Uma atualização sem inatividade, ou atualização gradual, permite que você atualize a instalação do Edge sem desativar o Edge.

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

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

  1. Atualize as máquinas na ordem correta para sua instalação, conforme descrito abaixo em "Ordem de atualização da máquina".
  2. Quando for hora de atualizar os roteadores, selecione um roteador 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 do Edge na mesma máquina que o roteador. Todas as configurações do Edge 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 roteadores restantes.
  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 alcançar o desempenho ideal. É necessário 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 de mensagens ou do roteador, e reachable é definido como verdadeiro ou falso.

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

Cuide do seguinte antes/depois da atualização:

  • No nó combinado de 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. Tornar o processador de mensagens inacessível.
    • Após a atualização, faça o seguinte:
      1. Torne o processador de mensagens acessível.
      2. Torne o roteador acessível.
  • Em um único nó do roteador:
    • Antes da atualização, 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 silenciosa 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 houver, desative todos os cron jobs configurados para realizar 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 os RPMs do Edge
    Observação: embora a instalação do RPM exija acesso raiz, é possível realizar a configuração do Edge sem acesso raiz.
  3. Desative o SELinux conforme descrito em Instalar o utilitário apigee-setup 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 apigee-service do Edge e as dependências:
    > 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 pWord, será necessário inseri-lo.
  7. Use apigee-service para atualizar o utilitário apigee-setup:
    > /opt/apigee/apigee-service/bin/apigee-service apigee-setup update

    Essa atualização para 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":
    > /opt/apigee/apigee-setup/bin/update.sh -c component -f configFile

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

    Use a opção "-c" para especificar o componente a ser atualizado. A lista de componentes possíveis inclui:
    • ldap = OpenLDAP
    • cs = Cassandra
    • zk = Zookeeper
    • qpid = qpidd
    • ps = postgresql
    • edge =todos os componentes do Edge, exceto a IU do Edge: Management Server, processador de mensagens, Router, QPID Server, Postgres Server
    • ui = interface do Edge
    • all = atualiza todos os componentes na máquina (use apenas para um perfil de instalação do Edge aio ou um perfil de instalação do API BaaS asa)
    • e = ElasticSearch
    • b = pilha de BaaS da API
    • p = Portal da API BaaS
    • ebp = ElasticSearch, pilha de API BaaS e portal de API BaaS no mesmo nó
  9. Teste a atualização executando o utilitário apigee-validate, 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 um firewall ou, de alguma outra forma, proibidos de acessar o repositório da Apigee pela Internet, será possível realizar a atualização em um repositório local ou espelho do repositório da Apigee.

Depois de criar um repositório local do Edge, você tem duas opções para atualizar o Edge no repositório local:

  • Crie um arquivo .tar do repositório, copie o arquivo .tar para um nó e atualize o Edge usando o arquivo .tar.
  • Instale um servidor da Web no nó com o repositório local para que outros nós possam acessá-lo. Nginx e até mesmo o servidor da Web Apache.

Para atualizar de um repositório local 4.16.05:

  1. Verifique se você tem um repositório local 4.16.05, 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. Execute a sincronização:
      > /opt/apigee/apigee-service/bin/apigee-service apigee-mirror sync --only-new-rpms
  3. Para instalar o apigee-service de 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 apigee-mirror package
    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ó, descompacte o arquivo no 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 os RPMs do Edge
      Observação: embora a instalação do RPM exija acesso raiz, é possível realizar a configuração do Edge sem acesso raiz.
    5. Desative o SELinux conforme descrito em Instalar o utilitário apigee-setup 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

      Observe que você inclui o caminho para o diretório de repositórios neste comando.
  4. Para instalar o apigee-service 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 bootstrap_4.16.05.sh do Edge para /tmp/bootstrap_4.16.05.sh:
      > /usr/bin/curl http://uName:pWord@remoteRepo:3939/bootstrap_4.16.05.sh -o /tmp/bootstrap_4.16.05.sh

      em que uName:pWord são o nome de usuário e a senha que você definiu acima para o repositório, e remoteRepo é o endereço IP ou o nome DNS do nó do repositório.
    3. Faça login no nó como raiz para instalar os RPMs do Edge
      Observação: embora a instalação do RPM exija acesso raiz, é possível realizar a configuração do Edge sem acesso raiz.
    4. Desative o SELinux conforme descrito em Instalar o utilitário apigee-setup do Edge.
    5. No nó remoto, instale o utilitário apigee-service do Edge e as dependências:
      > sudo bash /tmp/bootstrap_4.16.05.sh apigeerepohost=remoteRepo:3939 apigeeuser=uNamea pigeepassword=pWord apigeeprotocol=http://

      em que uName:pWord são o nome de usuário e a senha do repositório.
  5. Se houver, desative todos os cron jobs configurados para realizar uma operação de reparo no Cassandra até que a atualização seja concluída.
  6. Use apigee-service para atualizar o utilitário apigee-setup:
    > /opt/apigee/apigee-service/bin/apigee-service apigee-setup update

    Essa atualização para 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":
    > /opt/apigee/apigee-setup/bin/update.sh -c component -f configFile

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

    Use a opção "-c" para especificar o componente a ser atualizado. A lista de componentes possíveis inclui:
    • ldap = OpenLDAP
    • cs = Cassandra
    • zk = Zookeeper
    • qpid = qpidd
    • ps = postgresql
    • edge =todos os componentes do Edge, exceto a IU do Edge: Management Server, processador de mensagens, Router, QPID Server, Postgres Server
    • ui = interface do Edge
    • all = atualiza todos os componentes na máquina (use apenas para um perfil de instalação do Edge aio ou um perfil de instalação do API BaaS asa)
    • e = ElasticSearch
    • b = pilha de BaaS da API
    • p = Portal da API BaaS
    • ebp = ElasticSearch, pilha de API BaaS e portal de API BaaS no mesmo nó
  8. Teste a atualização executando o utilitário apigee-validate, Teste a instalação.

Ordem de atualização da máquina

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

  • Atualize todos os nós do Cassandra e do ZooKeeper antes de atualizar qualquer outro nó.
  • É necessário atualizar todos os nós qpidd e postgresql antes de atualizar os nós do roteador e do processador de mensagens.
  • Para qualquer máquina com vários componentes do Edge (servidor de gerenciamento, processador de mensagens, roteador, servidor QPID, servidor Postgres), use a opção "-c edge" para atualizar todos ao mesmo tempo.
  • Se uma etapa especificar que deve ser realizada em várias máquinas, faça isso na ordem especificada.
  • Não há uma etapa separada para atualizar a Monetização. Ele é atualizado quando você especifica a opção "-c edge".
  • 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 independente de 1 host

  1. Atualize 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 edge-router restart

Para uma instalação independente de dois hosts

Consulte Topologias de instalação para ver a lista de topologias do Edge 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 qpidd e postgresql na máquina 2:
    > /opt/apigee/apigee-setup/bin/update.sh -c qpid,ps -f configFile
  3. Atualize 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 2 e na máquina 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 do Edge:
      > /<inst_root>/apigee/apigee-service/bin/apigee-service edge-router restart
  6. Atualize a IU na máquina 1:
    > /opt/apigee/apigee-setup/bin/update.sh -c ui -f configFile

Para uma instalação em cluster de 5 hosts

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

  1. Atualize o Cassandra e o ZooKeeper nas máquinas 1, 2 e 3:
    > /opt/apigee/apigee-setup/bin/update.sh -c cs,zk -f configFile
  2. Atualize qpidd e postgresql nas máquinas 4 e 5:
    > /opt/apigee/apigee-setup/bin/update.sh -c qpid,ps -f configFile
  3. Atualize 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 4, 5, 1, 2 e 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 do Edge:
      > /<inst_root>/apigee/apigee-service/bin/apigee-service edge-router restart
  6. Atualize a IU na máquina 1:
    > /opt/apigee/apigee-setup/bin/update.sh -c ui -f configFile

Para uma instalação em cluster de 9 hosts

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

  1. Atualize o Cassandra e o ZooKeeper nas máquinas 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. Atualize 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, nessa 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 do Edge:
      > /<inst_root>/apigee/apigee-service/bin/apigee-service edge-router restart
  7. Atualize 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 do Edge e números de nós.

  1. Atualize o Cassandra e o ZooKeeper nas máquinas 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, nessa ordem:
    > /opt/apigee/apigee-setup/bin/update.sh -c edge -f configFile
  6. No nó 10 e 11:
    1. Exclua todos os arquivos em /opt/nginx/conf.d:
      > rm -f /opt/nginx/conf.d/*
    2. Reinicie o roteador do Edge:
      > /<inst_root>/apigee/apigee-service/bin/apigee-service edge-router restart
  7. Atualize a IU nas máquinas 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 do Edge 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 e 5 no data center 1
      > /opt/apigee/apigee-setup/bin/update.sh -c qpid -f configFile
    2. Máquinas 10 e 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áquinas 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 do Edge:
        > /<inst_root>/apigee/apigee-service/bin/apigee-service edge-router restart
  6. Atualizar 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 de API BaaS com sete hosts

Consulte Topologias de instalação para ver a lista de topologias do Edge 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 pilha de BaaS da API nas máquinas 1, 2 e 3:
    > /opt/apigee/apigee-setup/bin/update.sh -c e,b -f configFile
  3. Atualize o portal da API BaaS na máquina 4:
    > /opt/apigee/apigee-setup/bin/update.sh -c p -f configFile

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

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

  1. Atualize o Cassandra nas máquinas 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 da API BaaS 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 edge" em todos os nós na ordem: Qpid, Postgres, Management Server, processador de mensagens, 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 do Edge:
      > /<inst_root>/apigee/apigee-service/bin/apigee-service edge-router restart
  8. Interface