Edge for Private Cloud v4.18.05
Rilis 4.18.05 portal Layanan Developer Apigee (atau singkatnya, portal) tidak memungkinkan Anda mengupdate versi portal berbasis tar sebelumnya. Anda hanya dapat mengupdate langsung portal versi berbasis RPM ke 4.18.05.
Namun, Anda dapat mengonversi versi portal berbasis tar menjadi instance portal berbasis RPM 4.18.05. Sebagai bagian dari proses ini, Anda akan memigrasikan MySQL/MariaDB portal yang ada ke database Postgres. Setelah dikonversi, portal Anda akan tetap menjadi portal berbasis RPM.
Anda dapat memigrasikan banyak versi portal berbasis tar sebelumnya ke portal berbasis RPM, termasuk versi 4.16.09 dan 4.17.01, bukan hanya versi 4.17.05. Satu-satunya persyaratan adalah portal menjalankan Drupal 7 atau yang lebih baru. Untuk memeriksa versi Drupal Anda, pilih Reports > Status Reports di menu Drupal. Versi Drupal akan muncul di baris pertama output.
Langkah-langkah umum yang Anda gunakan untuk bermigrasi dari portal berbasis tar ke portal berbasis RPM adalah:
- Instal portal versi 4.18.05 berbasis RPM di node baru.
- Buat database Postgres baru di portal berbasis RPM.
- Migrasikan database portal dari portal berbasis tar.
- Salin semua file aksesori dari portal berbasis tar ke portal berbasis RPM.
- Perbarui entri DNS agar mengarah ke portal berbasis RPM baru.
Perhatikan bahwa versi portal berbasis RPM menggunakan port 8079 secara default, sedangkan versi berbasis tar menggunakan port 80. Pastikan Anda menggunakan nomor port yang benar di entri DNS. Lihat Menetapkan port HTTP yang digunakan oleh portal untuk mengetahui informasi tentang penggunaan port yang berbeda.
Direktori penginstalan default baru setelah konversi
Setelah mengupdate penginstalan yang kini menggunakan Nginx/Postgres, direktori root berubah dari:
/opt/apigee/apigee-drupal
menjadi:
/opt/apigee/apigee-drupal/wwwroot
Prosedur konversi portal
Untuk mengonversi portal ke penginstalan berbasis RPM:
- Instal portal versi 4.18.05 berbasis RPM pada node yang berbeda dari portal berbasis tar Anda.
- Di portal berbasis RPM, buat database Postgres baru. Nanti, Anda akan memigrasikan
database dari portal berbasis tar ke database baru ini:
- Login ke psql:
psql -h localhost -p 5432 -U apigee
Masukkan sandi Postgres Anda seperti yang ditentukan oleh properti PG_PWD dalam file konfigurasi portal.
- Buat database PostgreSQL baru:
CREATE DATABASE newportaldb;
- Keluar dari psql:
\q
- Login ke psql:
-
Di portal berbasis tar, hapus modul lama yang tidak lagi digunakan:
cd /var/www/html
drush sql-query --db-prefix "DELETE from {system} where name = 'apigee_account' AND 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} where name = 'apigee_sso_ui' AND type = 'module';" - Di portal berbasis tar, Instal dan konfigurasikan modul 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
- Login ke portal sebagai admin.
- Pilih Modules di menu Drupal.
- Aktifkan modul DBTNG Migrator.
- Simpan konfigurasi.
-
- Di portal berbasis tar, edit
/var/www/html/sites/default/settings.phpuntuk menambahkan konfigurasi database kedua yang mengarah ke database yang baru dibuat di portal berbasis RPM. Konfigurasi database saat ini diberi nama "default". Beri nama konfigurasi baru Anda "custom", seperti yang ditunjukkan dalam contoh berikut:$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' => '', ) ) );Dengan
hostdanportmenentukan alamat IP dan port server Postgres. Postgres menggunakan port 5432 untuk koneksi. -
Di portal berbasis tar, instal driver Postgres:
- Gunakan Yum untuk menginstal driver:
yum install php-pdo_pgsql
- Edit
/etc/php.iniuntuk menambahkan baris berikut di mana saja dalam file:extension=pgsql.so
- Mulai ulang Apache:
service httpd restart
- Gunakan Yum untuk menginstal driver:
- Di portal berbasis tar, migrasikan database portal ke portal berbasis RPM:
- Login ke portal sebagai admin.
- Pilih Structure->Migrator di menu Drupal.
- Pilih database asal Anda di portal berbasis tar,
default, dan database tujuan,custom, berdasarkan filesettings.phpyang ditampilkan di atas. - Klik Migrate. Database berbasis tar dimigrasikan ke database berbasis RPM.
- Salin direktori
sitesdari server berbasis tar ke server berbasis RPM. Jalur yang ditampilkan dalam langkah-langkah berikut didasarkan pada jalur default. Ubah seperlunya untuk penginstalan Anda.- Di portal berbasis tar, gabungkan direktori
/var/www/html/sites:cd /var/www/html/sites
tar -cvzf /tmp/sites.tar.gz . - Salin
/tmp/sites.tar.gzke/opt/apigee/apigee-drupal/wwwroot/sitesdi server berbasis RPM. - Pisahkan direktori situs, tetapi jangan timpa file penting.
- Cadangkan file
settings.php:sudo cp /opt/apigee/apigee-drupal/wwwroot/sites/default/settings.php /opt/apigee/apigee-drupal/wwwroot/sites/default/settings.bak.php
- Cadangkan direktori
filesyang ada:sudo mv /opt/apigee/apigee-drupal/wwwroot/sites/default/files /opt/apigee/apigee-drupal/wwwroot/sites/default/files_old
- Cadangkan direktori
sitesyang ada:tar -cvzf /tmp/sites_old.tar.gz /opt/apigee/apigee-drupal/wwwroot/sites
- Ekstrak dan untar direktori
sitesdari server berbasis tar:gunzip /opt/apigee/apigee-drupal/wwwroot/sites/sites.tar.gz
tar -xvf /opt/apigee/apigee-drupal/wwwroot/sites/sites.tar - Pastikan file yang disalin memiliki kepemilikan yang tepat:
chown -R apigee:apigee /opt/apigee/apigee-drupal/wwwroot/sites/
- Pulihkan file
settings.php:sudo cp /opt/apigee/apigee-drupal/wwwroot/sites/default/settings.bak.php /opt/apigee/apigee-drupal/wwwroot/sites/default/settings.php
- Pindahkan file pribadi ke lokasi baru:
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/privatechown -R apigee:apigee /opt/apigee/data/apigee-sap-drupal-devportal/private
- Cadangkan file
- Di portal berbasis tar, gabungkan direktori
- Di portal berbasis tar, hanya jika Anda mengubah jalur ke direktori root web
di portal berbasis tar dari jalur default /var/www/html: jalankan
drush statusdan lihat jalurfilesdan jalurprivate files:cd /var/www/html
drush statusJika file/file pribadi tidak berada di direktori
sites, salin file tersebut ke server berbasis RPM seperti yang ditunjukkan di atas. - Di portal berbasis RPM, perbarui
/opt/apigee/apigee-drupal/wwwroot/sites/default/settings.phpuntuk menetapkan properti database default:vi /opt/apigee/apigee-drupal/wwwroot/sites/default/settings.php
Tetapkan deskripsi database default di settings.php:
$databases = array ( 'default' => array ( 'default' => array ( 'database' => 'newportaldb', 'username' => 'apigee', 'password' => 'postgres', 'host' => 'localhost', 'port' => '5432', 'driver' => 'pgsql', 'prefix' => '', ) ) );Dengan
databasemenentukan database baru yang Anda buat,usernamedanpasswordseperti yang ditentukan untuk database kustom di portal berbasis tar, danprefixkosong. - Di portal berbasis RPM, versi portal berbasis RPM berisi lebih sedikit modul Drupal daripada versi berbasis tar. Setelah bermigrasi ke portal berbasis RPM, Anda
harus memeriksa modul yang hilang dan menginstalnya sesuai kebutuhan.
- Instal
missing_moduleDrupal yang digunakan untuk mendeteksi modul yang tidak ada:cd /opt/apigee/apigee-drupal/wwwroot
drush dl missing_moduledrush en missing_module - Login ke portal berbasis RPM sebagai admin.
- Pilih Reports > Status reports di menu Drupal dan periksa apakah ada modul yang tidak ada.
- Gunakan laporan tersebut untuk menginstal modul yang tidak ada, atau gunakan perintah berikut:
cd /opt/apigee/apigee-drupal/wwwroot
drush dl <moduleA> <moduleB> ...drush en <moduleA> <moduleB> ... - Setelah Anda mengaktifkan semua modul, pastikan file dimiliki oleh pengguna apigee:
chown -LR apigee:apigee /opt/apigee/apigee-drupal/wwwroot
Untuk mengetahui informasi selengkapnya tentang izin file, lihat https://www.drupal.org/node/244924.
- Instal
- Di portal berbasis RPM, jalankan update.php di browser untuk menghapus error
pada modul yang tidak ada:
- Login ke portal berbasis RPM sebagai admin.
- Di browser, buka URL berikut:
http://portal_IP_or_DNS:8079/update.php
Dengan portal_IP_or_DNS adalah alamat IP atau nama domain portal berbasis RPM.
- Ikuti perintah di layar.
- Perbarui entri DNS agar mengarah ke portal berbasis RPM baru Anda.
Perhatikan bahwa versi portal berbasis RPM menggunakan port 8079 secara default, sedangkan versi berbasis tar menggunakan port 80. Pastikan Anda menggunakan nomor port yang benar di entri DNS. Lihat Menetapkan port HTTP yang digunakan oleh portal untuk mengetahui informasi tentang penggunaan port yang berbeda.
Konversi selesai.