لا يتيح لك الإصدار 4.18.05 من بوابة خدمات مطوّري البرامج في Apigee (أو ببساطة البوابة) تحديث إصدار سابق إصدار البوابة المستند إلى القطران. يمكنك فقط تحديث إصدار البوابة المستند إلى مقياس RPM مباشرةً إلى 4.18.05.
ومع ذلك، يمكنك تحويل إصدار البوابة المستنِد إلى tar إلى مثيل البوابة المستنِد إلى RPM 4.18.05. وكجزء من هذه العملية، يتم نقل بيانات MySQL/MariaDB للبوابة الحالية إلى قاعدة بيانات Postgres. بعد اكتمال عملية التحويل، ستظل البوابة الإلكترونية مستندة إلى مقياس RPM.
يمكنك نقل العديد من الإصدارات السابقة من البوابة المستندة إلى tar إلى بوابة مستندة إلى RPM، بما في ذلك الإصداران 4.16.09 و4.17.01، وليس الإصدار 4.17.05 فقط. إنّ المتطلبات الوحيدة هي أن تعمل البوابة على Drupal 7 أو إصدار أحدث. للتحقّق من إصدار Drupal، اختَر التقارير > تقارير الحالة في قائمة Drupal. يظهر إصدار Drupal في الصف الأول الناتج.
الخطوات عالية المستوى التي تستخدمها للترحيل من بوابة تستند إلى tar إلى بوابة مستندة إلى RPM هي:
- تثبيت إصدار المستند إلى RPM 4.18.05 من البوابة على العقدة الجديدة.
- أنشئ قاعدة بيانات Postgres جديدة في البوابة المستندة إلى RPM.
- نقل قاعدة بيانات البوابة من البوابة المستندة إلى tar
- انسخ جميع الملفات الملحقة من البوابة المستندة إلى tar إلى البوابة المستندة إلى RPM .
- عدِّل إدخالات نظام أسماء النطاقات للتوجيه إلى البوابة الجديدة المستندة إلى RPM.
يُرجى العِلم أنّ إصدار البوابة المستنِد إلى حِزم RPM يستخدم المنفذ 8079 تلقائيًا، في حين يستخدم الإصدار المستنِد إلى tar المنفذ 80. تأكَّد من استخدام رقم المنفذ الصحيح في إدخال نظام أسماء النطاقات. عرض إعداد منفذ HTTP الذي تستخدمه البوابة للحصول على المعلومات باستخدام منفذ مختلف.
دليل التثبيت التلقائي الجديد بعد عملية التحويل
بعد تحديث تثبيت يستخدم الآن NGINX/Postgres، تم تغيير الدليل الجذري from:
/opt/apigee/apigee-drupal
إلى:
/opt/apigee/apigee-drupal/wwwroot
إجراءات تحويل البوابة
لتحويل البوابة إلى عملية تثبيت مستندة إلى مقياس RPM:
- ثبِّت إصدار البوابة 4.18.05 المستنِد إلى حِزم RPM على عقدة مختلفة عن البوابة المستنِدة إلى حِزم tar.
- في البوابة المستندة إلى نموذج RPM، أنشئ قاعدة بيانات Postgres جديدة. في وقت لاحق، تقوم بالنقل
قاعدة البيانات من البوابة التي تعتمد على القطران إلى قاعدة البيانات الجديدة هذه:
- تسجيل الدخول إلى psql:
psql -h localhost -p 5432 -U apigee
أدخِل كلمة مرور Postgres كما هو محدّد في السمة PG_PWD في ملف إعدادات البوابة العميلة.
- أنشئ قاعدة بيانات Postgred جديدة:
CREATE DATABASE newportaldb;
- الخروج من psql:
\q
- تسجيل الدخول إلى psql:
-
في البوابة المستندة إلى tar، أزِل الوحدات القديمة التي لم تعُد مستخدَمة:
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';"
- في البوابة المستنِدة إلى القطران، ثبِّت وحدة 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
- سجِّل الدخول إلى البوابة كمشرف.
- اختَر الوحدات في قائمة Drupal.
- فعِّل وحدة DBTNG Migrator.
- احفظ الإعداد.
-
- في البوابة المستنِدة إلى القطران، عدِّل
/var/www/html/sites/default/settings.php
لإضافة تكوين قاعدة بيانات ثانية يشير إلى قاعدة البيانات التي تم إنشاؤها حديثًا على المنصة المستندة إلى RPM البوابة. يُطلق على تهيئة قاعدة البيانات الحالية اسم "تلقائي". أدخِل اسمًا لإعداداتك الجديدة، وهو "مخصّصة"، كما هو موضّح في المثال التالي:$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' => '', ) ) );
حيث تحدِّد
host
وport
عنوان IP والمنفذ ل خادم Postgres. يستخدم Postgres المنفذ 5432 للاتصالات. -
في البوابة المستندة إلى tar، ثبِّت برنامج تشغيل Postgres:
- استخدم Yum لتثبيت برنامج التشغيل:
yum install php-pdo_pgsql
- عدِّل
/etc/php.ini
لإضافة السطر التالي في أي مكان في الملف:extension=pgsql.so
- إعادة تشغيل Apache:
service httpd restart
- استخدم Yum لتثبيت برنامج التشغيل:
- في البوابة المستندة إلى tar، عليك نقل قاعدة بيانات البوابة إلى البوابة المستندة إلى RPM:
- سجِّل الدخول إلى البوابة كمشرف.
- اختَر البنية-> أداة النقل في قائمة Drupal.
- اختَر قاعدة بيانات المصدر على البوابة المستنِدة إلى tar،
default
قاعدة بيانات الوجهة،custom
، استنادًا إلى ملفsettings.php
معروض أعلاه. - انقر على نقل البيانات. يتم ترحيل قاعدة البيانات المستندة إلى القطران إلى قاعدة البيانات المستندة إلى مقياس RPM قاعدة البيانات.
- انسخ دليل
sites
من الخادم المستنِد إلى حِزم tar إلى الخادم المستنِد إلى حِزم RPM. تشير رسالة الأشكال البيانية تستند المسارات الموضَّحة في الخطوات التالية إلى المسارات التلقائية. عدِّلها حسب الحاجة لأجل عملية التثبيت.- في البوابة المستنِدة إلى tar، يمكنك تجميع دليل
/var/www/html/sites
:cd /var/www/html/sites
tar -cvzf /tmp/sites.tar.gz .
- نسخ
/tmp/sites.tar.gz
إلى/opt/apigee/apigee-drupal/wwwroot/sites
على الخادم المستند إلى RPM. - أزِل حِزمة دليل المواقع الإلكترونية، ولكن لا تكتب فوق الملفات المهمة.
- احتفظ بنسخة احتياطية من ملف
settings.php
:sudo cp /opt/apigee/apigee-drupal/wwwroot/sites/default/settings.php /opt/apigee/apigee-drupal/wwwroot/sites/default/settings.bak.php
- الاحتفاظ بنسخة احتياطية من الدليل الحالي
files
:sudo mv /opt/apigee/apigee-drupal/wwwroot/sites/default/files /opt/apigee/apigee-drupal/wwwroot/sites/default/files_old
- احتفِظ بنسخة احتياطية من دليل
sites
الحالي:tar -cvzf /tmp/sites_old.tar.gz /opt/apigee/apigee-drupal/wwwroot/sites
- يُرجى فك ضغط الدليل
sites
وفك ضغطه من الخادم المستند إلى tar:gunzip /opt/apigee/apigee-drupal/wwwroot/sites/sites.tar.gz
tar -xvf /opt/apigee/apigee-drupal/wwwroot/sites/sites.tar
- تأكَّد من أنّ الملفات المنسوخة لها ملكية صحيحة:
chown -R apigee:apigee /opt/apigee/apigee-drupal/wwwroot/sites/
- استعادة الملف
settings.php
:sudo cp /opt/apigee/apigee-drupal/wwwroot/sites/default/settings.bak.php /opt/apigee/apigee-drupal/wwwroot/sites/default/settings.php
- نقل الملفات الخاصة إلى موقع جديد:
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
- احتفظ بنسخة احتياطية من ملف
- في البوابة المستنِدة إلى tar، يمكنك تجميع دليل
- على البوابة المستندة إلى القطران، فقط في حال تغيير المسار إلى جذر الويب
على البوابة المستندة إلى tar من المسار التلقائي /var/www/html: run
drush status
والاطّلاع على مسارfiles
ومسارprivate files
:cd /var/www/html
drush status
إذا لم تكن الملفات/الملفات الخاصة ضمن الدليل
sites
، انسخها إلى الخادم المستنِد إلى حِزم RPM كما هو موضّح أعلاه. - في البوابة المستندة إلى RPM، عدِّل
/opt/apigee/apigee-drupal/wwwroot/sites/default/settings.php
لضبط السمات للقاعدة التلقائية:vi /opt/apigee/apigee-drupal/wwwroot/sites/default/settings.php
اضبط الوصف التلقائي لقاعدة البيانات في settings.php:
$databases = array ( 'default' => array ( 'default' => array ( 'database' => 'newportaldb', 'username' => 'apigee', 'password' => 'postgres', 'host' => 'localhost', 'port' => '5432', 'driver' => 'pgsql', 'prefix' => '', ) ) );
حيث تحدِّد
database
قاعدة البيانات الجديدة التي أنشأتها،username
وpassword
كما هو الحال مع قاعدة البيانات المخصصة على البوابة التي تستند إلى القطران، وprefix
فارغة. - في البوابة المستندة إلى حِزم RPM، يحتوي الإصدار المستنِد إلى حِزم RPM من البوابة على عددٍ أقل من
وحدات Drupal مقارنةً بالإصدار المستنِد إلى حِزم tar. بعد نقل البيانات إلى البوابة المستنِدة إلى مقياس RPM، عليك
التحقق من وجود أي وحدات مفقودة وتثبيتها حسب الضرورة.
- ثبِّت الإصدار
missing_module
من Drupal المستخدَم لرصد الوحدات غير المتوفّرة:cd /opt/apigee/apigee-drupal/wwwroot
drush dl missing_module
drush en missing_module
- سجِّل الدخول إلى البوابة المستندة إلى RPM بصفتك مشرفًا.
- اختَر التقارير > تقارير الحالة في قائمة Drupal وتحقّق مما يلي: أي وحدات غير متوفّرة.
- استخدِم هذا التقرير لتثبيت أيّ وحدات غير متوفّرة، أو استخدِم الطلبات التالية:
cd /opt/apigee/apigee-drupal/wwwroot
drush dl <moduleA> <moduleB> ...
drush en <moduleA> <moduleB> ...
- بعد تمكين جميع الوحدات، تأكد من أن الملفات مملوكة لمستخدم واجهة برمجة التطبيقات:
chown -LR apigee:apigee /opt/apigee/apigee-drupal/wwwroot
لمزيد من المعلومات حول أذونات الملفات، راجع https://www.drupal.org/node/244924.
- ثبِّت الإصدار
- على البوابة المستندة إلى RPM، شغِّل update.php في أحد المتصفِّحات لإزالة أي أخطاء.
للوحدات المفقودة:
- سجِّل الدخول إلى البوابة المستندة إلى RPM بصفتك مشرفًا.
- في المتصفِّح، انتقِل إلى عنوان URL التالي:
http://portal_IP_or_DNS:8079/update.php
حيث يشير portal_IP_or_DNS إلى عنوان IP أو اسم النطاق المستند إلى الأرباح لكل ألف مشاهدة (RPM) البوابة.
- اتّبِع التعليمات التي تظهر على الشاشة.
- عدِّل إدخالات نظام أسماء النطاقات للتوجيه إلى البوابة الجديدة المستندة إلى RPM.
يُرجى العلم أنّ إصدار البوابة المستنِد إلى مقياس RPM يستخدم المنفذ 8079 تلقائيًا، في حين أنّ المنفذ المستند إلى القطران الإصدار يستخدم المنفذ 80. تأكَّد من استخدام رقم المنفذ الصحيح في إدخال نظام أسماء النطاقات. عرض اضبط منفذ HTTP الذي تستخدمه البوابة للحصول على معلومات عن باستخدام منفذ مختلف.
اكتملت عملية التحويل.