الإصدار 4.18.01 من Edge الخاص بخدمة Private Cloud
يشرح هذا الإجراء كيفية ترقية تثبيت حالي لخدمات قناة Apigee Developer في المؤسسة.
تحديد إجراء التحديث الصحيح
يعتمد الإجراء الذي تستخدمه لتحديث البوابة على عملية التثبيت الحالية:
- إذا كانت عملية التثبيت تستخدم Nginx/Postgres، استخدِم عندئذٍ ترقية البوابة باستخدام البرامج التي تستند إلى RPM أدناه.
- إذا كانت عملية التثبيت تستخدم Apache/MySQL أو Apache/MariaDB، اطّلِع على المقالة تحويل بوابة مستندة إلى tar إلى بوابة تستند إلى RPM.
تحديد نوع التثبيت الحالي
إذا لم تكن متأكّدًا من نوع التثبيت الحالي، استخدِم الأمر التالي لتحديده:
ls /opt
إذا كنت تستخدم Nginx/Postgres، سترى الأدلة التالية:
/opt/apigee
و/opt/nginx
.في حال استخدام Apache/MySQL أو Apache/MariaDB، يجب عدم توفُّر هذه الأدلة.
/opt/apigee/apigee-service/bin/apigee-all status
إذا كنت تستخدم Nginx/Postgres، سيظهر لك الناتج التالي:
+ 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
إذا كنت تستخدم Apache/MySQL أو Apache/MariaDB، من المفترض أن يعرض هذا الأمر الدليل الجذري الخاص بالويب للبوابة، بالشكل التالي:
*:80 192.168.56.102 (/etc/httpd/conf/vhosts/devportal.conf:1)
دليل التثبيت التلقائي
تفترض عملية الترقية أنه قد تم تثبيت "بوابة المطوّرين" في:
- 4.17.05 والإصدارات الأحدث:
/opt/apigee/apigee-drupal/wwwroot
- قبل الإصدار 4.17.05:
/opt/apigee/apigee-drupal
(Nginx) أو/var/www/html
(Apache)
إذا لم تثبِّت البوابة في الدليل التلقائي، عدِّل المسارات في الإجراء أدناه لاستخدام دليل التثبيت.
إصدارات الترقية المتوافقة
يتوفر إجراء الترقية هذا للإصدارات التالية من البوابة:
- OPDK-17-01.x
- OPDK-17-05.x
- OPDK-17-09.x
لتحديد إصدار البوابة، افتح عنوان URL التالي في متصفّح:
http://yourportal.com/buildInfo
قبل التحديث
بالنسبة إلى عمليات التثبيت الحالية، إذا عدّلت أي رمز في Drupal Core أو في أي وحدات غير مخصّصة،
سيتم استبدال تعديلاتك. يشمل ذلك، من بين أمور أخرى، أي تغييرات
أجريتها على .htaccess
.
عليك افتراض أنّ تطبيق Drupal يملك أي محتوى خارج الدليل /sites
. ويُستثنى
من هذه القاعدة robots.txt
، لأنّه إذا كان هذا الملف متوفرًا في جذر الويب، سيتم
حفظه لك.
قبل متابعة التثبيت، احتفظ بنسخة احتياطية من دليلك الأساسي على الويب في Drupal. بعد تنفيذ خطوات التثبيت الموضحة أدناه، يمكنك استعادة تخصيصاتك من النسخة الاحتياطية.
ترقية البوابة باستخدام مقياس RPM
لتعديل العائد لكل ألف ظهور للمدخل على عقدة:
- يمكنك التغيير إلى دليل Drupal،
/opt/apigee/apigee-drupal
تلقائيًا:cd /opt/apigee/apigee-drupal
- احتفِظ بنسخة احتياطية من مثيل قاعدة بيانات Drupal. ينشئ الأمر
pg_dump
نسخة من قاعدة البيانات:pg_dump --dbname=devportal --host=192.168.56.101 --username=drupaladmin --password --format=c > /tmp/portal.dmp
المكان:
dbname
: تحدّد هذه السمة اسم قاعدة البيانات كما هو محدّد في السمةPG_NAME
في ملف إعداد تثبيت البوابة.- يحدد
host
عنوان IP لعقدة البوابة. username
يحدّد اسم مستخدم Postgres الذي تستخدمه البوابة للوصول إلى قاعدة البيانات كما هو محدّد في السمةDRUPAL_PG_USER
في ملف إعداد تثبيت البوابة.- سيُطلب منك إدخال كلمة مرور مستخدم Postgres كما هو موضّح في السمة
DRUPAL_PG_PASS
في ملف إعداد تثبيت البوابة.
إذا طُلب منك لاحقًا الاستعادة من النسخة الاحتياطية، استخدِم الأمر:
pg_restore --clean --dbname=devportal --host=localhost --username=apigee < /tmp/portal.dmp
- أنشِئ نسخة احتياطية من دليلك الأساسي على الويب في Drupal. الموقع الجغرافي التلقائي للتثبيت
هو
/opt/apigee/apigee-drupal
، ولكن يُحتمَل أنّك غيّرته.إذا لم تكن متأكّدًا من الموقع الجغرافي لهذا الدليل، استخدِم الأمر
drush status
أو الإدخال Configuration > Media > File في قائمة Drupal لتحديد موقع نظام الملفات العلني ومسار نظام الملفات الخاصة (للخطوة التالية). - احتفظ بنسخة احتياطية من الملفات في
/opt/apigee/data/apigee-drupal-devportal/private
. - اضبط Drupal على وضع الصيانة:
- اختَر الضبط في قائمة Drupal.
- في صفحة الإعدادات، اختَر وضع الصيانة ضمن التطوير.
- انقر على المربّع وضع الموقع في وضع الصيانة.
- أدخِل رسالة تظهر للمستخدمين أثناء الصيانة.
- اختَر حفظ الإعدادات.
- أوقِف SELinux كما هو موضح في تثبيت الأداة المساعدة لإعداد واجهة برمجة تطبيقات Edge.
- التغيير إلى دليل
/opt
:> cd /opt
- لترقية خادم متّصل بالإنترنت:
- نزِّل ملف
bootstrap_4.18.01.sh
لبرنامج Edge 4.18.01 إلى/tmp/bootstrap_4.18.01.sh
:curl https://software.apigee.com/bootstrap_4.18.01.sh -o /tmp/bootstrap_4.18.01.sh
- ثبِّت الأداة المساعدة Edge 4.18.01
apigee-service
والتبعيات:sudo bash /tmp/bootstrap_4.18.01.sh apigeeuser=uName apigeepassword=pWord
حيث يشير uName:pWord إلى اسم المستخدم وكلمة المرور اللذَين تلقّيتهما من Apigee. إذا لم تستخدم pWord، سيُطلب منك إدخاله.
تتحقّق أداة التثبيت تلقائيًا من تثبيت Java 1.8. يمكنك استخدام الخيار "C" للمتابعة بدون تثبيت Java.
- نزِّل ملف
- لترقية خادم غير متصل بالإنترنت:
- أنشئ مستودعًا محليًا للإصدار 4.18.01 كما هو موضَّح في "إنشاء مستودع Apigee محلي" في تثبيت الأداة المساعدة لإعداد apigee من Edge.
-
لتثبيت apigee-service من ملف .tar:
- في العقدة التي تتضمّن ريبو المحلي، استخدِم الأمر التالي لتجميع
repo المحلي في ملف .tar واحد باسم
/opt/apigee/data/apigee-mirror/apigee-4.18.01.tar.gz
:/opt/apigee/apigee-service/bin/apigee-service apigee-mirror package
- انسخ ملف .tar إلى العقدة التي تريد تحديث Edge فيها. على سبيل المثال، انسخها
إلى الدليل
/tmp
على العقدة الجديدة. - في العقدة الجديدة، أزِل الملف إلى الدليل /tmp:
tar -xzf apigee-4.18.01.tar.gz
ينشئ هذا الأمر دليلاً جديدًا باسم repos في الدليل الذي يحتوي على ملف .tar. على سبيل المثال /tmp/repos.
- ثبِّت الأداة
apigee-service
لبرنامج Edge والتبعيات من/tmp/repos
:sudo bash /tmp/repos/bootstrap_4.18.01.sh apigeeprotocol="file://" apigeerepobasepath=/tmp/repos
لاحظ أنك تقوم بتضمين المسار إلى دليل repos في هذا الأمر.
- في العقدة التي تتضمّن ريبو المحلي، استخدِم الأمر التالي لتجميع
repo المحلي في ملف .tar واحد باسم
-
لتثبيت خدمة apigee باستخدام خادم الويب Nginx:
- اضبط خادم الويب Nginx كما هو موضّح في القسم "التثبيت من المخزن باستخدام خادم الويب Nginx" في تثبيت الأداة المساعدة لإعداد واجهة برمجة تطبيقات Edge.
- في العقدة البعيدة، نزِّل ملف Edge
bootstrap_4.18.01.sh
إلى/tmp/bootstrap_4.18.01.sh
:/usr/bin/curl http://uName:pWord@remoteRepo:3939/bootstrap_4.18.01.sh -o /tmp/bootstrap_4.18.01.sh
حيث يشير uName:pWord إلى اسم المستخدم وكلمة المرور اللذين تحدّدهما أعلاه للريبو، وremoteRepo هو عنوان IP أو اسم نظام أسماء النطاقات لعقدة الريبو.
- في العقدة البعيدة، ثبِّت الأداة
apigee-service
Edge والتبعيات:sudo bash /tmp/bootstrap_4.18.01.sh apigeerepohost=remoteRepo:3939 apigeeuser=uName apigeepassword=pWord apigeeprotocol=http://
حيث يشير "uName:pWord" إلى اسم المستخدم وكلمة المرور الخاصَّين بالمستودع الإعلاني
- استخدِم
apigee-service
لتحديث أداةapigee-setup
:/opt/apigee/apigee-service/bin/apigee-service apigee-setup update
- شغِّل الأداة المساعدة للتحديث في عقدة Postgre:
/opt/apigee/apigee-setup/bin/update.sh -c ps -f configFile
حيث يكون configFile هو ملف الإعداد الذي استخدمته لتثبيت قاعدة بيانات Postgres. الشرط الوحيد في ملف الإعداد هو أن يتمكن مستخدم "apigee" من الوصول إلى ملف الإعداد أو قراءته.
- تعديل قاعدة بيانات Postgres:
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql db_upgrade
- شغِّل الأداة المساعدة للتحديث في عُقدتك لتحديث البوابة:
/opt/apigee/apigee-setup/bin/update.sh -c dp -f configFile
حيث يكون configFile هو ملف الإعداد الذي استخدمته لتثبيت البوابة الشرط الوحيد في ملف الإعداد هو أن يتمكن مستخدم "apigee" من الوصول إلى ملف الإعداد أو قراءته.
- شغِّل النص البرمجي
update.php
في Drupal عن طريق فتح عنوان URL التالي في نافذة متصفّح:http://portalIP_DNS:8079/update.php
- أوقِف تطبيق Drupal عن وضع الصيانة:
- اختَر الضبط في قائمة Drupal.
- في صفحة الإعدادات، اختَر وضع الصيانة ضمن التطوير.
- ألغِ اختيار المربع وضع الموقع في وضع الصيانة.
- اختَر حفظ الإعدادات.
لاحظ أن الدليل الجذري بعد التحديث هو:
/opt/apigee/apigee-drupal/wwwroot
اكتملت عملية الترقية الآن.