Converter um portal com base no tar em um portal com base na RPM

Edge para nuvem privada v4.18.01

A versão 4.18.01 do portal de serviços para desenvolvedores não permite atualizar uma versão versão do portal baseada em tar. Só é possível atualizar diretamente uma versão do portal baseada em RPM até 4.18.01.

Porém, você pode converter uma versão do portal baseada em tar em uma instância baseada em RPM 4.18.01 de no portal. Como parte desse processo, você migra o MySQL/MariaDB do portal para uma Banco de dados Postgres. Depois de convertido, seu portal continua sendo um portal baseado em RPM.

É possível migrar muitas versões anteriores do portal baseado em tar para um portal baseado em RPM. incluindo as versões 4.16.09 e 4.17.01, não apenas a versão 4.17.05. Os únicos requisitos o portal está executando Drupal 7 ou posterior. Para verificar sua versão do Drupal, selecione Relatórios > "Status Reports" no menu Drupal. A versão do Drupal aparece na primeira linha da saída.

As etapas de alto nível usadas para migrar de um portal baseado em tar para um baseado em RPM são:

  • Instale a versão 4.18.01 baseada em RPM do portal de serviços para desenvolvedores em um um novo nó.
  • Crie um novo banco de dados Postgres no portal baseado em RPM.
  • Migre o banco de dados do portal do portal baseado em tar.
  • Copie todos os arquivos acessórios do portal baseado em tar para o arquivo de base em RPM no portal do Google Cloud.
  • Atualize as entradas de DNS para apontar para o novo portal baseado em RPM.

    A versão baseada em RPM do portal usa a porta 8079 por padrão, enquanto a usa a porta 80. Use o número de porta correto na sua entrada de DNS. Consulte Definir a porta HTTP usada pelo portal para mais informações. usando uma porta diferente.

Novo diretório de instalação padrão após conversão

Depois de atualizar uma instalação que agora usa o Nginx/Postgres, o diretório raiz foi alterado de:

/opt/apigee/apigee-drupal

para:

/opt/apigee/apigee-drupal/wwwroot

Procedimento de conversão do portal

Para converter o portal em uma instalação baseada em RPM:

  1. Instalar a versão 4.18.01 baseada em RPM do portal de serviços para desenvolvedores em um nó diferente do portal baseado em tar.
  2. No portal baseado em RPM, crie um banco de dados do Postgres. Depois, você migra do portal baseado em tar para o banco de dados novo:
    1. Faça login no psql:
      >psql -h localhost -p 5432 -U apigee

      Insira sua senha do Postgres conforme definido pela propriedade PG_PWD na configuração do portal .
    2. Crie um novo banco de dados Postgred:
      # CRIAR BANCO DE DADOS newportaldb;
    3. Saia do psql:
      # \q
  3. No portal baseado em tar, remova os módulos antigos que não são mais usados:
    > "cd /var/www/html"
    > drush sql-query --db-prefix "DELETE from {system} where name = 'apigee_account' E type = 'module';"
    > drush sql-query --db-prefix "DELETE from {system} where name = 'apigee_checklist' AND type = 'module';"
    > drush sql-query --db-prefix "DELETE from {system} onde name = 'apigee_sso_ui' E type = 'module';"

  4. No portal baseado em tar, instale e configure o Migrator Drupal. módulo:

    1. cd /tmp
    2. wget https://ftp.drupal.org/files/projects/dbtng_migrator-7.x-1.4.tar.gz
    3. gunzip /tmp/dbtng_migrator-7.x-1.4.tar.gz
    4. tar – xvf /tmp/dbtng_migrator-7.x-1.4.tar --directory /var/www/html/sites/all/modules
    5. Faça login no portal como administrador.
    6. Selecione Modules no menu Drupal.
    7. Ative o módulo DBTNG Migrator.
    8. Salve a configuração.
  5. No portal baseado em tar, edite /var/www/html/sites/default/settings.php para adicione uma segunda configuração de banco de dados que aponte para o banco de dados recém-criado na no portal do Google Cloud. A configuração atual do banco de dados é chamada de "default". Nomeie sua nova configuração personalizado:
    $databases = array (
          'default' =>
          array (
            'default' =>
            array (
              'database' => 'devportal',
              'username' => 'devportal',
              'password' => 'devportal',
              'host' => 'localhost',
              'port' => '',
              'driver' => 'mysql',
              'prefix' => '',
            ),
          ),
          'custom' =>
          array (
            'default' =>
            array (
              'database' => 'newportaldb',
              'username' => 'apigee',
              'password' => 'postgres',
              'host' => '192.168.168.100',
              'port' => '5432',
              'driver' => 'pgsql',
              'prefix' => '',
            )
          )
        );

    em que host e port especificam o endereço IP e a porta do Servidor Postgres. O Postgres usa a porta 5432 para conexões.
  6. No portal baseado em tar, instale o driver do Postgres:
    1. Use o Yum para instalar o driver:
      > yum install php-pdo_pgsql
    2. Edite /etc/php.ini para adicione a linha a seguir em qualquer parte do arquivo:
      extension=pgsql.so
    3. Reinicie o Apache:
      > serviço httpd reiniciar
  7. No portal baseado em tar, migre o banco de dados do portal para o banco de dados baseado em RPM portal:
    1. Faça login no portal como administrador.
    2. Selecione Structure->Migrator no menu do Drupal.
    3. Escolha seu banco de dados de origem no portal baseado em tar, default e o de destino. custom, com base na Arquivo settings.php exibido acima.
    4. Clique em Migrar. O banco de dados baseado em tar é migrado para o no seu banco de dados.
  8. Copie o diretório sites do servidor baseado em tar para o servidor baseado em RPM.
    Os caminhos mostrados nas etapas a seguir são baseados em caminhos padrão. Modifique-os conforme necessário para sua instalação.
    1. No portal baseado em tar, agrupe o diretório /var/www/html/sites:
      > cd /var/www/html/sites
      > tar -cvzf /tmp/sites.tar.gz .
    2. Copiar /tmp/sites.tar.gz para /opt/apigee/apigee-drupal/wwwroot/sites no servidor baseado em RPM.
    3. Desagrupar o diretório de sites, mas não substituir arquivos importantes.
      1. Faça backup do arquivo settings.php:
        > "sudo cp" /opt/apigee/apigee-drupal/wwwroot/sites/default/settings.php /opt/apigee/apigee-drupal/wwwroot/sites/default/settings.bak.php
      2. Fazer backup do diretório files existente:
        > sudo mv /opt/apigee/apigee-drupal/wwwroot/sites/default/files /opt/apigee/apigee-drupal/wwwroot/sites/default/files_old
      3. Faça backup do diretório sites existente:
        > tar -cvzf /tmp/sites_old.tar.gz /opt/apigee/apigee-drupal/wwwroot/sites
      4. Descompacte e descompacte o diretório sites do diretório baseado em tar. servidor:
        > gunzip /opt/apigee/apigee-drupal/wwwroot/sites/sites.tar.gz

        > tar -xvf /opt/apigee/apigee-drupal/wwwroot/sites/sites.tar
      5. Verifique se os arquivos copiados têm a propriedade adequada:
        > chown -R apigee:apigee /opt/apigee/apigee-drupal/wwwroot/sites/
      6. Restaure o arquivo settings.php:
        > "sudo cp" /opt/apigee/apigee-drupal/wwwroot/sites/default/settings.bak.php /opt/apigee/apigee-drupal/wwwroot/sites/default/settings.php
      7. Mover arquivos particulares para um novo local:
        > cp -r /opt/apigee/apigee-drupal/wwwroot/sites/default/files/private/* /opt/apigee/data/apigee-drupal-devportal/private

        > rm -rf /opt/apigee/apigee-drupal/wwwroot/sites/default/files/private

        > chown -R apigee:apigee /opt/apigee/data/apigee-sap-drupal-devportal/private
  9. No portal baseado em tar, somente se você tiver alterado o caminho para a raiz da Web no portal baseado em tar no caminho padrão de /var/www/html: execute drush status e observe o caminho files e o caminho private files:
    > cd /var/www/html
    > status de drush


    Se arquivos/arquivos particulares não estiverem no diretório sites, copie-os para o diretório baseado em RPM como mostrado acima.
  10. No portal baseado em RPM, atualize /opt/apigee/apigee-drupal/wwwroot/sites/default/settings.php para definir as propriedades do banco de dados padrão:
    > vi /opt/apigee/apigee-drupal/wwwroot/sites/default/settings.php

    Defina a descrição padrão do banco de dados em settings.php:
    $databases = array (
          'default' =>
          array (
            'default' =>
            array (
              'database' => 'newportaldb',
              'username' => 'apigee',
              'password' => 'postgres',
              'host' => 'localhost', 'port' => '5432',
              'driver' => 'pgsql',
              'prefix' => '',
            )
          )
        );

    em que database especifica o novo banco de dados que você criou. nome de usuário e senha são definidos para o banco de dados personalizado no portal baseado em tar, e prefix está vazio.
  11. No portal baseado em RPM, a versão desse portal contém menos módulos Drupal que a versão baseada em tar. Depois de migrar para o portal baseado em RPM, você deve verificar a existência de módulos ausentes e instalá-los conforme necessário.
    1. Instale o missing_module do Drupal usado para detectar módulos:
      > cd /opt/apigee/apigee-drupal/wwwroot
      > Módulo ausente do drush dl
      > drush en missing_module
    2. Faça login no portal baseado em RPM como administrador.
    3. Selecione Relatórios > "Relatórios de status" no menu Drupal e verifique módulos ausentes.
    4. Use esse relatório para instalar os módulos ausentes ou use os seguintes comandos:
      > cd /opt/apigee/apigee-drupal/wwwroot
      &gt; drush dl <móduloA> &lt;moduleB&gt; ...
      &gt; drush en <moduleA> &lt;moduleB&gt; ...
    5. Após ativar todos os módulos, verifique se os arquivos são de propriedade da Apigee usuário:
      &gt; chown -LR apigee:apigee /opt/apigee/apigee-drupal/wwwroot

      Para saber mais sobre permissões de arquivos, consulte https://www.drupal.org/node/244924 (em inglês).
  12. No portal baseado em RPM, execute update.php em um navegador para remover erros módulos ausentes:
    1. Faça login no portal baseado em RPM como administrador.
    2. No navegador, acesse este URL:
      http://{portal_IP_or_DNS}:8079/update.php

      em que portal_IP_or_DNS é o endereço IP ou nome de domínio do Portal baseado em RPM.
    3. Siga as instruções na tela.
  13. Atualize as entradas de DNS para apontar para seu novo portal baseado em RPM.

    A versão baseada em RPM do portal usa a porta 8079 por padrão, enquanto a usa a porta 80. Use o número de porta correto na sua entrada de DNS. Consulte Definir a porta HTTP usada pelo portal para informações sobre usando uma porta diferente.

A conversão foi concluída.