انتقال مؤلفهها از یک ماشین به ماشین دیگر ممکن است باعث عدم تطابق پیکربندی شود اگر نشانیهای 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 وارد کنید و همان تنظیمات پیشفرضی را که در مرحله ۳ بالا پیدا کردید مشخص کنید.
- بازراهاندازی 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
مطمئن شوید که بعداز هر نشانی IP، «\n» را وارد کنید و از همان تنظیمات پیشفرضی که در مرحله ۳ بالا ثبت کردید استفاده کنید.
- 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های ثبتهای datastore را که نشانی 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
مطمئن شوید که بعداز هر نشانی IP، عبارت «\n» را وارد کنید و ورودیها در هر گره به همان ترتیب باشند.
- بااستفاده از فرمان زیر، رهبر مجموعه ZooKeeper را پیدا کنید (node را با نشانی IP دستگاه Zookeeper جایگزین کنید):
echo srvr | nc node 2181
خط «حالت» در برونداد باید «رهبر» باشد.
- ZooKeeper را یکی پساز دیگری بازراهاندازی کنید، از رهبر شروع کنید و با گرهای که نشانی IP آن تغییر کرده است پایان دهید. اگر بیشاز یک گره zookeeper نشانی IP را تغییر داد، ممکن است
لازم باشد همه گرهها بازراهاندازی شوند.
/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 مربوط به سرور الدپ (الدپ باز)
برای تغییر نشانی IP گره OpenLDAP، کارهای زیر را انجام دهید:
- در گره Management Server، فایل
/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) گره است.
برای کسب اطلاعات درباره نحوه دریافت UUID مؤلفه، به دریافت UUID مراجعه کنید.