একটি মেশিন থেকে অন্য মেশিনে কম্পোনেন্ট সরানোর ফলে কনফিগারেশন অমিল হতে পারে যদি আপনি কম্পোনেন্ট কনফিগারেশন ফাইলে IP অ্যাড্রেস সিঙ্ক করে না রাখেন।
কনফিগারেশন সংক্রান্ত অমিল কীভাবে ডায়াগনসিস ও সমাধান করতে হয় তা এই বিভাগে বর্ণনা করা হয়েছে।
IP অ্যাড্রেস বনাম হোস্টের নাম
আপনার কম্পোনেন্ট কনফিগারেশন ফাইলে হোস্টের নামের পরিবর্তে IP অ্যাড্রেস ব্যবহার করা উচিত।
কিছু কম্পোনেন্ট কনফিগারেশন ফাইল আপনাকে IP অ্যাড্রেসের পরিবর্তে হোস্টের নাম ব্যবহার করার অনুমতি দিলেও, হোস্টের নাম ব্যবহার করলে সমস্যার সমাধান করা জটিল হতে পারে। যেমন, হোস্টের নাম ডিএনএস সার্ভার কানেক্টিভিটি, লুক-আপ ব্যর্থতা এবং সিঙ্ক করার সাথে সম্পর্কিত সমস্যার উৎস হতে পারে।
তাই, Apigee সব কম্পোনেন্ট কনফিগারেশনের জন্য IP অ্যাড্রেস ব্যবহার করার সাজেশন দেয়। কিছু ক্ষেত্রে, যেমন Cassandra-এর সাথে, আপনাকে অবশ্যই IP অ্যাড্রেস ব্যবহার করতে হবে এবং হোস্টের নাম ব্যবহার করতে পারবেন না। ডকুমেন্টেশনে বেশিরভাগ উদাহরণে কম্পোনেন্ট কনফিগারেশনের জন্য IP অ্যাড্রেস ব্যবহার করা হয়।
হোস্টের নাম ও IP অ্যাড্রেসের জন্য, Apigee সার্ভার সরানোর সময় নিম্নলিখিত পরিস্থিতির প্রভাব বিবেচনা করুন:
| পরিস্থিতি | সার্ভার সরানোর প্রভাব |
|---|---|
| IP অ্যাড্রেসে পরিবর্তন | আসল IP অ্যাড্রেস রেফার করে এমন সব সম্পর্কিত ফাইল আপডেট করুন |
| IP অ্যাড্রেস পরিবর্তন না করেই হোস্টনেম পরিবর্তন করা হয়েছে | কোনও প্রভাব ফেলেনি |
| IP অ্যাড্রেস পরিবর্তনের সাথে হোস্টনেম পরিবর্তন | IP অ্যাড্রেস পরিবর্তন করার মতোই |
Cassandra নোডের IP অ্যাড্রেস পরিবর্তন করা
Cassandra নোডের IP অ্যাড্রেস পরিবর্তন করতে, নিম্নলিখিত ধাপগুলি অনুসরণ করুন:
একটি Cassandra নোড সহ কনফিগারেশনের জন্য
- সংশোধন করা হচ্ছে এমন সিস্টেমে
/opt/apigee/customer/application/cassandra.propertiesএডিট করুন। ফাইলটি না থাকলে, এটি তৈরি করুন। - নিম্নলিখিত প্যারামিটার পরিবর্তন করুন:
- সিস্টেমের নতুন IP অ্যাড্রেস নির্দিষ্ট করতে
conf_cassandra_seedsএবংconf_cassandra_listen_addressপ্যারামিটার সেট করুন। conf_cassandra_rpc_addressপরিবর্তন করে নতুন IP অ্যাড্রেস অথবা 0.0.0.0 (যা Cassandra Thrift-কে সব ইন্টারফেসে শুনতে দেয়) ব্যবহার করুন।
- সিস্টেমের নতুন IP অ্যাড্রেস নির্দিষ্ট করতে
- এডিটরে
/opt/apigee/apigee-cassandra/conf/cassandra-topology.propertiesখুলুন। আপনি পুরনো IP অ্যাড্রেস এবং ডিফল্ট সেটিং এই ফর্মে দেখতে পাবেন:192.168.56.101=dc-1:ra-1 default=dc-1:ra-1
সেই তথ্য সেভ করুন।
- পুরনো IP অ্যাড্রেস পরিবর্তন করে নতুন IP অ্যাড্রেস করতে
/opt/apigee/customer/application/cassandra.propertiesএডিট করুন:conf_cassandra-topology_topology=192.168.56.103=dc-1:ra-1\ndefault=dc-1:ra-1\n
IP অ্যাড্রেসের পরে "\n" যোগ করেছেন কিনা তা নিশ্চিত করুন এবং উপরে ৩ নম্বর ধাপে যেমন দেখেছেন, ঠিক সেইরকম ডিফল্ট সেটিংস উল্লেখ করুন।
- Cassandra রিস্টার্ট করুন:
/opt/apigee/apigee-service/bin/apigee-service apigee-cassandra restart
- প্রয়োজন হলে ZooKeeper-ও রিপেয়ার করুন (নিচে দেখুন), অন্যথায় ম্যানেজমেন্ট সার্ভার থেকে শুরু করে প্রতিটি Apigee প্ল্যাটফর্ম কম্পোনেন্ট রিস্টার্ট করুন।
একাধিক Cassandra নোড (রিং) সহ কনফিগারেশনের জন্য
- পরিবর্তন করা নোডটি যদি সিড নোড হয়, তাহলে রিংয়ের প্রতিটি সিস্টেমে
/opt/apigee/customer/application/cassandra.propertiesফাইল এডিট করুন এবং পরিবর্তিত সিস্টেমের নতুন IP অন্তর্ভুক্ত করতেconf_cassandra_seedsপ্যারামিটার পরিবর্তন করুন। cassandra.properties ফাইলটি না থাকলে, এটি তৈরি করুন। - সংশোধন করা হচ্ছে এমন সিস্টেমে
/opt/apigee/customer/application/cassandra.propertiesএডিট করুন এবং নিম্নলিখিত প্যারামিটার পরিবর্তন করুন:- নতুন IP অ্যাড্রেস ব্যবহার করার জন্য
conf_cassandra_listen_addressসেট করুন। - নতুন IP অ্যাড্রেস বা "0.0.0.0"
(যা Cassandra Thrift-কে সব ইন্টারফেসে শুনতে দেয়) ব্যবহার করার জন্য
conf_cassandra_rpc_addressসেট করুন।
- নতুন IP অ্যাড্রেস ব্যবহার করার জন্য
- এডিটরে
/opt/apigee/apigee-cassandra/conf/cassandra-topology.propertiesখুলুন। আপনি Cassandra-র সব IP অ্যাড্রেস এবং ডিফল্ট সেটিংস এই ফর্ম্যাটে দেখতে পাবেন: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
সেই তথ্য সেভ করুন।
- পুরনো IP অ্যাড্রেস পরিবর্তন করে নতুন IP অ্যাড্রেস করতে
/opt/apigee/customer/application/cassandra.propertiesএডিট করুন: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
আপনি Cassandra-র জন্য JMX যাচাইকরণ চালু করলে শুধুমাত্র আপনার ইউজারনেম ও পাসওয়ার্ড পাস করতে হবে।
- পরিবর্তিত নোডে
nodetool repairরান করুন। মনে রাখবেন যে এই প্রসেসটি সম্পূর্ণ হতে কিছুটা সময় লাগতে পারে, তাই API ট্রাফিক পিক আওয়ারে এটি না করার জন্য বিশেষভাবে সাজেস্ট করা হচ্ছে।nodetool [-u username -pw password] -h localhost repair -pr
- প্রয়োজন হলে, ZooKeeper মেরামত করুন (নিচে দেখুন), তারপর ম্যানেজমেন্ট সার্ভার থেকে শুরু করে প্রতিটি Apigee প্ল্যাটফর্ম কম্পোনেন্ট রিস্টার্ট করুন।
ডেটা স্টোর রেজিস্ট্রেশন আপডেট করুন
- নিচে উল্লেখ করা কমান্ড ব্যবহার করে পুরনো IP অ্যাড্রেস উল্লেখ করে ডেটাস্টোর রেজিস্ট্রেশনের UUID খুঁজুন। "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"-এর জন্য:
- যে সিস্টেমের IP অ্যাড্রেস পরিবর্তন করা হয়েছে, সেটির UUID-এর জন্য পুরনো রেজিস্ট্রেশন মুছে দিন।
এইসব UUID-এর প্রতিটির জন্য:
curl -u ADMINEMAIL:PW "http://MSIP:port/v1/servers/OLD_UUID" -X DELETE
ZooKeeper নোডের IP অ্যাড্রেস পরিবর্তন করা
ZooKeeper নোডের IP অ্যাড্রেস পরিবর্তন করতে নিচে উল্লেখ করা ধাপগুলি অনুসরণ করুন:
IP অ্যাড্রেস পরিবর্তন করুন এবং ZooKeeper এনসেম্বল রিস্টার্ট করুন (শুধুমাত্র মাল্টি-নোড এনসেম্বল কনফিগারেশনের জন্য)
- এডিটরে
/opt/apigee/apigee-zookeeper/conf/zoo.cfgখুলুন। আপনাকে এই ফর্ম্যাটে সব ZooKeeper IP অ্যাড্রেস ও ডিফল্ট সেটিং দেখতে হবে: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-এর জায়গায় Zookeeper মেশিনের IP অ্যাড্রেস লিখুন):
echo srvr | nc node 2181
আউটপুটের মোড লাইনে "লিডার" লেখা থাকতে হবে।
- লিডার থেকে শুরু করে এবং যে নোডে IP অ্যাড্রেস পরিবর্তন করা হয়েছে সেখানে শেষ করে, একটির পর একটি ZooKeeper রিস্টার্ট করুন। একাধিক zookeeper নোড IP অ্যাড্রেস পরিবর্তন করলে,
সব নোড রিস্টার্ট করতে হতে পারে।
/opt/apigee/apigee-service/bin/apigee-service apigee-zookeeper restart
- প্রতিটি ZooKeeper নোড যাচাই করতে উপরে বর্ণিত
echoকমান্ড ব্যবহার করুন।
পরিবর্তিত কনফিগারেশন সম্পর্কে Apigee নোডকে জানানো
- প্রতিটি রাউটার নোডে,
/opt/apigee/customer/application/router.propertiesফাইলটি নিম্নলিখিতভাবে এডিট করুন। ফাইলটি না থাকলে, এটি তৈরি করুন।- নতুন IP অ্যাড্রেস অন্তর্ভুক্ত করতে
conf_zookeeper_connection.stringপ্যারামিটার পরিবর্তন করুন - নতুন IP অ্যাড্রেস অন্তর্ভুক্ত করতে
conf_zookeeper_zk1.hostপ্যারামিটার পরিবর্তন করুন
- নতুন IP অ্যাড্রেস অন্তর্ভুক্ত করতে
- প্রতিটি মেসেজ প্রসেসর নোডে,
/opt/apigee/customer/application/message-processor.propertiesফাইলটি নিম্নলিখিতভাবে এডিট করুন। ফাইলটি না থাকলে, এটি তৈরি করুন।- নতুন IP অ্যাড্রেস অন্তর্ভুক্ত করতে
conf_zookeeper_connection.stringপ্যারামিটার পরিবর্তন করুন - নতুন IP অ্যাড্রেস অন্তর্ভুক্ত করতে
conf_zookeeper_zk1.hostপ্যারামিটার পরিবর্তন করুন
- নতুন IP অ্যাড্রেস অন্তর্ভুক্ত করতে
- ম্যানেজমেন্ট সার্ভার নোডে,
/opt/apigee/customer/application/management-server.propertiesফাইলটি নিম্নলিখিতভাবে এডিট করুন। ফাইলটি না থাকলে, এটি তৈরি করুন।- নতুন IP অ্যাড্রেস অন্তর্ভুক্ত করতে
conf_zookeeper_connection.stringপ্যারামিটার পরিবর্তন করুন - নতুন IP অ্যাড্রেস অন্তর্ভুক্ত করতে
conf_zookeeper_zk1.hostপ্যারামিটার পরিবর্তন করুন
- নতুন IP অ্যাড্রেস অন্তর্ভুক্ত করতে
- প্রতিটি নোডে নিম্নলিখিত কমান্ড রান করে সব Apigee প্ল্যাটফর্ম কম্পোনেন্ট রিস্টার্ট করুন:
/opt/apigee/apigee-service/bin/apigee-all restart
LDAP সার্ভারের IP অ্যাড্রেস পরিবর্তন করা (OpenLDAP)
OpenLDAP নোডের IP অ্যাড্রেস পরিবর্তন করতে, নিম্নলিখিত ধাপগুলি অনুসরণ করুন:
- ম্যানেজমেন্ট সার্ভার নোডে,
/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
অন্য Apigee নোডের IP অ্যাড্রেস পরিবর্তন করা প্রকার
এইসব নোডের প্রকারের (রাউটার, মেসেজ প্রসেসর, Postgres সার্ভার (postgresql নয়) এবং Qpid সার্ভার (qpidd নয়) যেকোনও একটির IP অ্যাড্রেস পরিবর্তন করতে:
- নতুন ইন্টার্নাল ও এক্সটার্নাল IP অ্যাড্রেস রেজিস্টার করতে নিম্নলিখিত
curlকমান্ড ব্যবহার করুন: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 পান দেখুন।