قد يؤدي نقل المكوّنات من جهاز إلى آخر إلى حدوث عدم تطابق في الإعداد إذا لم تتم مزامنة عناوين 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.
- أعِد تشغيل Cassandra:
/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.
- أعِد تشغيل Cassandra على النظام المعدَّل.
/opt/apigee/apigee-service/bin/apigee-service apigee-cassandra restart
- بالنسبة إلى جميع العُقد الأخرى، كرِّر التغييرات التي تم إجراؤها في الخطوتين 3 و4 لإعلامها بموضع هذه العقدة في حلقة Cassandra. بالإضافة إلى ذلك، غيِّر عنوان 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 القديم باستخدام الأوامر أدناه. دوِّن المَعلمتَين "النوع" و "المعرّف الفريد العالمي":
-
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
يجب أن يظهر في سطر "الوضع" في الناتج "رئيسي".
- أعِد تشغيل أحد خوادم ZooKeeper بعد الآخر، بدءًا بالخادم الرئيسي وانتهاءً بالعقدة التي تم تغيير عنوان IP الخاص بها. إذا تم تغيير عناوين 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 الجديد
- غيِّر المَعلمة
- في عُقدة Management Server، عدِّل الملف
/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 (SymasLDAP)
لتغيير عنوان IP لعقدة SymasLDAP، اتّبِع الخطوات التالية:
- في عقدة "خادم الإدارة"، عدِّل الملف
/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 (ليس postgresql) وخادم Qpid (ليس 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) للعقدة.
للحصول على معلومات حول كيفية الحصول على رقم تعريف فريد عالميًا لأحد المكوّنات، يُرجى الاطّلاع على الحصول على أرقام التعريف الفريدة عالميًا.