الإصدار 4.17.05 من Developer Services Portal
يصف هذا الإجراء كيفية ترقية تثبيت محلي حالي لخدمات قناة مطوّري Apigee.
تحديد إجراء التحديث الصحيح
يعتمد الإجراء الذي تستخدمه لتحديث البوابة على عملية التثبيت الحالية:
- إذا كان التثبيت يستخدم Apache/MySQL أو Apache/MariaDB من نظام تم تحديثه إلى الإصدار 4.17.01، استخدِم ترقية المدخل باستخدام ملف .tar.
- إذا كان التثبيت يستخدم Nginx/Postgres من تثبيت جديد للإصدار 4.17.01، استخدِم ترقية بوابة باستخدام 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)
دليل التثبيت التلقائي
تفترض عملية الترقية أنّه تم تثبيت "بوابة مخصّصة للمطوّرين" في:
- /opt/apigee/apigee-drupal (Nginx)
- /var/www/html (Apache)
إذا لم تثبّت البوابة في الدليل التلقائي، عدِّل المسارات في الإجراء أدناه لاستخدام دليل التثبيت.
إذا لم تكن تعرف دليل التثبيت، يمكنك تحديده كما هو موضّح في أوامر Drush الشائعة الاستخدام.
دليل التثبيت التلقائي الجديد بعد تحديث Nginx/Postgres من تثبيت جديد للإصدار 4.17.01
بعد تحديث تثبيت جديد للإصدار 4.17.01 الذي يستخدم Nginx/Postgres، تغيّر الدليل الجذري من:
/opt/apigee/apigee-drupal
إلى:
/opt/apigee/apigee-drupal/wwwroot
إصدارات الترقية المتوافقة
يتوافق إجراء الترقية هذا مع الإصدارات التالية من البوابة:
- pantheon-14.02.x
- pantheon-14.03.x
- pantheon-14.04.x
- pantheon-14.07.x
- pantheon-15-01.x
- OPDK-15-04.x
- OPDK-15-07.x
- OPDK-16-01.x
- OPDK-16-05.x
- OPDK-16-09.x
- OPDK-17-01.x
لتحديد إصدار البوابة، افتح عنوان URL التالي في متصفّح:
http://yourportal.com/buildInfo
قبل التحديث
بالنسبة إلى عمليات التثبيت الحالية، إذا عدّلت أي رمز في نواة Drupal أو في أي وحدات غير مخصّصة، سيتم استبدال تعديلاتك. ويشمل ذلك، من بين أمور أخرى، أي تغييرات قد تكون أجريتها على .htaccess. يجب أن تفترض أنّ أي ملف خارج دليل /sites مملوك لـ Drupal. يُستثنى من هذه القاعدة ملف robots.txt، فإذا كان هذا الملف موجودًا في جذر الويب، سيتم الاحتفاظ به.
قبل المتابعة في عملية التثبيت، أنشِئ نسخة احتياطية من دليل جذر الويب بالكامل في Drupal. بعد تنفيذ خطوات التثبيت الموضّحة أدناه، يمكنك استعادة التخصيصات من النسخة الاحتياطية.
ترقية البوابة باستخدام ملف .tar
- احتفِظ بنسخة احتياطية من مثيل MySQL/MariaDB في Drupal.
لمزيد من المعلومات، يُرجى الاطّلاع على http://www.thegeekstuff.com/2008/09/backup-and-restore-mysql-database-using-mysqldump/- الخيار 1: استخدام Drush
ينشئ الأمر sql-dump في Drush نسخة من قاعدة البيانات. من دليل Drupal، وهو /var/www/html تلقائيًا، شغِّل الأمر:
> drush sql-dump > /path/to/backup_dir/database-backup.sql
استخدِم drush help sql-dump لمزيد من المعلومات. - الخيار 2: استخدام MySQLdump
استخدِم الأمر mysqldump لإنشاء نسخة من قاعدة البيانات:
mysqldump -u USERNAME -p'PASSWORD' DATABASENAME > /path/to/backup_dir/database-backup.sql
يجب عدم ترك مسافة بين الخيار -p وكلمة المرور. يجب وضع علامات اقتباس مفردة حول كلمة المرور إذا كانت تحتوي على أحرف خاصة.
يمكنك ضبط USERNAME وDATABASENAME عند تثبيت البوابة. By default, both are devportal.
- الخيار 1: استخدام Drush
- أنشئ نسخة احتياطية من دليل جذر الويب بالكامل في Drupal. موقع التثبيت التلقائي هو /var/www/html، ولكن من المحتمل أنّك غيّرته في وقت التثبيت.
- نزِّل ملف Developer Channel Services DeveloperServices_x.y.z.tar من ftp.apigee.com، حيث يتوافق x.y.z مع رقم إصدار البوابة. عندما يُطلب منك ذلك، أدخِل بيانات الاعتماد التي تلقّيتها
من Apigee.
يمكنك تنزيل ملف من الرابط الذي أرسلته إليك Apigee في متصفّح أو من خلال نسخه ثم إضافته إلى أمر cURL التالي:
> curl -kOL <paste link here>
ملاحظة: إذا كانت بوابتك على خادم بدون اتصال خارجي بالإنترنت، يُرجى تنفيذ هذه الخطوة على خادم لديه إذن وصول.
انتقِل إلى دعم Apigee Edge واختَر تسجيل الدخول إلى "بوابة الدعم" لطلب ملف .tar لترقية "خدمات قناة المطوّرين". إذا لم يكن لديك حساب على "بوابة الدعم"، انقر على تسجيل الدخول إلى بوابة الدعم، ثم انقر على هل أنت على عجلة من أمرك؟ في صفحة تسجيل الدخول. يمكنك إرسال طلب دعم هنا. -
للترقية على خادم متصل بالإنترنت:
- استخرِج ملف ترقية البوابة:
> tar -xvf <tar file>
يؤدي استخراج هذا الأمر إلى إنشاء دليل جديد باسم DeveloperServices-4.x.y.z. - انتقِل إلى الدليل DeveloperServices-4.x.y.z.
- نزِّل أحدث إصدار من Drupal باستخدام الأمر التالي:
> drush dl drupal
ينشئ هذا الأمر دليلاً باسم drupal-x.y، حيث يشير x.y إلى الإصدار الحالي من Drupal. - شغِّل النص البرمجي networked-update.sh:
> ./networked-update.sh
استنادًا إلى أذونات الملفات، قد تحتاج إلى استخدام sudo لتشغيل هذا الأمر، أو تشغيله بصفتك مشرفًا. - لتلقّي إشعارات بشأن تحديثات Drupal، تأكَّد من تفعيل وحدة "مدير تحديثات Drupal" (Drupal Update manager). من قائمة Drupal، اختَر Modules (الوحدات) وانتقِل للأسفل إلى وحدة Update manager (مدير التحديثات). إذا لم يكن مفعَّلاً، فعِّله.
بعد تفعيل هذه الميزة، يمكنك الاطّلاع على التحديثات المتاحة من خلال عنصر القائمة التقارير > التحديثات المتاحة.
استخدِم عنصر القائمة التقارير > التحديثات المتاحة > الإعدادات لضبط الوحدة لإرسال رسالة إلكترونية إليك عند توفّر تحديثات ولضبط معدّل تكرار البحث عن تحديثات.
- استخرِج ملف ترقية البوابة:
-
للترقية على خادم بدون اتصال بالإنترنت:
- على الخادم الذي نزّلت عليه ملف Developer Channel Services DeveloperServices_x.y.z.tar،
استخرِج ملف ترقية المدخل:
> tar -xvf <tar file>
يؤدي استخراج هذا الأمر إلى إنشاء دليل جديد باسم DeveloperServices-4.x.y.z. - انتقِل إلى الدليل DeveloperServices-4.x.y.z.
- شغِّل النص البرمجي non-networked-update.sh:
> ./non-networked-update.sh
استنادًا إلى أذونات الملفات، قد تحتاج إلى استخدام sudo لتشغيل هذا الأمر، أو تشغيله بصفتك مشرفًا.
يؤدي هذا الأمر إلى تنزيل جميع ملفات التحديث اللازمة وتجميعها في ملف واحد باسم devportal-update.tgz وكتابة الملف في الموقع الذي تختاره. - انسخ devportal-update.tgz إلى الخادم المستهدف، أي الخادم الذي يشغّل البوابة.
ملاحظة: لا تنسخ ملف devportal-update.tgz إلى جذر الويب للخادم المستهدف. - استخرِج ملف devportal-update.tgz إلى الدليل الحالي:
> tar -xzf /path/to/devportal-update.tgz - انتقِل إلى الدليل developer-update.
- نفِّذ الأمر التالي لتثبيت التحديث:
> ./install-update.sh - أجِب عن الطلبات.
- على الخادم الذي نزّلت عليه ملف Developer Channel Services DeveloperServices_x.y.z.tar،
استخرِج ملف ترقية المدخل:
اكتملت عملية الترقية الآن.
ترقية بوابة باستخدام حِزم RPM
اتّبِع الإجراء التالي لتحديث 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.
- أوقِف SELinux على النحو الموضّح في تثبيت أداة apigee-setup في Edge.
-
للترقية على خادم متصل بالإنترنت:
- نزِّل ملف Edge 4.17.05 bootstrap_4.17.05.sh إلى
/tmp/bootstrap_4.17.05.sh:
> curl https://software.apigee.com/bootstrap_4.17.05.sh -o /tmp/bootstrap_4.17.05.sh - ثبِّت الأداة المساعدة apigee-service في Edge 4.17.05 والتبعيات:
> sudo bash /tmp/bootstrap_4.17.05.sh apigeeuser=uName apigeepassword=pWord
حيث uName:pWord هما اسم المستخدم وكلمة المرور اللذان تلقيتهما من Apigee. إذا حذفت pWord، سيُطلب منك إدخالها.
يتحقّق المثبِّت تلقائيًا من تثبيت Java 1.8. يمكنك استخدام الخيار "C" للمتابعة بدون تثبيت Java.
- نزِّل ملف Edge 4.17.05 bootstrap_4.17.05.sh إلى
/tmp/bootstrap_4.17.05.sh:
-
للترقية على خادم بدون اتصال بالإنترنت:
- أنشئ مستودعًا محليًا للإصدار 4.17.05 كما هو موضّح في "إنشاء مستودع Apigee محلي" في
تثبيت أداة apigee-setup
في Edge.
ملاحظة: إذا كان لديك مستودع 4.17.01 حالي، يمكنك إضافة مستودع 4.17.05 إليه كما هو موضّح في "تحديث مستودع Apigee محلي" في تثبيت أداة apigee-setup في Edge. -
لتثبيت apigee-service من ملف .tar:
- في العقدة التي تحتوي على المستودع المحلي، استخدِم الأمر التالي لإنشاء حزمة للمستودع المحلي
في ملف .tar واحد باسم /opt/apigee/data/apigee-mirror/apigee-4.17.05.tar.gz:
> /opt/apigee/apigee-service/bin/apigee-service apigee-mirror package - انسخ ملف .tar إلى العقدة التي تريد تحديث Edge فيها. على سبيل المثال، انسخه إلى الدليل /tmp على العقدة الجديدة.
- في العقدة الجديدة، فُكّ ضغط الملف إلى الدليل /tmp:
> tar -xzf apigee-4.17.05.tar.gz
ينشئ هذا الأمر دليلاً جديدًا باسم repos في الدليل الذي يحتوي على ملف .tar. على سبيل المثال، /tmp/repos. - ثبِّت أداة apigee-service في Edge
والتبعيات من /tmp/repos:
> sudo bash /tmp/repos/bootstrap_4.17.05.sh apigeeprotocol="file://" apigeerepobasepath=/tmp/repos
يُرجى ملاحظة أنك تُدرج المسار إلى دليل المستودعات في هذا الأمر.
- في العقدة التي تحتوي على المستودع المحلي، استخدِم الأمر التالي لإنشاء حزمة للمستودع المحلي
في ملف .tar واحد باسم /opt/apigee/data/apigee-mirror/apigee-4.17.05.tar.gz:
-
لتثبيت apigee-service باستخدام خادم الويب Nginx:
- اضبط خادم الويب Nginx كما هو موضّح في "التثبيت من المستودع باستخدام خادم الويب Nginx" في تثبيت أداة apigee-setup في Edge.
- على العقدة البعيدة، نزِّل ملف Edge bootstrap_4.17.05.sh إلى
/tmp/bootstrap_4.17.05.sh:
> /usr/bin/curl http://uName:pWord@remoteRepo:3939/bootstrap_4.17.05.sh -o /tmp/bootstrap_4.17.05.sh
حيث uName:pWord هما اسم المستخدم وكلمة المرور اللذان حددتهما أعلاه للمستودع، وremoteRepo هو عنوان IP أو اسم نظام أسماء النطاقات لعقدة المستودع. - على العقدة البعيدة، ثبِّت أداة apigee-service في Edge والتبعيات:
> sudo bash /tmp/bootstrap_4.17.05.sh apigeerepohost=remoteRepo:3939 apigeeuser=uName apigeepassword=pWord apigeeprotocol=http://
حيث uName:pWord هما اسم المستخدم وكلمة المرور للمستودع.
- أنشئ مستودعًا محليًا للإصدار 4.17.05 كما هو موضّح في "إنشاء مستودع Apigee محلي" في
تثبيت أداة apigee-setup
في Edge.
- استخدِم apigee-service لتحديث الأداة المساعدة apigee-setup:
> /opt/apigee/apigee-service/bin/apigee-service apigee-setup update - شغِّل أداة التحديث على العقدة لتحديث قاعدة بيانات Postgres:
> /opt/apigee/apigee-setup/bin/update.sh -c ps -f configFile
حيث configFile هو ملف الإعداد الذي استخدمته لتثبيت قاعدة بيانات Postgres. الشرط الوحيد لملف الإعداد هو أن يكون ملف الإعداد قابلاً للوصول أو القراءة من قِبل مستخدم "apigee". - ابدأ Postgres:
> /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql start - شغِّل أداة التحديث المساعدة على العقدة لتحديث البوابة:
> /opt/apigee/apigee-setup/bin/update.sh -c dp -f configFile
حيث configFile هو ملف الإعداد الذي استخدمته لتثبيت البوابة. الشرط الوحيد لملف الإعداد هو أن يكون ملف الإعداد متاحًا أو قابلاً للقراءة من قِبل مستخدم "apigee".
يُرجى العِلم أنّ الدليل الجذري بعد التحديث أصبح الآن:
/opt/apigee/apigee-drupal/wwwroot
اكتملت عملية الترقية الآن.