Como fazer upgrade do portal dos serviços para desenvolvedores

Portal de serviços para desenvolvedores v. 4.17.09

Neste procedimento, descrevemos como fazer upgrade de uma instalação local dos serviços do canal do desenvolvedor da Apigee.

Como determinar o procedimento de atualização correto

O procedimento usado para atualizar o portal é baseado na instalação atual:

Como determinar seu tipo de instalação atual

Se você não tiver certeza sobre o tipo de instalação atual, use o seguinte comando para determinar:

  • ls /opt

    Se você estiver usando o Nginx/Postgres, verá os seguintes diretórios: /opt/apigee e /opt/nginx.

    Se você estiver usando Apache/MySQL ou Apache/MariaDB, esses diretórios não devem estar presentes.

  • /opt/apigee/apigee-service/bin/apigee-all status

    Se você estiver usando o Nginx/Postgres, vai aparecer a seguinte saída:

    + apigee-service
      apigee-drupal-devportal status
      OK: apigee-drupal-devportal is up and running
      + apigee-service apigee-lb status
      apigee-service: apigee-lb: OK
      + apigee-service apigee-postgresql status
      apigee-service: apigee-postgresql: OK
  • apachectl -S

    Se você estiver usando Apache/MySQL ou Apache/MariaDB, esse comando vai retornar o diretório raiz da Web do portal, no formato:

    *:80
      192.168.56.102
      (/etc/httpd/conf/vhosts/devportal.conf:1)

Diretório de instalação padrão

O processo de upgrade pressupõe que o portal do desenvolvedor foi instalado em:

  • 4.17.05 e mais recentes: /opt/apigee/apigee-drupal/wwwroot
  • Antes de 4.17.05: /opt/apigee/apigee-drupal (Nginx) ou /var/www/html (Apache)

Se você não instalou o portal no diretório padrão, modifique os caminhos no procedimento abaixo para usar o diretório de instalação.

Versões de upgrade compatíveis

Este procedimento de upgrade é compatível com as seguintes versões do portal:

  • OPDK-17-01.x
  • OPDK-17-05.x

Para determinar a versão do portal, abra o seguinte URL em um navegador:

http://your_portal.com/buildInfo

Antes de atualizar

Para instalações atuais, se você tiver modificado algum código no núcleo do Drupal ou em qualquer módulo não personalizado, suas modificações serão substituídas. Isso inclui, entre outras coisas, as mudanças que você fez em .htaccess. Presuma que tudo fora do diretório /sites pertence ao Drupal. Uma exceção a essa regra é robots.txt. Se esse arquivo existir na raiz da Web, ele será preservado para você.

Antes de prosseguir com a instalação, faça um backup de todo o diretório raiz da Web do Drupal. Depois de realizar as etapas de instalação descritas abaixo, você poderá restaurar suas personalizações do backup.

Como fazer upgrade de um portal usando RPMs

Use o procedimento a seguir para atualizar o RPM do portal em um nó:

  1. Mude para o diretório do Drupal. Por exemplo, /opt/apigee/apigee-drupal/wwwroot.

    cd /opt/apigee/apigee-drupal/wwwroot

    Consulte Diretório de instalação padrão para ver o diretório padrão da versão de produção.

  2. Faça backup da instância do banco de dados do Drupal. O comando pg_dump cria uma cópia do banco de dados:
    pg_dump --dbname=devportal --host=192.168.56.101
      --username=drupaladmin --password --format=c > /tmp/portal.dmp

    em que:

    • dbname especifica o nome do banco de dados, conforme especificado pela propriedade PG_NAME no arquivo de configuração de instalação do portal.
    • host especifica o endereço IP do nó do portal.
    • username especifica o nome de usuário do Postgres usado pelo portal para acessar o banco de dados, conforme especificado pela propriedade DRUPAL_PG_USER no arquivo de configuração de instalação do portal.
    • Será solicitada a senha do usuário do Postgres, conforme definido pela propriedade DRUPAL_PG_PASS no arquivo de configuração de instalação do portal.

    Se você precisar restaurar o backup mais tarde, use o comando:

    pg_restore --clean --dbname=devportal --host=localhost  --username=apigee < /tmp/portal.dmp
  3. Faça um backup de todo o diretório raiz da Web do Drupal. O local de instalação padrão é /opt/apigee/apigee-drupal, mas talvez você o tenha alterado.
    Se você não tiver certeza do local desse diretório, use o comando drush status ou a entrada Configuração > Mídia > Arquivo no menu do Drupal para determinar o local do sistema de arquivos público e o caminho do sistema de arquivos privado (para a próxima etapa).
  4. Faça um backup dos arquivos em /opt/apigee/data/apigee-drupal-devportal/private.
  5. Defina o Drupal para o modo de manutenção:
    1. Selecione Configuração no menu do Drupal.
    2. Na página Configuração, selecione Modo de manutenção em Desenvolvimento.
    3. Marque a caixa Colocar o site em modo de manutenção.
    4. Insira uma mensagem que os usuários vão ver durante a manutenção.
    5. Selecione Salvar configuração.
  6. Desative o SELinux conforme descrito em Instalar o utilitário apigee-setup do Edge.
  7. Use o diretório /opt:
    cd /opt
  8. Para um upgrade em um servidor com conexão de Internet:
    1. Faça o download do arquivo bootstrap_4.17.09.sh do Edge 4.17.09 para /tmp/bootstrap_4.17.09.sh:
      curl https://software.apigee.com/bootstrap_4.17.09.sh -o /tmp/bootstrap_4.17.09.sh
    2. Instale o utilitário e as dependências do Edge 4.17.09 apigee-service:
      sudo bash /tmp/bootstrap_4.17.09.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á solicitado que você o insira.

      Por padrão, o instalador verifica se o Java 1.8 está instalado. Use a opção "C" para continuar sem instalar o Java.

  9. Para fazer upgrade em um servidor sem conexão de Internet:
    1. Crie um repositório local 4.17.09, conforme descrito em "Criar um repositório local da Apigee" em Instalar o utilitário apigee-setup do Edge.
    2. 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.17.09.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.17.09.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. Instale o utilitário Edge apigee-service e as dependências de /tmp/repos:
        sudo bash /tmp/repos/bootstrap_4.17.09.sh apigeeprotocol="file://" apigeerepobasepath=/tmp/repos

        Observe que você inclui o caminho para o diretório de repositórios nesse comando.

    3. 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 o utilitário apigee-setup do Edge.
      2. No nó remoto, faça o download do arquivo bootstrap_4.17.09.sh do Edge para /tmp/bootstrap_4.17.09.sh:
        /usr/bin/curl http://uName:pWord@remoteRepo:3939/bootstrap_4.17.09.sh
          -o /tmp/bootstrap_4.17.09.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. No nó remoto, instale o utilitário apigee-service do Edge e as dependências:code
        sudo bash /tmp/bootstrap_4.17.09.sh apigeerepohost=remoteRepo:3939
          apigeeuser=uName apigeepassword=pWord apigeeprotocol=http://

        em que uName:pWord são o nome de usuário e a senha do repositório.

  10. Use apigee-service para atualizar o utilitário apigee-setup:
    /opt/apigee/apigee-service/bin/apigee-service apigee-setup update
  11. Execute o utilitário de atualização no nó para atualizar o banco de dados do Postgres:
    /opt/apigee/apigee-setup/bin/update.sh -c ps -f configFile

    em que configFile é o arquivo de configuração usado para instalar o banco de dados do Postgres. O único requisito do arquivo de configuração é que ele precisa ser acessível ou legível pelo usuário "apigee".

  12. Inicie o Postgres:
    /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql start
  13. Execute o utilitário de atualização no nó para atualizar o portal:
    /opt/apigee/apigee-setup/bin/update.sh -c dp -f configFile

    em que configFile é o arquivo de configuração usado para instalar o portal. O único requisito do arquivo de configuração é que ele precisa ser acessível ou legível pelo usuário "apigee".

  14. Execute o script update.php do Drupal abrindo o seguinte URL em uma janela do navegador:
    http://portalIP_DNS:8079/update.php
  15. Desative o Drupal para o modo de manutenção:
    1. Selecione Configuração no menu do Drupal.
    2. Na página Configuração, selecione Modo de manutenção em Desenvolvimento.
    3. Desmarque a caixa Colocar o site em modo de manutenção.
    4. Selecione Salvar configuração.

O diretório raiz após a atualização é:

/opt/apigee/apigee-drupal/wwwroot

O upgrade foi concluído.