ترقية بوابة خدمات مطوِّري البرامج

بوابة خدمات المطوّرين، الإصدار 4.17.09

توضّح هذه العملية كيفية ترقية عملية تثبيت حالية على الموقع الإلكتروني لخدمات قناة المطوّرين في Apigee.

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

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

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

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

  • 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

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

http://your_portal.com/buildInfo

قبل التحديث

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

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

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

اتّبِع الإجراء التالي لتعديل عدد عمليات تسجيل الدخول في الدقيقة على البوابة على إحدى العقد:

  1. انتقِل إلى دليل Drupal. مثلاً: /opt/apigee/apigee-drupal/wwwroot

    cd /opt/apigee/apigee-drupal/wwwroot

    اطّلِع على دليل التثبيت التلقائي للاطّلاع على الدليل التلقائي لإصدار منتجك.

  2. احتفِظ بنسخة احتياطية من مثيل قاعدة بيانات 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
  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 كما هو موضّح في تثبيت الأداة المساعدة Edge apigee-setup.
  7. انتقِل إلى الدليل /opt:
    cd /opt
  8. لإجراء ترقية على خادم متصل بالإنترنت:
    1. نزِّل ملف bootstrap_4.17.09.sh لإصدار Edge 4.17.09 إلى: /tmp/bootstrap_4.17.09.sh:
      curl https://software.apigee.com/bootstrap_4.17.09.sh -o /tmp/bootstrap_4.17.09.sh
    2. تثبيت أداة apigee-service وأدواتها المساعِدة في الإصدار 4.17.09 من Edge:
      sudo bash /tmp/bootstrap_4.17.09.sh apigeeuser=uName
        apigeepassword=pWord

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

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

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

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

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

        لاحظ أنك قمت بتضمين المسار إلى دليل repos في هذا الأمر.

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

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

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

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

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

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

/opt/apigee/apigee-drupal/wwwroot

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