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 anterior baseada em tar do portal. Só é possível atualizar diretamente uma versão do portal baseada em RPM para 4.18.01.
No entanto, é possível converter uma versão baseada em tar do portal em uma instância do portal 4.18.01 baseada em RPM. Como parte desse processo, você migra o MySQL/MariaDB do portal atual para um banco de dados do Postgres. Após a conversão, seu portal continuará sendo baseado em RPM.
É possível migrar muitas versões anteriores do portal baseado em tar para um com base 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 são que o portal esteja executando o Drupal 7 ou mais recente. Para verificar a versão do Drupal, selecione Relatórios > Relatórios de status no menu do Drupal. A versão do Drupal aparece na primeira linha da saída.
As etapas gerais que você usa 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 novo nó.
- Crie um novo banco de dados do Postgres no portal baseado em RPM.
- Migre o banco de dados do portal usando o portal baseado em tar.
- Copie todos os arquivos complementares do portal baseado em tar para o portal baseado em RPM.
- 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 versão baseada em tar usa a porta 80. Use o número da porta correto na entrada DNS. Consulte Definir a porta HTTP usada pelo portal para informações sobre como usar uma porta diferente.
Novo diretório de instalação padrão após a 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
entre outras:
/opt/apigee/apigee-drupal/wwwroot
Procedimento de conversão do portal
Para converter o portal em uma instalação baseada em RPM:
- Instale a versão 4.18.01 baseada em RPM do portal de serviços para desenvolvedores em um nó diferente do seu portal baseado em tar.
-
No portal com base em RPM, crie um novo banco de dados do Postgres. Depois, você migra
o banco de dados do portal baseado em tar para esse novo banco de dados:
- Faça login no AppSheet:
>psql -h localhost -p 5432 -U apigee
Digite sua senha do Postgres, conforme definido pela propriedade PG_PWD, no arquivo de configuração do portal. - Crie um novo banco de dados Postgred:
# CREATE DATABASE newportaldb; - Saia do AppSheet:
# \q
- Faça login no AppSheet:
-
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}, em que nome = 'apigee_account' AND type = 'module';"
> drush sql-query'query'prefix "DELETE' = sql-query'prefix" DELETE = sql-query', bq_module -
No portal baseado em tar, instale e configure o módulo Migrator Drupal:
- cd /tmp
- wget https://ftp.drupal.org/files/projects/dbtng_migrator-7.x-1.4.tar.gz
- gunzip /tmp/dbtng_migrator-7.x-1.4.tar.gz
- tar -xvf /tmp/dbtng_migrator-7.x-1.4.tar --directory /var/www/html/sites/all/modules
- Faça login no portal como administrador.
- Selecione Modules no menu do Drupal.
- Ative o módulo DBTNG Migrator.
- Salve a configuração.
- No portal baseado em tar, edite /var/www/html/sites/default/settings.php para adicionar uma segunda configuração de banco de dados que aponte para o banco de dados recém-criado no portal baseado em RPM. A configuração atual do banco de dados é chamada de padrão. Dê um nome personalizado à sua nova configuração:
$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. -
No portal baseado em tar, instale o driver do Postgres:
- Use o Yum para instalar o driver:
> yum install php-pdo_pgsql - Edite /etc/php.ini para adicionar a seguinte linha em qualquer lugar do arquivo:
extension=pgsql.so - Reinicie o Apache:
> service httpd restart
- Use o Yum para instalar o driver:
-
No portal baseado em tar, migre o banco de dados do portal para o portal baseado em
RPM:
- Faça login no portal como administrador.
- Selecione Structure -> Migrator no menu do Drupal.
- Escolha o banco de dados de origem no portal baseado em tar, default, e o banco de dados de destino, personalizado, com base no arquivo settings.php mostrado acima.
- Clique em Migrar. O banco de dados baseado em tar é migrado para o baseado em RPM.
- 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-as conforme necessário para a instalação.- No portal baseado em tar, agrupe o diretório /var/www/html/sites em um pacote:
> cd /var/www/html/sites
> tar -cvzf /tmp/sites.tar.gz . - Copie /tmp/sites.tar.gz para /opt/apigee/apigee-drupal/wwwroot/sites no servidor baseado em RPM.
- Desagrupar o diretório de sites, mas não substituir arquivos importantes.
- 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 - Fazer backup do diretório files atuais:
> sudo mv /opt/apigee/apigee-drupal/wwwroot/sites/default/files /opt/apigee/apigee-drupal/wwwroot/sites/default/files_old - Faça backup do diretório sites:
> tar -cvzf /tmp/sites_old.tar.gz /opt/apigee/apigee-drupal/wwwroot/sites - Descompacte e descompacte o diretório sites do servidor
com base em tar:
> gunzip /opt/apigee/apigee-drupal/wwwroot/sites/sites.tar.gz
> tar -xvf /opt/apigee/apigee-drupal/wwwroot/sites/sites.tar - Verifique se os arquivos copiados têm a propriedade adequada:
> chown -R apigee:apigee /opt/apigee/apigee-drupal/wwwroot/sites/ - Restaurar 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 - Mover arquivos particulares para o 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/apigee/apigee-private/rupd/private
- Faça backup do arquivo settings.php:
- No portal baseado em tar, agrupe o diretório /var/www/html/sites em um pacote:
- No portal baseado em tar, somente se você tiver mudado o caminho para o diretório raiz
da Web nesse portal do caminho padrão de /var/www/html: execute drush status e confira o caminho files e private files:
> cd /var/www/html
> drush status
Se os arquivos e os arquivos privados do servidor não estiverem no diretório RPM, como os arquivos que não estão no diretório RPM. - 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 do banco de dados padrão em banco de dados
$databases = array ( 'default' => array ( 'default' => array ( 'database' => 'newportaldb', 'username' => 'apigee', 'password' => 'postgres', 'host' => 'localhost', 'port' => '5432', 'driver' => 'pgsql', 'prefix' => '', ) ) );
-
No portal com base em RPM, a versão baseada em RPM contém menos
módulos Drupal do que a versão baseada em tar. Depois de migrar para o portal baseado em RPM, verifique se há módulos ausentes e instale-os conforme necessário.
- Instale o missing_module do Drupal usado para detectar módulos ausentes:
> cd /opt/apigee/apigee-drupal/wwwroot
> drush dl missing_module
> drush en missing_module - Faça login no portal baseado em RPM como administrador.
- Selecione Relatórios > Relatórios de status no menu Drupal e verifique se há módulos ausentes.
- Use esse relatório para instalar os módulos ausentes ou use os seguintes comandos:
> cd /opt/apigee/apigee-drupal/wwwroot
> drush dl <moduleA> <moduleB> ...
> drush en <moduleA> <moduleB> ... - Depois de ativar todos os módulos, confira se os arquivos são de propriedade do usuário
da Apigee:
> chown -LR apigee:apigee /opt/apigee/apigee-drupal/wwwroot
Para mais informações sobre permissões de arquivos, consulte https://www.drupal.org/node/244924.
- Instale o missing_module do Drupal usado para detectar módulos ausentes:
-
No portal baseado em RPM, execute update.php em um navegador para remover erros nos
módulos ausentes:
- Faça login no portal baseado em RPM como administrador.
- 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. - Siga as instruções na tela.
- 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 versão baseada em tar usa a porta 80. Use o número da porta correto na entrada DNS. Consulte Definir a porta HTTP usada pelo portal para informações sobre como usar uma porta diferente.
A conversão foi concluída.