قد يؤدي نقل المكونات من جهاز إلى آخر إلى عدم تطابق التهيئة إذا لا تحافظ على مزامنة عناوين IP في ملفات إعداد المكوّنات.
يصف هذا القسم كيفية تشخيص حالات عدم تطابق الإعدادات وإصلاحها.
عناوين IP مقابل أسماء المضيف
يجب عليك استخدام عناوين IP بدلاً من أسماء المضيفين في ملفات إعداد المكوّنات.
تسمح لك بعض ملفات إعداد المكونات باستخدام أسماء المضيفين بدلاً من من عناوين IP، فقد يؤدي استخدام أسماء المضيفين إلى تعقيد عملية استكشاف الأخطاء وإصلاحها. على سبيل المثال، أسماء المضيفين مصدرًا للمشكلات المتعلقة باتصال خادم نظام أسماء النطاقات وإخفاقات البحث المزامنة.
ونتيجةً لذلك، تنصح Apigee بشدة باستخدام عناوين IP لجميع مكوّنات الإعدادات. في بعض الحالات، كما هو الحال مع Cassandra، يجب استخدام عناوين IP ولا يمكن استخدامها أسماء المضيفين. تستخدم معظم الأمثلة في الوثائق عناوين IP لتهيئة المكونات.
بالنسبة إلى أسماء المضيف وعناوين IP، يجب مراعاة الآثار المترتبة على السيناريوهات التالية عند نقل خوادم Apigee:
السيناريو | التأثير في نقل الخوادم |
---|---|
تغيير في عنوان IP | عدِّل جميع الملفات ذات الصلة التي تشير إلى عنوان IP الأصلي. |
تغيير اسم المضيف بدون تغيير في عنوان IP | لم يكن لها أي تأثير. |
تغيير اسم المضيف مع تغيير في عنوان IP | مماثل للتغيير في عنوان IP |
تغيير عنوان IP لعقدة Cassandra
لتغيير عنوان IP لعقدة Cassandra، يمكنك اتّباع الخطوات التالية:
بالنسبة الإعدادات بعقدة Cassandra واحدة
- تعديل
/opt/apigee/customer/application/cassandra.properties
على النظام قيد التعديل. إذا لم يكن الملف متوفّرًا، أنشئه. - غيِّر المَعلمات التالية:
- ضبط
conf_cassandra_seeds
وconf_cassandra_listen_address
لتحديد عنوان IP الجديد للنظام. - يجب تغيير "
conf_cassandra_rpc_address
" لاستخدام الميزة إما عنوان IP الجديد أو 0.0.0.0 (مما يتيح لـ Cassandra Thrift الاستماع على جميع الواجهات).
- ضبط
- فَتْحْ
/opt/apigee/apigee-cassandra/conf/cassandra-topology.properties
في أحد المحررين. ومن المفترض أن يظهر عنوان IP القديم والإعداد التلقائي في النموذج:192.168.56.101=dc-1:ra-1 default=dc-1:ra-1
احفظ تلك المعلومات.
- تعديل
/opt/apigee/customer/application/cassandra.properties
لتغيير عنوان IP القديم المحدد لعنوان IP الجديد:conf_cassandra-topology_topology=192.168.56.103=dc-1:ra-1\ndefault=dc-1:ra-1\n
تأكد من إدراج "\n" بعد عنوان IP، وحدد نفس الإعدادات الافتراضية التي وجدتها أعلاه في الخطوة 3.
- أعِد تشغيل كاساندرا:
/opt/apigee/apigee-service/bin/apigee-service apigee-cassandra restart
- إذا لزم الأمر، عليك أيضًا إصلاح ZooKeeper (راجع تغيير عنوان IP لعقدة ZooKeeper). وبخلاف ذلك، يمكنك إعادة تشغيل كل مكوّن نظام أساسي في Apigee، بدءًا من خادم الإدارة.
بالنسبة الإعدادات ذات العُقد المتعددة لـ Cassandra (حلقة)
- إذا كانت العقدة التي يتم تغييرها هي عقدة أساسية، تحرير
/opt/apigee/customer/application/cassandra.properties
على كل نظام في الحلقة، وتغيير معلَمةconf_cassandra_seeds
لتضمينها. عنوان IP الجديد للنظام المعدّل. إذا لم يكن ملف cassandra.properties موجودًا، أنشئ بها. - تعديل
/opt/apigee/customer/application/cassandra.properties
على النظام الذي يتم تعديله، وتغيير المعلمات التالية:- اضبط
conf_cassandra_listen_address
لاستخدام عنوان IP الجديد. - اضبط
conf_cassandra_rpc_address
لاستخدام عنوان IP الجديد أو "0.0.0.0". (وهو ما يسمح لشركة Cassandra Thrift بالاستماع على جميع الواجهات).
- اضبط
- فَتْحْ
/opt/apigee/apigee-cassandra/conf/cassandra-topology.properties
في أحد المحررين. من المفترض أن ترى جميع عناوين IP لجهاز Cassandra والإعداد التلقائي في النموذج:192.168.56.101=dc-1:ra-1 192.168.56.102=dc-1:ra-1 192.168.56.103=dc-1:ra-1 default=dc-1:ra-1
احفظ تلك المعلومات.
- تعديل
/opt/apigee/customer/application/cassandra.properties
لتغيير عنوان IP القديم المحدد لعنوان IP الجديد:conf_cassandra-topology_topology=192.168.56.101=dc-1:ra-1\n192.168.56.102=dc-1:ra-1\n192.168.56.104=dc-1:ra-1\ndefault=dc-1:ra-1\n
تأكد من إدراج "\n" بعد كل عنوان IP، واستخدام الإعدادات الافتراضية نفسها التي تستخدمها كما هو موضح أعلاه في الخطوة 3.
- أعِد تشغيل "كاساندرا" على النظام المعدّل.
/opt/apigee/apigee-service/bin/apigee-service apigee-cassandra restart
- بالنسبة لجميع العُقد الأخرى، كرر التغييرات التي تم إجراؤها في الخطوتين 3 و4 لإبلاغهم بموقع هذه العقدة في حلقة كاساندرا. بالإضافة إلى ذلك، غيِّر عنوان IP للعقدة الأساسية كما هو موضَّح في الخطوة 1.
- أعِد تشغيل كل عقدة Cassandra متبقية واحدة تلو الأخرى.
/opt/apigee/apigee-service/bin/apigee-service apigee-cassandra restart
- شغِّل الأمر
nodetool ring
على العقدة المعدَّلة لضمان اكتمال الرنين. يمكن العثور على الأداة على/opt/apigee/apigee-cassandra/bin
.nodetool [-u username -pw password] -h localhost ring
- شغِّل
nodetool repair
على العقدة المعدَّلة. تجدر الإشارة إلى أنّ هذه العملية قد تستغرق بعض الوقت، لذا ننصح بشدة بعدم تنفيذ ذلك خلال ساعات الذروة في حركة بيانات واجهة برمجة التطبيقات.nodetool [-u username -pw password] -h localhost repair -pr
- إذا لزم الأمر، أصلح ZooKeeper (راجع تغيير عنوان IP لعقدة ZooKeeper)، ثم أعِد تشغيل كل مكون من مكونات نظام Apigee، بدءًا من خادم الإدارة.
تحديث مخزن البيانات عمليات التسجيل
- ابحث عن المعرفات الفريدة العامة (UUID) لتسجيلات مخزن البيانات التي تحدد عنوان IP القديم باستخدام
الأوامر أدناه. لاحظ "النوع" و"UUID" المَعلمات:
-
curl -u ADMINEMAIL:PW "http://$MSIP:$port/v1/servers?pod=central®ion=DC" | egrep -i '[type|internalip|uuid|region]'
-
curl -u ADMINEMAIL:PW "http://$MSIP:$port/v1/servers?pod=gateway®ion=DC" | egrep -i '[type|internalip|uuid|region]'
-
curl -u ADMINEMAIL:PW "http://$MSIP:$port/v1/servers?pod=analytics®ion=DC" | egrep -i '[type|internalip|uuid|region]'
حيث DC هو اسم مركز البيانات. في عملية تثبيت واحدة لمركز بيانات، "dc-1" عادةً.
-
- يمكنك تسجيل عناوين IP الجديدة باستخدام أحد الأوامر أدناه. سيكون الأمر المطلوب
تعتمد على نوع العقدة التي تم تغييرها.
- بالنسبة إلى type="application-datastore":
curl -u ADMINEMAIL:PW "http://MSIP:port/v1/servers -d \ "Type=application-datastore&Type=audit-datastore&InternalIP=NEWIP®ion=REGION&pod=central" \ -H 'content-type: application/x-www-form-urlencoded' -X POST
- بالنسبة إلى type="kms-datastore":
curl -u ADMINEMAIL:PW "http://MSIP:port/v1/servers -d \ "Type=kms-datastore&Type=dc-datastore&Type=keyvaluemap-datastore&Type=counter-datastore&Type=cache-datastore \ &InternalIP=NEWIP®ion=REGION&pod=GATEWAY_POD" -H 'content-type: \ application/x-www-form-urlencoded' -X POST
- بالنسبة إلى type="reportcrud-datastore":
curl -u ADMINEMAIL:PW "http://MSIP:port/v1/servers" -d \ "Type=reportcrud-datastore&InternalIP=NEW_IP®ion=REGION&pod=analytics" \ -H 'content-type: application/x-www-form-urlencoded' -X POST
- بالنسبة إلى type="application-datastore":
- حذف التسجيلات القديمة للمعرّف الفريد العالمي (UUID) للنظام الذي تم عليه حذف عنوان IP
بتغييره. لكل مشكلة من مشاكل المعرّف الفريد العالمي (UUID) التالية:
curl -u ADMINEMAIL:PW "http://MSIP:port/v1/servers/OLD_UUID" -X DELETE
تغيير عنوان IP لعقدة ZooKeeper
اتبع الخطوات أدناه لتغيير عنوان IP لعقدة ZooKeeper:
غيِّر عنوان IP وأعِد تشغيل مجموعة ZooKeeper (لإعدادات المجموعة المتعدّدة العُقد). فقط)
- افتح "
/opt/apigee/apigee-zookeeper/conf/zoo.cfg
" في محرِّر. من المفترض أن ترى جميع عناوين IP لـ ZooKeeper والإعداد الافتراضي في النموذج:server.1=192.168.56.101:2888:3888 server.2=192.168.56.102:2888:3888 server.3=192.168.56.103:2888:3888
احفظ تلك المعلومات.
- في كل عقدة ZooKeeper، عدِّل الملف
/opt/apigee/customer/application/zookeeper.properties
لضبط السمةconf_zoo_quorum
على عناوين IP الصحيحة. إذا كان الملف غير موجود، قم بإنشائه.conf_zoo_quorum=server.1=192.168.56.101:2888:3888\nserver.2=192.168.56.102:2888:3888\nserver.3=192.168.56.104:2888:3888\n
تأكد من إدراج "\n" كل عنوان IP وأن تكون الإدخالات بنفس الترتيب على كل عقدة.
- ابحث عن قائد مجموعة ZooKeeper باستخدام الأمر التالي (استبدل
node باستخدام عنوان IP لجهاز Zookeeper):
echo srvr | nc node 2181
ومن المفترض أن يتضمن سطر الوضع في الإخراج كلمة "leader".
- إعادة تشغيل ZooKeeper واحد بعد الآخر بدءًا بالقائد وينتهي بالعقدة على
الذي تم تغيير عنوان IP فيه. في حال تغيير أكثر من عقدة Zookeeper واحدة، قد يحدث ذلك
اللازمة لإعادة تشغيل جميع العقد.
/opt/apigee/apigee-service/bin/apigee-service apigee-zookeeper restart
- استخدِم الأمر
echo
الموضّح أعلاه للتحقّق من كل عقدة ZooKeeper.
إبلاغ عُقد Apigee بالإعداد الذي تم تغييره
- في كل عقدة Router، عدِّل الملف
/opt/apigee/customer/application/router.properties
على النحو التالي. إذا لم يكن الملف متوفّرًا، أنشئه.- غيِّر المعلَمة
conf_zookeeper_connection.string
لتضمين عنوان IP الجديد. الْعِنْوَانْ - غيِّر المعلَمة
conf_zookeeper_zk1.host
لتضمين عنوان IP الجديد. الْعِنْوَانْ
- غيِّر المعلَمة
- في كل عقدة معالج الرسائل، عدِّل الملف
/opt/apigee/customer/application/message-processor.properties
على النحو التالي. إذا لم يكن الملف متوفّرًا، أنشئه.- غيِّر مَعلمة
conf_zookeeper_connection.string
لتضمين المَعلمة الجديدة. عنوان IP - غيِّر المعلَمة
conf_zookeeper_zk1.host
لتضمين عنوان IP الجديد. الْعِنْوَانْ
- غيِّر مَعلمة
- في عقدة "خادم الإدارة"، عدِّل الملف
/opt/apigee/customer/application/management-server.properties
على النحو التالي. إذا لم يكن الملف متوفّرًا، أنشئه.- غيِّر مَعلمة
conf_zookeeper_connection.string
لتضمين المَعلمة الجديدة. عنوان IP - غيِّر المعلَمة
conf_zookeeper_zk1.host
لتضمين عنوان IP الجديد. الْعِنْوَانْ
- غيِّر مَعلمة
- أعِد تشغيل جميع مكونات نظام Apigee الأساسي من خلال تشغيل الأمر التالي في كل عقدة:
/opt/apigee/apigee-service/bin/apigee-all restart
تغيير عنوان IP لخادم LDAP (OpenLDAP)
لتغيير عنوان IP لعقدة OpenLDAP، يمكنك إجراء ما يلي:
- في عقدة "خادم الإدارة"، عدِّل الملف
/opt/apigee/customer/application/management-server.properties
الملف. إذا لم يكن الملف متوفّرًا، أنشئه. - في ملف
management-server.properties
، اضبط قيمة مَعلمةconf_security_ldap.server.host
إلى عنوان IP الجديد. - إعادة تشغيل خادم الإدارة:
/opt/apigee/apigee-service/bin/apigee-service edge-management-server restart
تغيير عنوان IP لعقدة Apigee أخرى الأنواع
لتغيير عنوان IP لأي من أنواع العُقد هذه (جهاز التوجيه ومعالج الرسائل وPostgres) Server (not postgresql) وQpid Server (وليس qpidd):
- استخدِم الأمر
curl
التالي لتسجيل عنوان IP الجديد والداخلي والخارجي:curl -u ADMINEMAIL:PW -X PUT \ http://MSIP:8080/v1/servers/uuid -d ExternalIP=ip
curl -u ADMINEMAIL:PW -X PUT \ http://$MSIP:8080/v1/servers/uuid -d InternalIP=ip
تمثّل هذه السمة uuid المعرّف الفريد العالمي للعقدة.
للحصول على معلومات عن كيفية الحصول على المعرّف الفريد العالمي (UUID) للمكوّن، يُرجى الاطّلاع على الحصول على أرقام التعريف الفريدة العالمية (UUID).