قد يؤدّي نقل المكوّنات من جهاز إلى آخر إلى عدم تطابق في الإعدادات إذا لم تتزامن عناوين 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 (انظر أدناه)، أو إعادة تشغيل كل مكوِّن من مكونات النظام الأساسي Apigee بدءًا من Management Server.
بالنسبة إلى الإعدادات التي تتضمّن عُقد 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
- نفِّذ الأمر
nodetool ring
على العقدة المعدّلة للتأكّد من اكتمال الرنين. ويمكن العثور على الأداة على الرابط/opt/apigee/apigee-cassandra/bin
.nodetool [-u username -pw password] -h localhost ring
ما عليك سوى تمرير اسم المستخدم وكلمة المرور في حال تفعيل مصادقة JMX لـ Cassandra.
- شغِّل
nodetool repair
على العقدة المعدّلة. يُرجى العِلم أنّ هذه العملية قد تستغرق بعض الوقت، لذا ننصح بشدة بعدم تنفيذها خلال ساعات الذروة لواجهة برمجة التطبيقات.nodetool [-u username -pw password] -h localhost repair -pr
- إذا لزم الأمر، أصلِح ZooKeeper (انظر أدناه)، ثم أعِد تشغيل كل مكوّن من مكونات النظام الأساسي Apigee، بدءًا من Management Server.
تعديل عمليات تسجيل مخزن البيانات
- ابحث عن أرقام التعريف الفريدة العالمية (UUID) لعمليات تسجيل مخزن البيانات التي تحدِّد عنوان IP القديم، وذلك باستخدام
الأوامر أدناه. دوِّن المعلَمتَين "type" و "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 من خلالها. في حال تغيير عناوين IP في أكثر من عقدة Zookeeper واحدة، قد
يكون من الضروري إعادة تشغيل جميع العُقد.
/opt/apigee/apigee-service/bin/apigee-service apigee-zookeeper restart
- استخدِم الأمر
echo
الموضّح أعلاه للتحقّق من كل عقدة ZooKeeper.
إبلاغ عُقد Apigee بالإعداد الذي تم تغييره
- في كل عقدة من عُقد جهاز التوجيه، يمكنك تعديل الملف
/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 (وليس 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).