Edge for Private Cloud الإصدار 4.19.01
إذا حدث خطأ أثناء إجراء تحديث على Edge 4.19.01، يمكنك الرجوع إلى الإصدار السابق من المكوِّن الذي تسبب في الخطأ، ثم إعادة محاولة التحديث.
يمكنك إعادة الإصدار 4.19.01 من Edge إلى إصدارات إصدار الميزات التالية:
- الإصدار 4.18.05
- الإصدار 4.18.01
- الإصدار 4.17.09*
* للعودة من الإصدار 4.19.01 إلى 4.17.09، عليك الرجوع إلى Postgres بالإضافة إلى إعادة العناصر على كل عقدة. في حال العودة إلى الإصدار 4.18.01 أو 4.18.05، لن تحتاج إلى الرجوع إلى إصدار Postgres، لأنّ عملية الترقية لم تتضمّن تحديث Postgres.
هناك سيناريوهان قد تحتاج فيهما لإجراء عملية العودة إلى الحالة السابقة:
- العودة إلى إصدار ميزة سابق: على سبيل المثال من 4.19.01 إلى 4.18.05.
- العودة إلى إصدار تحديث سابق في الإصدار نفسه: على سبيل المثال، من 4.19.01.02 إلى 4.19.01.01.
لمزيد من المعلومات، يُرجى الاطّلاع على عملية إصدار Apigee Edge.
المستخدمون الذين يمكنهم إجراء تراجع
يجب أن يكون المستخدم الذي يقوم بعملية العودة إلى الحالة السابقة هو نفسه المستخدم الذي حدّث Edge في الأصل، أو المستخدم الذي يعمل كجذر.
يتم تشغيل مكونات Edge افتراضيًا كـ "apigee" للمستخدم. وفي بعض الحالات، قد يتم تشغيل مكونات Edge كمستخدمين مختلفين. على سبيل المثال، إذا كان على جهاز التوجيه الوصول إلى المنافذ ذات الأذونات المميزة، مثل المنافذ التي تقل عن 1000، يجب تشغيل جهاز التوجيه كجذر أو كمستخدم لديه إمكانية الوصول إلى هذه المنافذ. أو، يمكنك تشغيل مكون واحد كمستخدم واحد ومكون آخر كمستخدم آخر.
المكونات التي تتضمّن رمزًا شائعًا
تشترك مكونات Edge التالية في رمز مشترك. بالتالي، للرجوع إلى إصدار سابق من أي من هذه المكوّنات على عقدة، يجب إرجاع كل هذه المكوّنات التي كانت موجودة على تلك العقدة إلى الحالة السابقة.
edge-management-server
(خادم الإدارة)edge-message-processor
(معالج الرسائل)edge-router
(جهاز توجيه)edge-postgres-server
(خادم Postgres)edge-qpid-server
(خادم Qpid)
على سبيل المثال، إذا كان لديك خادم الإدارة وجهاز التوجيه ومعالج الرسائل مثبتًا على العقدة، يجب إرجاع أي من هذه الخوادم الثلاثة إلى الحالة السابقة.
العودة إلى إصدار ميزة سابق
للرجوع من 4.19.01 إلى 4.17.09، عليك التراجع عن Postgres بالإضافة إلى إرجاع المكوّنات إلى كل عقدة. في حال العودة من الإصدار 4.18.01 أو 4.18.05، لن تحتاج إلى الرجوع إلى إصدار Postgres، لأنّ عملية الترقية لم تتضمّن تحديث Postgres.
للرجوع إلى إصدار ميزة سابق، نفِّذ ما يلي في كل عقدة تستضيف المكوّن:
-
نزِّل ملف
bootstrap.sh
للإصدار الذي تريد الرجوع إليه:- للرجوع إلى الإصدار 4.18.05، يجب تنزيل
bootstrap_4.18.05.sh
:curl https://software.apigee.com/bootstrap_4.18.05.sh -o /tmp/bootstrap_4.18.05.sh
- للرجوع إلى الإصدار 4.18.01، يجب تنزيل
bootstrap_4.18.01.sh
:curl https://software.apigee.com/bootstrap_4.18.01.sh -o /tmp/bootstrap_4.18.01.sh
- للرجوع إلى الإصدار 4.17.09، يجب تنزيل
bootstrap_4.17.09.sh
:curl https://software.apigee.com/bootstrap_4.17.09.sh -o /tmp/bootstrap_4.17.09.sh
- للرجوع إلى الإصدار 4.18.05، يجب تنزيل
- أوقِف المكوِّن للرجوع إلى إصدار سابق:
- للرجوع إلى إصدار سابق من أي مكوّنات ذات رمز مشترك على
العقدة، يجب إيقافها كلها، كما هو موضّح في المثال التالي:
/opt/apigee/apigee-service/bin/apigee-service edge-management-server stop
/opt/apigee/apigee-service/bin/apigee-service edge-router stop
/opt/apigee/apigee-service/bin/apigee-service edge-message-processor stop
/opt/apigee/apigee-service/bin/apigee-service edge-qpid-server stop
/opt/apigee/apigee-service/bin/apigee-service edge-postgres-server stop
- لإعادة أي مكوِّن آخر في العقدة، أوقِف هذا المكوِّن فقط:
/opt/apigee/apigee-service/bin/apigee-service component stop
- للرجوع إلى إصدار سابق من أي مكوّنات ذات رمز مشترك على
العقدة، يجب إيقافها كلها، كما هو موضّح في المثال التالي:
- في حال العودة إلى ميزة تحقيق الربح المادي، يجب إلغاء تثبيتها من كل عُقد خادم الإدارة ومعالج الرسائل:
/opt/apigee/apigee-service/bin/apigee-service edge-mint-gateway uninstall
- ألغِ تثبيت المكوِّن للرجوع إلى العقدة السابقة:
- لإعادة أي من المكوّنات ذات الرمز الشائع إلى العُقدة، يجب إلغاء تثبيتها جميعًا من خلال إلغاء تثبيت مجموعة المكوّنات
edge-gateway
، على النحو الموضّح في المثال التالي:/opt/apigee/apigee-service/bin/apigee-service edge-gateway uninstall
- للتراجع عن أي مكوِّن آخر في العقدة، يجب إلغاء تثبيت هذا المكوِّن فقط، على النحو
الموضّح في المثال التالي:
/opt/apigee/apigee-service/bin/apigee-service component uninstall
حيث يكون component هو اسم المكوِّن.
- للرجوع إلى إصدار سابق من جهاز توجيه Edge، عليك حذف محتوى
ملف
/opt/nginx/conf.d
بالإضافة إلى إلغاء تثبيت مجموعة المكوّناتedge-gateway
:cd /opt/nginx/conf.d
rm -rf *
- لإعادة أي من المكوّنات ذات الرمز الشائع إلى العُقدة، يجب إلغاء تثبيتها جميعًا من خلال إلغاء تثبيت مجموعة المكوّنات
- ألغِ تثبيت الإصدار 4.19.01 من
apigee-setup
:/opt/apigee/apigee-service/bin/apigee-service apigee-setup uninstall
- ثبِّت الإصدار 4.18.05 أو 4.18.01 أو 4.17.09 من الأداة
apigee-service
وملحقاتها. في المثال التالي، يتم تثبيت الإصدار 4.17.09 منapigee-service
:sudo bash /tmp/bootstrap_4.17.09.sh apigeeuser=uName apigeepassword=pWord
يكون uName وpWord هما اسم المستخدم وكلمة المرور اللذان تلقّيتهما من Apigee. إذا لم تستخدم pWord، سيُطلب منك إدخاله.
إذا ظهرت لك رسالة خطأ، تأكّد من تنزيل ملف
bootstrap.sh
في الخطوة 1. - ثبِّت
apigee-setup
:/opt/apigee/apigee-service/bin/apigee-service apigee-setup install
- ثبِّت الإصدار الأقدم من المكوِّن:
/opt/apigee/apigee-setup/bin/setup.sh -p component -f configFile
حيث يكون component هو المكوِّن المطلوب تثبيته وconfigFile هو ملف الإعداد للإصدار الأقدم.
- في حال الرجوع إلى Qpid، يمكنك محو iptables:
sudo iptables -F
- كرر هذه العملية لكل عقدة تستضيف المكون الذي تريد التراجع عنه.
للرجوع من 4.19.01 إلى 4.17.09، عليك التراجع عن Postgres بالإضافة إلى إرجاع المكوّنات إلى كل عقدة. في حال العودة من الإصدار 4.18.01 أو 4.18.05، لن تحتاج إلى الرجوع إلى إصدار Postgres، لأنّ عملية الترقية لم تتضمّن تحديث Postgres.
العودة إلى إصدار تحديث سابق
لإعادة مكوّن إلى إصدار معيّن من إصدار، عليك اتّباع الخطوات التالية في كل عقدة تستضيف المكوِّن:
- نزِّل الإصدار المحدّد للمكوِّن:
/opt/apigee/apigee-service/bin/apigee-service component_version install
حيث يكون component_version هو المكوِّن وإصدار التحديث المطلوب تثبيته. على سبيل المثال:
/opt/apigee/apigee-service/bin/apigee-service edge-ui-4.17.09-0.0.3749 install
إذا كنت تستخدم مخزن Apigee على الإنترنت، يمكنك تحديد إصدارات المكوّنات المتاحة باستخدام الأمر التالي:
yum --showduplicates list comp
مثلاً:
yum --showduplicates list edge-ui
- استخدِم
apigee-setup
لتثبيت المكوِّن:/opt/apigee/apigee-setup/bin/setup.sh -p comp -f configFile
مثلاً:
/opt/apigee/apigee-setup/bin/setup.sh -p ui -f configFile
لاحظ أنك تحدد اسم المكون فقط عند تثبيته، وليس الإصدار.
- كرر هذه العملية لكل عقدة تستضيف المكون الذي تريد التراجع عنه.
للرجوع من 4.19.01 إلى 4.17.09، عليك التراجع عن Postgres بالإضافة إلى إرجاع المكوّنات إلى كل عقدة. في حال العودة من الإصدار 4.18.01 أو 4.18.05، لن تحتاج إلى الرجوع إلى إصدار Postgres، لأنّ عملية الترقية لم تتضمّن تحديث Postgres.
إرجاع تحديث Postgres 9.6 إلى إصدار سابق
في حال الترقية إلى الإصدار 4.19.01 من الإصدار 4.17.09، عليك الرجوع إلى إصدار سابق من تحديث Postgres بالإضافة إلى مكوّنات Edge.
للتراجع عن تحديث Postgres عند تحديث Postgres في إعداد الاستعداد الرئيسي:
- ترقية عقدة وضع الاستعداد الجديدة لتصبح المشرف الرئيسي في Postgres. وسيكون إصدار Postgres الرئيسي الجديد هو الإصدار نفسه الذي تم تثبيته عليه سابقًا.
- قم بتهيئة عقدة وضع الاستعداد القديمة لتكون عقدة وضع الاستعداد للشريحة الرئيسية الجديدة. وستكون عقدة وضع الاستعداد القديمة هي نفسها إصدار Edge السابق.
- تسجيل العُقد الرئيسية وجاهزة الجديدة في مجموعات الإحصاءات ومجموعات المستهلكين.
عند الانتهاء من العودة إلى الحالة السابقة، لن تكون العُقدة الرئيسية القديمة ضرورية. ويمكنك بعد ذلك إيقاف العقدة الرئيسية القديمة.
- تأكَّد من أنّ عقدة Postgres الجديدة في وضع الاستعداد تعمل:
/opt/apigee/apigee-service/bin/apigee-all status
في حال عدم تشغيل Postgres، يمكنك بدء تشغيله:
/opt/apigee/apigee-service/bin/apigee-all start
- تأكَّد من إيقاف Postgres في العُقدة الرئيسية القديمة وعقدة وضع الاستعداد القديمة:
/opt/apigee/apigee-service/bin/apigee-all status
في حال تشغيل Postgres، يُرجى إيقافها:
/opt/apigee/apigee-service/bin/apigee-service edge-postgres-server stop > /opt/apigee/apigee-service/bin/apigee-service apigee-postgresql stop
- في حال تثبيت عقدة وضع الاستعداد، ابدأ Qpid على عقدة وضع الاستعداد القديمة:
/opt/apigee/apigee-service/bin/apigee-service edge-qpid-server start
- ترقية عقدة وضع الاستعداد الجديدة باعتبارها وحدة Postgres الرئيسية:
- ترقية عقدة وضع الاستعداد الجديدة لتصبح عقدة رئيسية جديدة:
apigee-service apigee-postgresql promote-standby-to-master new_standby_IP
إذا طُلب منك ذلك، أدخِل كلمة مرور Postgres لمستخدم "apigee" الذي يتم ضبطه تلقائيًا على "postgres".
- عدِّل ملف الإعداد الذي استخدمته لتثبيت الإصدار الحالي من Edge لتحديد
ما يلي:
# IP address of the new master: PG_MASTER=new_standby_IP # IP address of the old standby node PG_STANDBY=old_standby_IP
- ضبط الشريحة الرئيسية الجديدة:
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql setup-replication-on-master -f configFile
- ترقية عقدة وضع الاستعداد الجديدة لتصبح عقدة رئيسية جديدة:
- أعِد إنشاء عقدة وضع الاستعداد القديمة:
- عدِّل ملف الإعداد الذي استخدمته لتثبيت الإصدار الحالي من Edge لتحديد
ما يلي:
# IP address of the new master: PG_MASTER=new_standby_IP # IP address of the old standby node PG_STANDBY=old_standby_IP
- إزالة دليل البيانات من عقدة وضع الاستعداد القديمة:
cd /opt/apigee/data/apigee-postgresql/pgdata > rm -rf *
- إعادة ضبط عقدة وضع الاستعداد القديمة لتكون عقدة وضع الاستعداد للشريحة الرئيسية الجديدة:
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql setup-replication-on-standby -f configFile
- تأكَّد من تشغيل Postgres على عقدة وضع الاستعداد القديمة:
/opt/apigee/apigee-service/bin/apigee-all status
إذا لم يكن التطبيق قيد التشغيل، يمكنك تشغيله:
/opt/apigee/apigee-service/bin/apigee-service edge-postgres-server start
- عدِّل ملف الإعداد الذي استخدمته لتثبيت الإصدار الحالي من Edge لتحديد
ما يلي:
- تأكَّد من إضافة عقدة وضع الاستعداد الجديدة من خلال عرض ملف
/opt/apigee/apigee-postgresql/conf/pg_hba.conf
على الشريحة الرئيسية الجديدة. - يمكنك الاطّلاع على الإحصاءات الحالية ومعلومات مجموعة المستهلكين من خلال تنفيذ الأمر التالي
على خادم الإدارة:
curl -u sysAdminEmail:password http://ms_IP:8080/v1/analytics/groups/ax
يعرض هذا الأمر اسم مجموعة الإحصاءات في الحقل
name
، واسم مجموعة المستهلكين في الحقلname
ضمنconsumer-groups
. وتعرض أيضًا المعرّفات الفريدة العالمية (UUID) لعُقد Postgres الرئيسية والاستعداد القديمة في الحقلpostgres-server
وفي الحقلdatastores
. من المفترَض أن تظهر لك النتيجة على النحو التالي:{ "name" : "axgroup-001", "properties" : { }, "scopes" : [ "VALIDATE~test", "sgilson~prod" ], "uuids" : { "qpid-server" : [ "8381a053-433f-4382-bd2a-100fd37a1592", "4b6856ec-ef05-498f-bac6-ef5f0d5f6521" ], "postgres-server" : [ "ab1158bd-1d59-4e2a-9c95-24cc2cfa6edc:27f90844-efab-4b32-8a23-8f85cdc9a256" ] }, "consumer-groups" : [ { "name" : "consumer-group-001", "consumers" : [ "8381a053-433f-4382-bd2a-100fd37a1592", "4b6856ec-ef05-498f-bac6-ef5f0d5f6521" ], "datastores" : [ "ab1158bd-1d59-4e2a-9c95-24cc2cfa6edc:27f90844-efab-4b32-8a23-8f85cdc9a256" ], "properties" : { } } ], "data-processors" : { } }
- يمكنك الحصول على عنوان UUID للصفحة الرئيسية القديمة من خلال تشغيل الأمر
curl
التالي على العقدة الرئيسية القديمة:curl -u sysAdminEmail:password http://node_IP:8084/v1/servers/self
من المفترض أن يظهر لك المعرّف الفريد العالمي للعقدة في نهاية الإخراج، ويكون على النحو التالي:
"type" : [ "postgres-server" ], "uUID" : "599e8ebf-5d69-4ae4-aa71-154970a8ec75"
- كرِّر الخطوة السابقة للحصول على عناوين IP لعقدة وضع الاستعداد القديمة وعقدة جديدة.
- إزالة العُقد الرئيسية القديمة وعقد الاستعداد من مجموعة المستهلكين:
curl -u sysAdminEmail:password -X DELETE \ "http://ms_IP:8080/v1/analytics/groups/ax/axgroup-001/consumer-groups/consumer-group-001/datastores/masterUUID,standbyUUID" -v
حيث يكون axgroup-001 وconsumer-group-001 هما الاسمَين التلقائيَين للإحصاءات ومجموعات المستهلكين. إنّ masterUUID,standbyUUID بالترتيب نفسه الذي ظهر به أعلاه عند عرض الإحصاءات الحالية ومعلومات مجموعة المستهلكين أعلاه. وقد تحتاج إلى تحديدها باعتبارها standbyUUID,masterUUID.
يجب أن تكون السمة
datastores
لـconsumer-groups
فارغة الآن. - إزالة العُقد الرئيسية القديمة وعقد الاستعداد من مجموعة الإحصاءات:
curl -u sysAdminEmail:password -X DELETE \ "http://ms_IP:8080/v1/analytics/groups/ax/axgroup-001/servers?uuid=masterUUID,standbyUUID&type=postgres-server" -v
يجب أن تكون السمة
postgres-server
ضمنuuids
فارغة الآن. - تسجيل عُقد PG الرئيسية والاستعدادات الجديدة في مجموعات الإحصاءات ومجموعات المستهلكين:
curl -u sysAdminEmail:password -X POST -H "Content-Type: application/json" -d '' "http://ms_IP:8080/v1/analytics/groups/ax/axgroup-001/servers?uuid=masterUUID,standbyUUID&type=postgres-server" -v
curl -u sysAdminEmail:password -X POST -H "Content-Type:application/json" -d '' "http://ms_IP:8080/v1/analytics/groups/ax/axgroup-001/consumer-groups/consumer-group-001/datastores?uuid=masterUUID,standbyUUID" -v
- التحقّق من صحة مجموعة الإحصاءات:
curl -u sysAdminEmail:password http://ms_IP:8080/v1/analytics/groups/ax
من المفترض أن تظهر لك أرقام التعريف الفريدة العالمية (UUID) للعُقد الرئيسية الجديدة وعقد الاستعداد الجديدين المُدرَجين في مجموعة الإحصاءات ومجموعة المستهلكين.
- أعِد تشغيل خادم إدارة Edge:
/opt/apigee/apigee-service/bin/apigee-service edge-management-server restart
- أعِد تشغيل جميع خوادم Qpid:
/opt/apigee/apigee-service/bin/apigee-service edge-qpid-server restart
- إعادة تشغيل جميع خوادم Postgres:
/opt/apigee/apigee-service/bin/apigee-service edge-postgres-server restart
- تحقق من حالة النسخ المماثل عن طريق إصدار النصوص البرمجية التالية على كلا الخادمين. ومن المفترض أن يعرض النظام نتائج متطابقة على كلا الخادمين لضمان إجراء نسخ متماثل بنجاح:
على الشريحة الرئيسية الجديدة، نفِّذ ما يلي:
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-master
تحقق من أنه يقول أنه رئيسي. في عقدة وضع الاستعداد القديمة:
/opt/apigee/apigee-service/bin/apigee-service apigee-postgresql postgres-check-standby
يُرجى التأكّد من أنّها في وضع الاستعداد.
- كرِّر الخطوة السابقة بعد تقديم عدة طلبات من واجهة برمجة التطبيقات لضمان مزامنة العُقد.
- عليك إيقاف مشرف Postgres القديم باستخدام الإجراء الوارد في
تحديث Apigee Edge
4.16.01/4.16.05 إلى 4.17.09.
بدلاً من ذلك، يمكنك إلغاء تثبيت Qpid من الشريحة الرئيسية القديمة وتثبيت Qpid على العقدة الرئيسية الجديدة. بعد إلغاء تثبيت Qpid، يمكنك إيقاف العقدة الرئيسية القديمة.
إلغاء تثبيت Qpid من الشريحة الرئيسية القديمة وتثبيت Qpid على الشريحة الرئيسية الجديدة
لإلغاء تثبيت Qpid من الشريحة الرئيسية القديمة وتثبيته على الشريحة الرئيسية الجديدة:
- احظر وصول معالجات الرسائل إلى منفذ Qpid 5672 على الشريحة الرئيسية القديمة من خلال تنفيذ الأمر التالي على جميع معالجات الرسائل:
iptables -A OUTPUT -p tcp -d 10.233.147.20 --dport 5672 -j DROP
- تأكد من أن قائمة انتظار رسالة Qpid فارغة عن طريق تشغيل الأمر التالي. لا يمكنك إلغاء تثبيت Qpid حتى يعالج جميع الرسائل المعلّقة:
qpid-stat -q
يعرض هذا الأمر جدولاً يحتوي على عدد لـ
msg, msgIn, and msgOut
. ستتم معالجة جميع الرسائل عندmsg=0
وmsgIn=msgOut
. - حدد المعرّف الفريد العالمي لخادم Qpid على الشريحة الرئيسية القديمة من خلال تشغيل الأمر التالي على الوحدة الرئيسية القديمة. احفظ هذه المعلومات لاستخدامها لاحقًا في الإجراء:
curl -u sysAdminEmail:password http://node_IP::8083/v1/servers/self
- إيقاف Qpid على الشريحة الرئيسية القديمة:
/opt/apigee/apigee-service/bin/apigee-service edge-qpid-server stop
/opt/apigee/apigee-service/bin/apigee-service apigee-qpidd stop
- إلغاء تثبيت خادم Qpid:
/opt/apigee/apigee-service/bin/apigee-service edge-qpid-server uninstall
/opt/apigee/apigee-service/bin/apigee-service apigee-qpidd uninstall
- أزِل خادم Qpid القديم من مجموعات الإحصاءات ومجموعات المستهلكين:
curl -u sysAdminEmail:password -X DELETE -H "Content-Type: application/json" -d '' \ "http://ms_IP:8080/v1/analytics/groups/ax/axgroup-001/consumer-groups/consumer-group-001/consumers/qpid_UUID" -v
curl -u sysAdminEmail:password -X DELETE \ "http://ms_IP:8080/v1/analytics/groups/ax/axgroup-001/servers?uuid=qpid_UUID&type=qpid-server" -v
- إزالة خادم Qpid القديم من Zookeeper:
curl -u sysAdminEmail:password -X DELETE \ http://ms_IP:8080/v1/servers/qpid_UUID
- تثبيت Qpid على الشريحة الرئيسية الجديدة:
/opt/apigee/apigee-setup/bin/setup.sh -p qs -f configFile
- حدد المعرّف الفريد العالمي لخادم Qpid على الشريحة الرئيسية الجديدة عن طريق تشغيل الأمر التالي على الوحدة الرئيسية الجديدة. احفظ هذه المعلومات لاستخدامها لاحقًا في الإجراء:
curl -u sysAdminEmail:password http://node_IP::8083/v1/servers/self
- سجِّل خادم Qpid الجديد في مجموعات الإحصاءات ومجموعات المستهلكين:
curl -u sysAdminEmail:password -X POST -H "Content-Type: application/json" -d '' \ "http://ms_IP:8080/v1/analytics/groups/ax/axgroup-001/servers?uuid=qpid_UUID&type=qpid-server" -v
curl -u sysAdminEmail:password -X POST -H "Content-Type:application/json" -d '' \ "http://ms_IP:8080/v1/analytics/groups/ax/axgroup-001/consumer-groups/consumer-group-001/consumers?uuid=qpid_UUID" -v
- أعِد تشغيل جميع معالِجات الرسائل:
/opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
- نفِّذ الأمر التالي على خادم Qpid الجديد للتحقّق من إنشاء قوائم الانتظار:
qpid-stat -q
تأكَّد من أنّه يتم تحديث
msg
وmsgIn
وmsgOut
أثناء معالجة خادم Qpid للرسائل.
يُرجى التواصل مع فريق دعم Apigee Edge في حال مواجهة مشاكل عند الرجوع إلى إصدار سابق.