আপনি Apigee Edge ডকুমেন্টেশন দেখছেন।
Apigee X ডকুমেন্টেশন দেখুন। তথ্য
সমস্যার উপসর্গ
Edge Router, NGINX ব্যবহার করে প্রয়োগ করা হয়। Edge আপগ্রেড প্রসেস চলাকালীন অথবা রাউটারের কনফিগারেশন পরিবর্তন করার সময়,
আপনি NGINX কনফিগারেশন সংক্রান্ত সমস্যা দেখতে পেতে পারেন। এইসব
সমস্যা হলে, Edge সেইসব NGINX কনফিগারেশন ফাইলকে চিহ্নিত করে যেগুলি সমস্যার কারণ হয়েছে
/opt/nginx/conf.d:
-rw-r--r-- 1 apigee apigee 522 Jul 20 08:41 0-default.conf.bad -rw-r--r-- 1 apigee apigee 577 Jul 20 08:42 0-fallback.conf -rw-r--r-- 1 apigee apigee 1062 Jul 20 08:18 0-map.conf -rw-r--r-- 1 apigee apigee 1887 Jul 20 08:42 custorg_test_default.conf.bad
সমস্যার মেসেজ
আপনি কোনও সমস্যার মেসেজ দেখতে পাবেন না। তবে, খারাপ কনফিগারেশন ফাইলের কারণে আপনি হয়ত নিজের API প্রক্সি এক্সিকিউট করতে পারবেন না।
সম্ভাব্য কারণ
সাধারণত, NGINX কনফিগারেশন ফাইলকে খারাপ হিসেবে চিহ্নিত করা হয় কারণ /opt/apigee/customer/application/router.properties ফাইলে
NGINX প্রপার্টিতে
ভুল ভ্যালু সেট করা হয় অথবা ভার্চুয়াল হোস্টে ভুল পরিবর্তন করা হয়।
ডায়াগনসিস
-
/opt/nginx/conf.dডিরেক্টরিতে থাকা ফাইলের নাম থেকে .bad প্রত্যয় সরিয়ে দিন, যাতে সেগুলি .conf দিয়ে শেষ হয়।
- কেন কাজ করছে না তা নির্ধারণ করতে NGINX configtest টুল রান করান:
/opt/nginx/scripts/apigee-nginx configtest
রেজোলিউশন
- কনফিগারেশন টেস্ট যদি খারাপ কনফিগারেশন ফাইলের কারণ শনাক্ত করে, তাহলে
/opt/apigee/customer/application/router.propertiesফাইল বা ভার্চুয়াল হোস্টের নির্দিষ্ট প্রপার্টিতে প্রয়োজনীয় পরিবর্তন করে সমস্যাটি সমাধান করুন।
/opt/nginx/conf.dডিরেক্টরি সরিয়ে দিন:rm -rf /opt/nginx/conf.d
- রাউটার রিস্টার্ট করুন:
/opt/apigee/apigee-service/bin/apigee-service edge-router restart
- আপনাকে আর
/opt/nginx/conf.dডিরেক্টরিতে খারাপ কনফিগারেশন ফাইল দেখতে পাওয়ার কথা নয়।
সমস্যার সমাধান না হলে, Apigee Edge সহায়তা টিমের সাথে যোগাযোগ করুন।
NGINX কনফিগারেশন টেস্টের মাধ্যমে পাওয়া তথ্যের ভিত্তিতে কীভাবে সমস্যার সমাধান করতে হয় তা এই উদাহরণে দেখানো হয়েছে।
উদাহরণ ১: NGINX প্রপার্টির জন্য ভুল ভ্যালু সেট করা হয়েছে
- ধরা যাক, আপনি
/opt/apigee/customer/application/router.propertiesফাইলে "proxy_busy_buffers_size" প্রপার্টি আপডেট করে 128K করেছেন, যেমনটি নিচে দেখানো হয়েছে:conf_load_balancing_load.balancing.driver.proxy.busy.buffer.size=128k
এর ফলে /opt/apigee/nginx/conf.d
ডিরেক্টরিতে কনফিগারেশন ফাইল খারাপ হিসেবে চিহ্নিত করা হয়েছে।
- কেন কাজ করছে না তা জানতে NGINX configtest কমান্ড রান করান:
/opt/nginx/scripts/apigee-nginx configtest nginx: [emerg] "proxy_busy_buffers_size" must be equal to or greater than the maximum of the value of "proxy_buffer_size" and one of the "proxy_buffers" in /opt/nginx/conf/nginx.conf:47 nginx: configuration file /opt/nginx/conf/nginx.conf test failed
configtest ফলাফল থেকে বোঝা যাচ্ছে যে প্রপার্টির ভ্যালু proxy_busy_buffers_size, proxy_buffer_size-এর সমান বা তার থেকে বেশি হওয়া উচিত, কিন্তু এটি ভুল ভ্যালু দিয়ে সেট করা হয়েছে বলে মনে হচ্ছে।
0-default.confফাইলে প্রপার্টির জন্য সেট করা ভ্যালু চেক করুন: proxy_buffer_size এবং proxy_busy_buffers_size :proxy_buffer_size 512k; proxy_busy_buffers_size 128k;
-
/opt/apigee/customer/application/router.propertiesফাইলে proxy_busy_buffers_size-এর ভ্যালু আপডেট করে 512K করুন:conf_load_balancing_load.balancing.driver.proxy.busy.buffer.size=512k
/opt/nginx/conf.dফোল্ডার সরিয়ে দিন:rm -rf /opt/nginx/conf.d
- রাউটার রিস্টার্ট করুন:
/opt/apigee/apigee-service/bin/apigee-service edge-router restart
সমস্যার সমাধান করা হয়েছে এবং খারাপ কনফিগারেশন ফাইল সরিয়ে দেওয়া হয়েছে।
উদাহরণ ২: NGINX (শুধুমাত্র প্রাইভেট ক্লাউড 18.01) আপগ্রেড করার প্রসেস সম্পূর্ণ করা যায়নি
ধরা যাক, আপনি configtest রান করেছেন এবং নিম্নলিখিত উত্তরগুলি পেয়েছেন:
/apigee-nginx configtest nginx: the configuration file /opt/nginx/conf/nginx.conf syntax is ok nginx: [emerg] zero size shared memory zone "perclient" nginx: configuration file /opt/nginx/conf/nginx.conf test failed
এর অর্থ হল, প্রসেসটি NGINX-কে 1.10.x থেকে 1.12.x ভার্সনে আপগ্রেড করতে পারেনি। Edge Private Cloud-কে 18.01 ভার্সনে আপগ্রেড করা সংক্রান্ত একটি পরিচিত বাগ আছে।
এই সমস্যাটি সঠিকভাবে ডায়াগনসিস করতে (শুধুমাত্র আপনি Private Cloud 18.01-এ থাকলে), নিম্নলিখিত কাজগুলি করুন:
rpm -aq | grep apigee-nginx
এই কমান্ডটি ইনস্টল করা rpm-কে ভার্সন 1.12.x হিসেবে রিটার্ন করবে। এটি না হলে, এইসব ধাপ অনুসরণ করুন:
- এজ-রাউটার কম্পোনেন্ট বন্ধ করুন।
- এজ-রাউটার কম্পোনেন্টের ব্যাক-আপ নিন।
- apigee-nginx 1.2.x ভার্সনে আপগ্রেড করতে এই কমান্ডটি চালান:
/opt/apigee/nginx/conf.d.-এর অধীনে থাকা সব*.badফাইল মুছে দাও- এজ-রাউটার কম্পোনেন্ট রিস্টার্ট করুন।
sudo yum update apigee-nginx