আপনি Apigee Edge ডকুমেন্টেশন দেখছেন।
Apigee X ডকুমেন্টেশন দেখুন। তথ্য
সমস্যার উপসর্গ
Edge UI বা ম্যানেজমেন্ট API-এর মাধ্যমে API প্রক্সি রিভিশন ডেপ্লয়মেন্ট টাইম-আউট সমস্যার কারণে ব্যর্থ হয়।
সমস্যার মেসেজ
Click to change deployment status. The revision is deployed and traffic can flow, but flow may be impaired. Error: Call timed out; either server is down or server is not reachable
সম্ভাব্য কারণ
এই সমস্যার সাধারণ কারণগুলি হল:
| কারণ | বিবরণ | এর জন্য |
| নেটওয়ার্ক কানেক্টিভিটি সংক্রান্ত সমস্যা | নেটওয়ার্ক কানেক্টিভিটি সংক্রান্ত সমস্যা বা ফায়ারওয়াল নিয়মের কারণে ম্যানেজমেন্ট সার্ভার ও মেসেজ প্রসেসরের মধ্যে কমিউনিকেশন ব্যর্থ হয়েছে। | শুধুমাত্র প্রাইভেট ক্লাউড ব্যবহারকারীদের জন্য |
| Large API Proxy Bundle | API প্রক্সি বান্ডেলের সাইজ অনেক বড় হলে, মেসেজ প্রসেসর চালু হতে অনেক সময় লাগতে পারে। এর ফলে RPC টাইম-আউট হয়ে যেতে পারে। | প্রাইভেট ও পাবলিক ক্লাউড ব্যবহারকারী |
নেটওয়ার্ক কানেক্টিভিটি সংক্রান্ত সমস্যা
মনে রাখবেন: শুধুমাত্র Edge Private Cloud ব্যবহারকারীরাই নিম্নলিখিত ধাপগুলি সম্পূর্ণ করতে পারবেন। আপনি Edge পাবলিক ক্লাউডে থাকলে, Apigee Edge সহায়তা টিমের সাথে যোগাযোগ করুন।
ডায়াগনসিস
- নির্দিষ্ট API-এর জন্য ডিপ্লয়মেন্ট স্ট্যাটাস পান যা নিম্নলিখিত
ম্যানেজমেন্ট API কল ব্যবহার করে সমস্যা দেখায়:
curl -v http://<management-server-IPaddress>:<port#>/organizations/<orgname>/environments/<envname>/apis/<apiname>/deployments -u <username>
সমস্যা সহ স্যাম্পেল আউটপুট:
{ "error": "Call timed out; either server is down or server is not reachable", "status": "error", "type": [ "message-processor" ], "uUID": "ebbc1078-cbde-4a00-a7db-66a3c1b2b748" }, { "status": "deployed", "type": [ "message-processor" ], "uUID": "204e2b7e-52f7-46d9-b458-20f9bfb51e6d" }, { "status": "deployed", "type": [ "router" ], "uUID": "967e63c6-ee95-47c0-9608-f4a32638fb1e" }, { "status": "deployed", "type": [ "router" ], "state" : "error" }
উপরের স্যাম্পেল আউটপুট থেকে দেখা যাচ্ছে যে মেসেজ প্রসেসর -এর মধ্যে একটিতে সমস্যা হয়েছে যার UUID হল "
ebbc1078-cbde-4a00-a7db-66a3c1b2b748"। - আপনার API প্রক্সির জন্য ডিপ্লয়মেন্ট স্ট্যাটাস আউটপুটের উপর ভিত্তি করে, যে মেসেজ
প্রসেসরটি সমস্যা দেখিয়েছে তার সংশ্লিষ্ট UUID দিয়ে লগ-ইন করুন এবং নিম্নলিখিত ধাপগুলি অনুসরণ করুন:
- Message Processor পোর্ট 4528-এ শুনছে কিনা তা চেক করুন:
netstat -an | grep LISTEN | grep 4528
মেসেজ প্রসেসর যদি ৪৫২৮ পোর্টে না শোনে, তাহলে মেসেজ প্রসেসর রিস্টার্ট করুন:
/opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
- উপরে #১ ধাপে দেখানো ম্যানেজমেন্ট API কল ব্যবহার করে API প্রক্সি ডিপ্লয়মেন্টের স্ট্যাটাস আবার চেক করুন। কোনও সমস্যা না থাকলে, এর অর্থ হল সমস্যার সমাধান হয়ে গেছে।
- Message Processor পোর্ট 4528-এ শুনছে কিনা তা চেক করুন:
- সমস্যার সমাধান না হলে, নিম্নলিখিত ধাপগুলি অনুসরণ করে ম্যানেজমেন্ট সার্ভার থেকে পোর্ট 4528-এ মেসেজ
প্রসেসরের কানেক্টিভিটি পরীক্ষা করুন:
- Telnet উপলভ্য থাকলে, এটি ব্যবহার করুন:
telnet <MessageProcessor_IP> 4528
- Telnet উপলভ্য না থাকলে, নিম্নলিখিত উপায়ে কানেক্টিভিটি চেক করতে netcat ব্যবহার করুন:
nc -vz <MessageProcessor_IP> 4528
- আপনি যদি "কানেকশন প্রত্যাখ্যান করা হয়েছে" বা "কানেকশনের সময়সীমা শেষ হয়ে গেছে" উত্তর পান, তাহলে আপনার নেটওয়ার্ক অপারেশন টিমের সাথে যোগাযোগ করুন।
- Telnet উপলভ্য থাকলে, এটি ব্যবহার করুন:
- নিচে উল্লেখ করা ধাপগুলি অনুসরণ করে, মেসেজ প্রসেসর থেকে ম্যানেজমেন্ট সার্ভারে পোর্ট 4526-এর মাধ্যমে কানেক্টিভিটি পরীক্ষা করুন
:
- Telnet উপলভ্য থাকলে, এটি ব্যবহার করুন:
telnet <management-server-IP> 4526
- Telnet উপলভ্য না থাকলে, নিম্নলিখিত উপায়ে কানেক্টিভিটি চেক করতে netcat ব্যবহার করুন:
nc -vz <management-server-IP> 4526
- আপনি যদি "কানেকশন প্রত্যাখ্যান করা হয়েছে" বা "কানেকশন টাইম-আউট হয়ে গেছে" উত্তর পান, তাহলে আপনার নেটওয়ার্ক অপারেশন টিমের সাথে যোগাযোগ করুন।
- Telnet উপলভ্য থাকলে, এটি ব্যবহার করুন:
- আপনার নেটওয়ার্ক অপারেশন টিমের সাথে কাজ করুন এবং নিম্নলিখিত বিষয়গুলি করুন:
- ম্যানেজমেন্ট সার্ভার ও মেসেজ প্রসেসর, দুটিতেই RPC প্রোটোকল কাজ করে কিনা তা নিশ্চিত করুন।
- ম্যানেজমেন্ট সার্ভার ও মেসেজ প্রসেসরের মধ্যে সেট-আপ করা যেকোনও ফায়ারওয়াল সংক্রান্ত বিধিনিষেধ বা সুরক্ষা সংক্রান্ত নিয়ম সরিয়ে দিন যাতে ম্যানেজমেন্ট সার্ভারে পোর্ট 4526-এ কানেক্ট করা যায় এবং ম্যানেজমেন্ট সার্ভার থেকে মেসেজ প্রসেসরে পোর্ট 4528-এ কানেক্ট করা যায়।
- ডিপ্লয়মেন্ট স্ট্যাটাস আবার চেক করুন (উপরে ১ নম্বর ধাপ দেখুন)। আপনি কোনও সমস্যা দেখতে না পেলে, এর অর্থ হল সমস্যার সমাধান হয়ে গেছে।
- সমস্যার সমাধান না হলে, মেসেজ প্রসেসরে কোনও নেটওয়ার্ক সংক্রান্ত সমস্যা আছে কিনা তা চেক করুন। নেটওয়ার্ক সংক্রান্ত সমস্যা হলে, টাইম-আউট সংক্রান্ত সমস্যা দেখানো নির্দিষ্ট মেসেজ প্রসেসর রিস্টার্ট করলে (ডেপ্লয়মেন্ট স্ট্যাটাস আউটপুট
অনুযায়ী) সমস্যার সমাধান হতে পারে:
/opt/apigee/apigee-service/bin/apigee-service edge-message-processor restart
- এরপরেও সমস্যা হলে, ম্যানেজমেন্ট সার্ভার লগ চেক করে দেখুন:
(
/opt/apigee/var/log/edge-management-server/logs/system.log)।ম্যানেজমেন্ট সার্ভার লগ থেকে স্যাম্পেল কল টাইম-আউট সংক্রান্ত সমস্যা
2016-05-17 09:29:56,448 org:myorg env:prod qtp281969267-360792 ERROR DISTRIBUTION - RemoteServicesConfigEventHandler.configureServers() : exception for server with uuid e1381db7-d83b-4752-ae04-2de33f07e555 : cause = RPC Error 504: Call timed out communication error = true com.apigee.rpc.RPCException: Call timed out at com.apigee.rpc.impl.AbstractCallerImpl.handleTimeout(AbstractCallerImpl.java:64) ~[rpc-1.0.0.jar:na] at com.apigee.rpc.impl.RPCMachineImpl$OutgoingCall.handleTimeout(RPCMachineImpl.java:483) ~[rpc-1.0.0.jar:na] at com.apigee.rpc.impl.RPCMachineImpl$OutgoingCall.access$000(RPCMachineImpl.java:402) ~[rpc-1.0.0.jar:na] at com.apigee.rpc.impl.RPCMachineImpl$OutgoingCall$1.run(RPCMachineImpl.java:437) ~[rpc-1.0.0.jar:na] at io.netty.util.HashedWheelTimer$HashedWheelTimeout.expire(HashedWheelTimer.java:532) ~[netty-all-4.0.0.CR1.jar:na] at io.netty.util.HashedWheelTimer$Worker.notifyExpiredTimeouts(HashedWheelTimer.java:430) ~[netty-all-4.0.0.CR1.jar:na] at io.netty.util.HashedWheelTimer$Worker.run(HashedWheelTimer.java:371) ~[netty-all-4.0.0.CR1.jar:na] at java.lang.Thread.run(Thread.java:745) ~[na:1.7.0_79]
উপরের উদাহরণে দেখানো সমস্যার মতো কোনও সমস্যা দেখতে পেলে, ম্যানেজমেন্ট সার্ভারে RPC টাইম-আউট বাড়িয়ে দিন যাতে নেটওয়ার্কের গতি কমে গেলেও, ম্যানেজমেন্ট সার্ভারকে মেসেজ প্রসেসরের সাথে কানেক্ট করার জন্য সময় দেওয়া উচিত।
রেজোলিউশন
মনে রাখবেন: শুধুমাত্র Edge Private Cloud ব্যবহারকারীরাই নিম্নলিখিত ধাপগুলি সম্পূর্ণ করতে পারবেন। আপনি Edge পাবলিক ক্লাউডে থাকলে, Apigee Edge সহায়তা টিমের সাথে যোগাযোগ করুন।
- RPC টাইমআউট বাড়াতে নিম্নলিখিত ধাপগুলি অনুসরণ করুন:
- আগে থেকে না থাকলে, ম্যানেজমেন্ট
/opt/apigee/customer/application/management-server.propertiesসার্ভার মেশিনে ফাইল তৈরি করুন। - এই ফাইলে নিম্নলিখিত লাইন যোগ করুন:
conf_cluster_rpc.connect.timeout=<time in seconds>
ডিফল্ট RPC টাইমআউট ভ্যালু হল ১০ এবং এটি বাড়িয়ে ৪০ সেকেন্ড করার সাজেশন দেওয়া হয়। এটি এইভাবে সেট করুন:
conf_cluster_rpc.connect.timeout=40
- এই ফাইলের মালিক apigee কিনা তা নিশ্চিত করুন:
chown apigee:apigee /opt/apigee/customer/application/management-server.properties
- ম্যানেজমেন্ট সার্ভার রিস্টার্ট করুন:
/opt/apigee/apigee-service/bin/apigee-service edge-management-server restart
- আপনার একাধিক ম্যানেজমেন্ট সার্ভার থাকলে, সব ম্যানেজমেন্ট সার্ভারে উপরের ধাপগুলি রিপিট করুন।
- Edge UI-তে বা Edge ম্যানেজমেন্ট API কল ব্যবহার করে API প্রক্সি ডেপ্লয় করুন। API proxy কোনও সমস্যা ছাড়াই ডিপ্লয় করা হলে, সেটি ইঙ্গিত করে যে সমস্যার সমাধান হয়ে গেছে।
- আগে থেকে না থাকলে, ম্যানেজমেন্ট
- সমস্যার সমাধান না হলে, ম্যানেজমেন্ট সার্ভার ও মেসেজ প্রসেসর থেকে
tcpdump কমান্ড সংগ্রহ করুন। প্রতিটি সার্ভারে tcpdump
কমান্ড চালু করুন এবং তারপরে UI থেকে API প্রক্সি ডেপ্লয় করা শুরু করুন
অথবা ম্যানেজমেন্ট API ব্যবহার করুন:
- ম্যানেজমেন্ট সার্ভার থেকে নিচে উল্লেখ করা tcpdump কমান্ড রান করুন:
tcpdump -i any -s 0 host <message-processor-IP address> -w <File name>
- Message Processor থেকে নিচে উল্লেখ করা tcpdump কমান্ড রান করুন:
tcpdump -i any -s 0 host <management-server-IP address> -w <File name>
- tcpdumps বিশ্লেষণ করা এবং সমস্যাটি আরও সমাধান করার ব্যাপারে সহায়তা পেতে Apigee Edge সহায়তা টিমের সাথে যোগাযোগ করুন।
- ম্যানেজমেন্ট সার্ভার থেকে নিচে উল্লেখ করা tcpdump কমান্ড রান করুন:
লার্জ API প্রক্সি বান্ডেল
ডায়াগনসিস
- যে API প্রক্সি বান্ডেলের জন্য ডিপ্লয়মেন্ট সংক্রান্ত সমস্যা দেখা যাচ্ছে সেটির সাইজ চেক করুন।
- সাইজ যথেষ্ট বড় হলে (১০ এমবি বা তার বেশি), তাহলে Message Processor-এর API প্রক্সি অ্যাক্টিভেট করতে বেশি সময় লাগতে পারে।
- API Proxy বান্ডেলের সাইজ ১৫ এমবির বেশি হলে, API Proxy বান্ডেলের সাইজ ১৫ এমবির বেশি লিঙ্কে যান।
রেজোলিউশন
মনে রাখবেন: শুধুমাত্র Edge Private Cloud ব্যবহারকারীরাই নিম্নলিখিত ধাপগুলি সম্পূর্ণ করতে পারবেন। আপনি Edge পাবলিক ক্লাউডে থাকলে, Apigee Edge সহায়তা টিমের সাথে যোগাযোগ করুন।
ম্যানেজমেন্ট সার্ভারে RPC টাইম-আউট বাড়ান যাতে মেসেজ প্রসেসর বড় API প্রক্সি বান্ডেল অ্যাক্টিভেট করার জন্য যথেষ্ট সময় পায়। RPC টাইমআউট ভ্যালু বাড়াতে নিম্নলিখিত ধাপগুলি অনুসরণ করুন:
- ম্যানেজমেন্ট সার্ভার মেশিনে
/opt/apigee/customer/application/management-server.propertiesফাইল তৈরি করুন, যদি এটি আগে থেকে না থাকে। - এই ফাইলে নিম্নলিখিত লাইন যোগ করুন:
conf_cluster_rpc.connect.timeout=<time in seconds>
ডিফল্ট RPC টাইমআউট ভ্যালু হল ১০ এবং এটি ৪০ সেকেন্ডে বাড়ানোর জন্য সাজেস্ট করা হয়। এটি এইভাবে সেট করুন:
conf_cluster_rpc.connect.timeout=40
- এই ফাইলের মালিক apigee কিনা তা নিশ্চিত করুন:
chown apigee:apigee /opt/apigee/customer/application/management-server.properties
- ম্যানেজমেন্ট সার্ভার রিস্টার্ট করুন:
/opt/apigee/apigee-service/bin/apigee-service edge-management-server restart
- আপনার একাধিক ম্যানেজমেন্ট সার্ভার থাকলে, সব ম্যানেজমেন্ট সার্ভারে উপরের ধাপগুলি রিপিট করুন।
সমস্যার সমাধান না হলে, আরও সহায়তার জন্য Apigee Edge সহায়তা টিমের সাথে যোগাযোগ করুন।