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

الإصدار 4.19.01 من 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
  • OPDK-18-05.x

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

http://yourportal.com/buildInfo

قبل التحديث

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

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

ترقية بوابة باستخدام حِزم 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.19.01.sh لإصدار Edge 4.19.01 إلى: /tmp/bootstrap_4.19.01.sh:
      curl https://software.apigee.com/bootstrap_4.19.01.sh -o /tmp/bootstrap_4.19.01.sh
    2. تثبيت أداة apigee-service وأدواتها الملحقة في الإصدار 4.19.01 من Edge:
      sudo bash /tmp/bootstrap_4.19.01.sh apigeeuser=uName apigeepassword=pWord

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

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

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

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

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

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

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

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

      3. على العقدة البعيدة، ثبِّت أداة apigee-service في Edge والملحقات:
        sudo bash /tmp/bootstrap_4.19.01.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. شغِّل أداة التحديث في عقدة Postgres:
    /opt/apigee/apigee-setup/bin/update.sh -c ps -f configFile

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

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

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

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

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

/opt/apigee/apigee-drupal/wwwroot

اكتملت عملية الترقية الآن. إذا خفضت أداة تحديث Apigee إصدار Drupal، قد تحتاج إلى إعادة تشغيل أداة ترقية Drupal. لمزيد من المعلومات، يُرجى الاطّلاع على إعادة تشغيل عملية ترقية Drupal.

إعادة إجراء ترقية Drupal

إذا أدّى تشغيل أداة تحديث Apigee لترقية Edge for Private Cloud إلى الرجوع إلى إصدار سابق من إصدار Drupal، أعِد تثبيت ترقية Drupal. قد يحدث ذلك في حال ترقية Drupal فقط بين تحديثات السحابة الخاصة.

على سبيل المثال:

  1. كنت تستخدم الإصدار 4.18.05 من Edge for Private Cloud، والذي يتضمّن Drupal 7.59.
  2. لقد أجريت ترقية إلى الإصدار 7.64 من Drupal بسبب تحديث أمان مطلوب.
  3. أنت الآن بصدد ترقية Private Cloud إلى الإصدار 4.19.01 الذي يتضمّن Drupal 7.61.

كما توضِّح هذه الحالة، قد لا يشير إصدار Drupal المستخدَم من قِبل أداة تحديث Apigee إلى أحدث ترقية من Drupal. نتيجةً لذلك، عليك الآن إعادة تشغيل عملية ترقية Drupal لمحاولة إعادة تثبيت Drupal على الإصدار الأحدث.