ترقية البوابة

الإصدار 4.18.05 من Edge for Private Cloud

توضِّح هذه العملية كيفية ترقية بوابة Apigee Developer Services (أو البوابة) الحالية المثبَّتة على الموقع.

تحديد الإجراء الصحيح للتحديث

يستند الإجراء الذي تستخدمه لتعديل البوابة إلى عملية التثبيت الحالية:

تحديد نوع التثبيت الحالي

إذا لم تكن متأكّدًا من نوع التثبيت الحالي، استخدِم الأمر التالي لتحديده:

  • 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
  • OPDK-18-01.x

لتحديد إصدار البوابة، افتح عنوان URL التالي في متصفّح:

http://yourportal.com/buildInfo

قبل التحديث

بالنسبة إلى عمليات التثبيت الحالية، إذا عدّلت أي رمز في Drupal core أو في أي وحدات غير مخصّصة، سيتم استبدال تعديلاتك. يشمل ذلك، من بين إجراءات أخرى، أي تغييرات أجريتها على .htaccess. يجب افتراض أنّ أي ملف خارج دليل /sites مملوك لخدمة Drupal. يُستثنى من هذه القاعدة robots.txt. إذا كان هذا الملف متوفّرًا في جذر الويب، سيتم الاحتفاظ به.

قبل مواصلة عملية التثبيت، يُرجى إنشاء نسخة احتياطية من الدليل الجذري بأكمله على الويب Drupal. بعد تنفيذ خطوات التثبيت الموضّحة أدناه، يمكنك استعادة عمليات التخصيص من النسخة الاحتياطية.

ترقية بوابة باستخدام حِزم RPM

لتعديل قيمة الأرباح لكل ألف مشاهدة (RPM) في البوابة على عقدة:

  1. عليك التغيير إلى دليل Drupal، /opt/apigee/apigee-drupal تلقائيًا:
    cd /opt/apigee/apigee-drupal
  2. احتفِظ بنسخة احتياطية من مثيل قاعدة بيانات Drupal. ينشئ الأمر pg_dump نسخة من القاعدة:
    pg_dump --dbname=devportal --host=host_IP_address --username=drupaladmin
      --password --format=c > /tmp/portal.dmp

    حيث:

    • devportal هو اسم قاعدة البيانات كما هو محدّد من خلال سمة PG_NAME في ملف إعدادات تثبيت البوابة.
    • host_IP_address هو عنوان IP لعقدة البوابة.
    • drupaladmin هو اسم مستخدم Postgres الذي تستخدمه البوابة للوصول إلى قاعدة البيانات على النحو المحدّد من خلال السمة DRUPAL_PG_USER في ملف إعدادات تثبيت البوابة.
    • سيُطلب منك إدخال كلمة مرور مستخدم Postgres على النحو المحدّد في السمة DRUPAL_PG_PASS في ملف إعداد تثبيت البوابة.

    إذا أردت في وقت لاحق استعادة البيانات من النسخة الاحتياطية، استخدِم الأمر:

    pg_restore --clean --dbname=devportal --host=localhost  --username=apigee < /tmp/portal.dmp
  3. أنشئ نسخة احتياطية من دليل جذر الويب في Drupal بالكامل. الموقع التلقائي للتثبيت هو /opt/apigee/apigee-drupal، ولكن من المحتمل أنّك غيّرته.

    إذا لم تكن متأكّدًا من موقع هذا الدليل، استخدِم الأمر drush status أو إدخال الإعداد > الوسائط > الملف في قائمة Drupal لتحديد موقع نظام الملفات العام ومسار نظام الملفات الخاص (للخطوة التالية).

  4. أنشئ نسخة احتياطية من الملفات في /opt/apigee/data/apigee-drupal-devportal/private.
  5. اضبط Drupal على وضع الصيانة:
    1. اختَر الإعدادات في قائمة Drupal.
    2. في صفحة الضبط، اختَر وضع الصيانة ضمن التطوير.
    3. ضَع علامة في المربّع وضع الموقع في وضع الصيانة.
    4. أدخِل رسالة تظهر للمستخدمين أثناء فترة الصيانة.
    5. انقر على حفظ الضبط.
  6. أوقِف SELinux على النحو الموضّح في مقالة تثبيت أداة إعداد apigee-setup في Edge.
  7. التغيير إلى الدليل /opt:
    cd /opt
  8. لإجراء ترقية على خادم متصل بالإنترنت:
    1. نزِّل ملف bootstrap_4.18.05.sh لإصدار Edge 4.18.05 إلى: /tmp/bootstrap_4.18.05.sh:
      curl https://software.apigee.com/bootstrap_4.18.05.sh -o /tmp/bootstrap_4.18.05.sh
    2. ثبِّت أداة apigee-service وأدواتها المساعِدة في Edge 4.18.05:
      sudo bash /tmp/bootstrap_4.18.05.sh apigeeuser=uName apigeepassword=pWord

      حيث يكون uName وpWord هما اسم المستخدم وكلمة المرور اللذان تلقّيتَهما من Apigee. في حال حذف pWord، سيُطلب منك إدخاله.

      يتحقّق برنامج التثبيت تلقائيًا من تثبيت Java 1.8. يمكنك استخدام الخيار "C" للمتابعة بدون تثبيت Java.

  9. لإجراء ترقية على خادم لا يتوفّر فيه اتصال بالإنترنت:
    1. أنشئ مستودعًا محليًا للإصدار 4.18.05 كما هو موضّح في مقالة إنشاء مستودع Apigee محلي.
    2. لتثبيت apigee-service من ملف ‎ .tar:
      1. على العقدة التي تتضمّن المستودع المحلي، استخدِم الأمر التالي لحزمة المستودع المحلي في ملف tar .واحد باسم /opt/apigee/data/apigee-mirror/apigee-4.18.05.tar.gz:
        /opt/apigee/apigee-service/bin/apigee-service apigee-mirror package
      2. انسخ ملف .tar إلى العقدة التي تريد تحديث Edge فيها. على سبيل المثال، انسخها إلى الدليل /tmp في العقدة الجديدة.
      3. على العقدة الجديدة، فكِّ ضغط الملف إلى الدليل ‎ /tmp:
        tar -xzf apigee-4.18.05.tar.gz

        ينشئ هذا الأمر دليلاً جديدًا باسم repos في الدليل الذي يحتوي على ملف ‎ .tar. على سبيل المثال، ‎ /tmp/repos.

      4. تثبيت أداة apigee-service في Edge والتبعيات من /tmp/repos:
        sudo bash /tmp/repos/bootstrap_4.18.05.sh apigeeprotocol="file://" apigeerepobasepath=/tmp/repos

        يُرجى ملاحظة أنّك تضمّن المسار إلى دليل المستودعات في هذا الأمر.

    3. لتثبيت apigee-service باستخدام خادم الويب Nginx:
      1. اضبط خادم الويب Nginx كما هو موضّح في قسم "التثبيت من المستودع باستخدام خادم الويب Nginx" في مقالة تثبيت أداة Edge apigee-setup.
      2. على العقدة البعيدة، نزِّل ملف Edge bootstrap_4.18.05.sh إلى /tmp/bootstrap_4.18.05.sh:
        /usr/bin/curl http://uName:pWord@remoteRepo:3939/bootstrap_4.18.05.sh
          -o /tmp/bootstrap_4.18.05.sh

        يمثّل uName وpWord اسم المستخدم وكلمة المرور اللذين ضبطتهما أعلاه للمستودع، ويشير remoteRepo إلى عنوان IP أو اسم نظام أسماء النطاقات لعقدة repo.

      3. في العقدة البعيدة، ثبِّت أداة Edge apigee-service والتبعيات:
        sudo bash /tmp/bootstrap_4.18.05.sh apigeerepohost=remoteRepo:3939
          apigeeuser=uName apigeepassword=pWord apigeeprotocol=http://

        حيث يكون uName وpWord اسم المستخدم وكلمة المرور للملف.

  10. استخدِم apigee-service لتحديث الأداة apigee-setup:
    /opt/apigee/apigee-service/bin/apigee-service apigee-setup update
  11. شغِّل أداة التحديث في عقدة Postgre:
    /opt/apigee/apigee-setup/bin/update.sh -c ps -f configFile

    حيث يكون configFile هو ملف الإعدادات الذي استخدمته لتثبيت "قاعدة بيانات Postgres". الشرط الوحيد في ملف الإعداد هو أن يكون ملف الإعداد قابلاً للوصول إليه أو للقراءة من قِبل مستخدم "apigee".

  12. تعديل قاعدة بيانات Postgres:
    /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql db_upgrade
  13. شغِّل أداة التحديث على عقدتك لتعديل البوابة:
    /opt/apigee/apigee-setup/bin/update.sh -c dp -f configFile

    حيث يكون configFile هو ملف الضبط الذي استخدمته لتثبيت البوابة الشرط الوحيد في ملف الإعداد هو أنّه يجب أن يكون ملف الإعداد متاحًا أو قابلاً للقراءة من قِبل مستخدم "apigee".

  14. شغِّل النص البرمجي update.php في Drupal من خلال فتح عنوان URL التالي في نافذة متصفّح:
    http://portal_IP_DNS:8079/update.php
  15. أوقِف استخدام Drupal في وضع الصيانة:
    1. اختَر الإعدادات في قائمة Drupal.
    2. في صفحة الضبط، اختَر وضع الصيانة ضمن التطوير.
    3. أزِل العلامة من المربّع وضع الموقع في وضع الصيانة.
    4. انقر على حفظ الضبط.

يُرجى العِلم أنّ الدليل الجذر بعد التحديث هو:

/opt/apigee/apigee-drupal/wwwroot

اكتملت عملية الترقية الآن.