এই নথিটি Apigee Edge-এর অন-প্রিমিস ডিপ্লয়মেন্ট দ্বারা সমর্থিত উপাদানগুলির নিরীক্ষণের কৌশলগুলি বর্ণনা করে।
ওভারভিউ
এজ পরিষেবাগুলির বিবরণ পাওয়ার পাশাপাশি তাদের স্থিতি পরীক্ষা করার জন্য বিভিন্ন উপায় সমর্থন করে। নিম্নলিখিত সারণীতে প্রতিটি যোগ্য পরিষেবাতে আপনি যে ধরণের চেকগুলি সম্পাদন করতে পারেন তার তালিকা রয়েছে:
Mgmt API | |||||||
সেবা | মেমরি ব্যবহার [JMX * ] | সার্ভিস চেক | ব্যবহারকারী/সংস্থা/ স্থাপনার স্থিতি | axstatus | ডাটাবেস চেক | apigee-service স্থিতি | apigee-monit ** |
ম্যানেজমেন্ট সার্ভার | |||||||
বার্তা প্রসেসর | |||||||
পোস্টগ্রেস | |||||||
Qpid | |||||||
রাউটার | |||||||
আরো তথ্য | আরো তথ্য | আরো তথ্য | আরো তথ্য | আরো তথ্য | আরো তথ্য | আরো তথ্য | |
* আপনি JMX ব্যবহার করার আগে, আপনাকে অবশ্যই এটি সক্ষম করতে হবে, যেমন JMX সক্ষম করুন -এ বর্ণিত হয়েছে। ** |
জেএমএক্স এবং ম্যানেজমেন্ট এপিআই মনিটরিং পোর্ট
প্রতিটি উপাদান বিভিন্ন পোর্টে জেএমএক্স এবং ম্যানেজমেন্ট এপিআই মনিটরিং কল সমর্থন করে। নিম্নলিখিত সারণীতে প্রতিটি ধরনের সার্ভারের জন্য JMX এবং ম্যানেজমেন্ট API পোর্ট তালিকাভুক্ত করা হয়েছে:
কম্পোনেন্ট | জেএমএক্স পোর্ট | ব্যবস্থাপনা API পোর্ট |
---|---|---|
ম্যানেজমেন্ট সার্ভার | 1099 | 8080 |
রাউটার | 1100 | 8081 |
বার্তা প্রসেসর | 1101 | 8082 |
Qpid | 1102 | 8083 |
পোস্টগ্রেস | 1103 | 8084 |
নিরীক্ষণ করতে JMX ব্যবহার করুন
ম্যানেজমেন্ট সার্ভার, মেসেজ প্রসেসর, Qpid, এবং Postgres-এর জন্য নিরীক্ষণ প্রক্রিয়া সকল JMX ব্যবহার করে। যাইহোক, জেএমএক্স শুধুমাত্র ক্যাসান্দ্রার জন্য ডিফল্টরূপে সক্ষম, এবং অন্যান্য সমস্ত এজ উপাদানগুলির জন্য ডিফল্টরূপে নিষ্ক্রিয়। তাই আপনি তাদের নিরীক্ষণ করার আগে প্রতিটি উপাদানের জন্য পৃথকভাবে JMX সক্ষম করতে হবে।
JMX প্রমাণীকরণ ডিফল্টরূপে সক্রিয় করা হয় না। আপনি সমস্ত উপাদানের জন্য JMX প্রমাণীকরণ সক্ষম করতে পারেন। ক্যাসান্দ্রার জন্য, ক্যাসান্দ্রার জন্য JMX প্রমাণীকরণ সক্ষম করার নির্দেশাবলী ব্যবহার করুন।
JMX সক্ষম করুন
জেএমএক্স শুধুমাত্র ক্যাসান্দ্রার জন্য ডিফল্টরূপে সক্ষম, এবং অন্যান্য সমস্ত এজ উপাদানগুলির জন্য ডিফল্টরূপে নিষ্ক্রিয়। এই বিভাগটি বর্ণনা করে কিভাবে অন্যান্য এজ উপাদানগুলির জন্য JMX সক্ষম করতে হয়।
JMX সক্ষম করতে:
- কম্পোনেন্টের কনফিগারেশন ফাইল এডিট করুন। এই ফাইলটি
opt/apigee/edge- component_name /bin/start
এ অবস্থিত। উত্পাদন পরিবেশে, এই কনফিগারেশন ফাইলগুলি বিভিন্ন মেশিনে থাকবে।প্রতিটি সার্ভারে নিম্নলিখিত ফাইল অবস্থান থেকে চয়ন করুন:
- ম্যানেজমেন্ট সার্ভার:
/opt/apigee/edge-management-server/bin/start
- বার্তা প্রসেসর:
/opt/apigee/edge-message-processor/bin/start
- পোস্টগ্রেস:
/opt/apigee/edge-postgres-server/bin/start
- Qpid:
/opt/apigee/edge-qpid-server/bin/start
- রাউটার:
/opt/apigee/edge-router/bin/start
উদাহরণস্বরূপ, এর সার্ভারে ম্যানেজমেন্ট সার্ভারের কনফিগারেশন ফাইলটি
/opt/apigee/edge-management-server/bin/start
এ রয়েছে। - ম্যানেজমেন্ট সার্ভার:
-
exec
লাইনে নিম্নলিখিতcom.sun.management.jmxremote
বিকল্পগুলি যোগ করুন যা উপাদানটি শুরু করে:-Dcom.sun.management.jmxremote \ -Dcom.sun.management.jmxremote.port=port_number \ -Dcom.sun.management.jmxremote.local.only=false \ -Dcom.sun.management.jmxremote.authenticate=false \ -Dcom.sun.management.jmxremote.ssl=false
যেখানে port_number হল পরিষেবার জন্য JMX পোর্ট। আপনার পরিষেবার JMX পোর্ট নম্বর পেতে, JMX এবং ম্যানেজমেন্ট API মনিটরিং পোর্টগুলি দেখুন৷
উদাহরণস্বরূপ, ম্যানেজমেন্ট সার্ভারে JMX সক্ষম করতে, ম্যানেজমেন্ট সার্ভারের কনফিগারেশন ফাইলে নিম্নলিখিতগুলি যুক্ত করুন:
exec $JAVA -classpath "$classpath" -Xms$min_mem -Xmx$max_mem $xx_opts \ -Djava.security.auth.login.config=$conf_path/jaas.config \ -Dinstallation.dir=$install_dir $sys_props -Dconf.dir=$conf_path \ -Ddata.dir=$data_dir \ -Dcom.sun.management.jmxremote \ -Dcom.sun.management.jmxremote.port=1099 \ -Dcom.sun.management.jmxremote.local.only=false \ -Dcom.sun.management.jmxremote.authenticate=false \ -Dcom.sun.management.jmxremote.ssl=false \ $* $debug_options com.apigee.kernel.MicroKernel
এই উদাহরণটি ম্যানেজমেন্ট সার্ভারের জন্য পোর্ট 1099 নির্দিষ্ট করে। পূর্বে বলা হয়েছে, প্রতিটি পরিষেবার নিজস্ব পোর্ট নম্বর রয়েছে।
কনফিগারেশন ফাইলে সম্পাদিত লাইন নিম্নলিখিত মত দেখায়:
exec $JAVA -classpath "$classpath" -Xms$min_mem -Xmx$max_mem $xx_opts -Djava.security.auth.login.config=$conf_path/jaas.config -Dinstallation.dir=$install_dir $sys_props -Dconf.dir=$conf_path -Ddata.dir=$data_dir -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=1099 -Dcom.sun.management.jmxremote.local.only=false -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false $* $debug_options com.apigee.kernel.MicroKernel
- কনফিগারেশন ফাইল সংরক্ষণ করুন।
-
restart
কমান্ড দিয়ে কম্পোনেন্ট রিস্টার্ট করুন।উদাহরণস্বরূপ, ম্যানেজমেন্ট সার্ভার পুনরায় চালু করতে, নিম্নলিখিত কমান্ডটি চালান:
/opt/apigee/apigee-service/bin/apigee-service edge-management-server restart
JMX-এর জন্য প্রমাণীকরণ ডিফল্টরূপে সক্রিয় করা হয় না। আপনি সমস্ত উপাদানের জন্য JMX প্রমাণীকরণ সক্ষম করতে পারেন, যেমন JMX প্রমাণীকরণ সক্ষম করুন । ক্যাসান্দ্রার জন্য JMX প্রমাণীকরণ সক্ষম করতে, ক্যাসান্দ্রার জন্য JMX প্রমাণীকরণ সক্ষম করুন দেখুন।
JMX প্রমাণীকরণ সক্ষম করুন
JMX প্রমাণীকরণ ডিফল্টরূপে সক্রিয় করা হয় না। আপনি সমস্ত উপাদানের জন্য JMX প্রমাণীকরণ সক্ষম করতে পারেন। ক্যাসান্দ্রার জন্য, ক্যাসান্দ্রার জন্য JMX প্রমাণীকরণ সক্ষম করার নির্দেশাবলী ব্যবহার করুন
JMX প্রমাণীকরণ সক্ষম করতে, সমস্ত নোডে নিম্নলিখিত change_jmx_auth
অ্যাকশনটি চালান:
/opt/apigee/apigee-service/bin/apigee-service component_name change_jmx_auth [options|-f config_file]
কোথায়:
- component নিম্নলিখিত একটি:
-
edge-management-server
-
edge-message-processor
-
edge-postgres-server
-
edge-qpid-server
-
edge-router
-
- options নিম্নলিখিতগুলি নির্দিষ্ট করে:
-
-u username
-
-p password
-
-e [y|n]
(সক্ষম বা নিষ্ক্রিয়)
-
- config_file একটি কনফিগারেশন ফাইলের অবস্থান নির্দিষ্ট করে যেখানে আপনি নিম্নলিখিতগুলি সংজ্ঞায়িত করেন:
-
JMX_USERNAME= username
-
JMX_ENABLED=y|n
-
JMX_PASSWORD= password
(যদি সেট না করা হয় বা-p
দিয়ে পাস না করা হয় তবে আপনাকে অনুরোধ করা হবে)
-
ব্যবহারকারীর নাম, পাসওয়ার্ড এবং সক্রিয়/অক্ষম করার জন্য আপনি কমান্ড লাইন বিকল্প বা কনফিগারেশন ফাইল ব্যবহার করতে পারেন। আপনি বিকল্পগুলির একটি সেট এবং একটি কনফিগারেশন ফাইল উভয়ই নির্দিষ্ট করবেন না।
নিম্নলিখিত উদাহরণটি কমান্ড লাইন বিকল্পগুলি ব্যবহার করে পরিচালনা সার্ভারের জন্য JMX প্রমাণীকরণ সক্ষম করে:
/opt/apigee/apigee-service/bin/apigee-service edge-management-server change_jmx_auth -u foo -p bar -e y
নিম্নলিখিত উদাহরণটি কমান্ড লাইন বিকল্পগুলির পরিবর্তে একটি কনফিগারেশন ফাইল ব্যবহার করে:
/opt/apigee/apigee-service/bin/apigee-service edge-management-server change_jmx_auth -f /tmp/my-config-file
আপনি যদি একাধিক নোডে এজ চালাচ্ছেন, একই ব্যবহারকারীর নাম এবং পাসওয়ার্ড উল্লেখ করে সমস্ত নোডে কমান্ডটি চালান।
কমান্ড লাইনে JMX প্রমাণীকরণ নিষ্ক্রিয় করতে, "-en" বিকল্পটি ব্যবহার করুন, নিম্নলিখিত উদাহরণটি দেখায়:
/opt/apigee/apigee-service/bin/apigee-service edge-management-server change_jmx_auth -e n
JConsole দিয়ে মনিটর করুন
স্বাস্থ্য পরীক্ষা এবং পরিসংখ্যান প্রক্রিয়াকরণের জন্য JConsole (একটি JMX অনুগত টুল) ব্যবহার করুন। JConsole-এর সাহায্যে, আপনি আপনার সার্ভার দ্বারা প্রকাশিত JMX পরিসংখ্যান ব্যবহার করতে পারেন এবং একটি গ্রাফিকাল ইন্টারফেসে প্রদর্শন করতে পারেন। আরও তথ্যের জন্য, JConsole ব্যবহার করা দেখুন।
JConsole JMX এর মাধ্যমে দেওয়া JMX বৈশিষ্ট্য (MBeans) নিরীক্ষণ করতে নিম্নলিখিত পরিষেবা URL ব্যবহার করে:
service:jmx:rmi:///jndi/rmi://IP_address:port_number/jmxrmi
কোথায়:
- IP_address হল সার্ভারের IP ঠিকানা যা আপনি নিরীক্ষণ করতে চান।
- port_number হল সার্ভারের JMX পোর্ট নম্বর যা আপনি নিরীক্ষণ করতে চান।
উদাহরণস্বরূপ, ম্যানেজমেন্ট সার্ভার নিরীক্ষণ করতে, নিম্নলিখিত মত একটি কমান্ড ইস্যু করুন (সার্ভারের আইপি ঠিকানা 216.3.128.12 ধরে নিলাম):
service:jmx:rmi:///jndi/rmi://216.3.128.12:1099/jmxrmi
মনে রাখবেন যে এই উদাহরণটি পোর্ট 1099 নির্দিষ্ট করে, যা ম্যানেজমেন্ট সার্ভার JMX পোর্ট। অন্যান্য পোর্টের জন্য, JMX এবং ম্যানেজমেন্ট API মনিটরিং পোর্টগুলি দেখুন।
নিম্নলিখিত সারণী জেনেরিক JMX পরিসংখ্যান দেখায়:
JMX MBeans | JMX গুণাবলী |
---|---|
স্মৃতি | HeapMemoryUsage |
নন-হেপমেমোরি ব্যবহার | |
ব্যবহার | |
ম্যানেজমেন্ট এপিআই দিয়ে মনিটর করুন
এজ-এ বেশ কয়েকটি API অন্তর্ভুক্ত রয়েছে যা আপনি আপনার সার্ভারে পরিষেবা পরীক্ষা করার পাশাপাশি আপনার ব্যবহারকারী, সংস্থা এবং স্থাপনাগুলি পরীক্ষা করতে ব্যবহার করতে পারেন। এই বিভাগে এই APIs বর্ণনা.
পরিষেবা চেক সঞ্চালন
ম্যানেজমেন্ট API আপনার পরিষেবাগুলির সাথে সমস্যাগুলি পর্যবেক্ষণ এবং নির্ণয়ের জন্য বেশ কয়েকটি শেষ পয়েন্ট প্রদান করে। এই শেষ পয়েন্ট অন্তর্ভুক্ত:
শেষবিন্দু | বর্ণনা |
---|---|
/servers/self/up | একটি পরিষেবা চলছে কিনা তা পরীক্ষা করে। এই API কলের জন্য আপনাকে প্রমাণীকরণের প্রয়োজন নেই। পরিষেবাটি চলমান থাকলে, এই শেষ পয়েন্টটি নিম্নলিখিত প্রতিক্রিয়া প্রদান করে: <ServerField> <Up>true</Up> </ServerField> যদি পরিষেবাটি চালু না হয়, তাহলে আপনি নিম্নলিখিতগুলির মতো একটি প্রতিক্রিয়া পাবেন (এটি কোন পরিষেবা এবং আপনি কীভাবে এটি পরীক্ষা করেছেন তার উপর নির্ভর করে): curl: Failed connect to localhost:port_number; Connection refused |
/servers/self | পরিষেবা সম্পর্কে তথ্য প্রদান করে, সহ:
এই API কলের জন্য আপনাকে আপনার Apigee অ্যাডমিন শংসাপত্রের সাথে প্রমাণীকরণ করতে হবে। |
এই এন্ডপয়েন্টগুলি ব্যবহার করার জন্য, নিম্নলিখিত সিনট্যাক্স ব্যবহার করে এমন কমান্ড সহ curl
এর মতো একটি ইউটিলিটি চালু করুন:
curl http://host:port_number/v1/servers/self/up -H "Accept: [application/json|application/xml]"
curl http://host:port_number/v1/servers/self -u username:password -H "Accept: [application/json|application/xml]"
কোথায়:
- host হল সার্ভারের আইপি ঠিকানা যা আপনি পরীক্ষা করতে চান। আপনি সার্ভারে লগ ইন করা থাকলে, আপনি "localhost" ব্যবহার করতে পারেন; অন্যথায়, সার্ভারের IP ঠিকানার পাশাপাশি ব্যবহারকারীর নাম এবং পাসওয়ার্ড উল্লেখ করুন।
- port_number হল ম্যানেজমেন্ট API পোর্ট যার সার্ভার আপনি পরীক্ষা করতে চান। এটি প্রতিটি ধরনের উপাদানের জন্য একটি ভিন্ন পোর্ট। উদাহরণস্বরূপ, ম্যানেজমেন্ট সার্ভারের ম্যানেজমেন্ট এপিআই পোর্ট হল 8080। ব্যবহার করার জন্য ম্যানেজমেন্ট এপিআই পোর্ট নম্বরগুলির একটি তালিকার জন্য, জেএমএক্স এবং ম্যানেজমেন্ট এপিআই মনিটরিং পোর্টগুলি দেখুন
প্রতিক্রিয়ার বিন্যাস পরিবর্তন করতে, আপনি "অ্যাপ্লিকেশন/json" বা "অ্যাপ্লিকেশন/xml" হিসাবে Accept
শিরোনামটি নির্দিষ্ট করতে পারেন।
নিম্নলিখিত উদাহরণটি লোকালহোস্টে রাউটারের স্থিতি পায় (পোর্ট 8081):
curl http://localhost:8081/v1/servers/self/up -H "Accept: application/xml"
নিম্নলিখিত উদাহরণটি 216.3.128.12 (পোর্ট 8082) এ মেসেজ প্রসেসর সম্পর্কে তথ্য পায়:
curl http://216.3.128.12:8082/v1/servers/self -u sysAdminEmail:password -H "Accept: application/xml"
ব্যবহারকারী, সংস্থা এবং স্থাপনার অবস্থা নিরীক্ষণ করুন
আপনি নিম্নলিখিত কমান্ড জারি করে ম্যানেজমেন্ট সার্ভার এবং মেসেজ প্রসেসরগুলিতে ব্যবহারকারী, সংস্থা এবং আপনার প্রক্সিগুলির স্থাপনার স্থিতি নিরীক্ষণ করতে ম্যানেজমেন্ট API ব্যবহার করতে পারেন:
curl http://host:port_number/v1/users -u sysAdminEmail:passwordcurl http://host:port_number/v1/organizations -u sysAdminEmail:password
curl http://host:port_number/v1/organizations/orgname/deployments -u sysAdminEmail:password
যেখানে port_number হয় ম্যানেজমেন্ট সার্ভারের জন্য 8080 অথবা মেসেজ প্রসেসরের জন্য 8082।
এই কলের জন্য আপনাকে আপনার সিস্টেম প্রশাসনের ব্যবহারকারীর নাম এবং পাসওয়ার্ড দিয়ে প্রমাণীকরণ করতে হবে।
সার্ভারের সকল কলের জন্য একটি "নিয়োজিত" অবস্থা ফেরত দেওয়া উচিত। এইগুলি ব্যর্থ হলে, নিম্নলিখিতগুলি করুন:
- কোনো ত্রুটির জন্য সার্ভার লগ চেক করুন. লগগুলি এখানে অবস্থিত:
- ম্যানেজমেন্ট সার্ভার:
opt/apigee/var/log/edge-management-server
- বার্তা প্রসেসর:
opt/apigee/var/log/edge-message-processor
- ম্যানেজমেন্ট সার্ভার:
- এটি সঠিকভাবে কাজ করছে কিনা তা পরীক্ষা করতে সার্ভারের বিরুদ্ধে একটি কল করুন।
- ELB থেকে সার্ভারটি সরান এবং তারপর এটি পুনরায় চালু করুন:
/opt/apigee/apigee-service/bin/apigee-service service_name restart
যেখানে service_name হল:
-
edge-management-server
-
edge-message-processor
-
apigee-service
কমান্ড দিয়ে স্থিতি পরীক্ষা করুন
আপনি যখন পরিষেবাটি চলমান সার্ভারে লগ ইন করেন তখন apigee-service
কমান্ড ব্যবহার করে আপনার এজ পরিষেবাগুলির সমস্যা সমাধান করতে পারেন৷
apigee-service
সহ একটি পরিষেবার স্থিতি পরীক্ষা করতে:
- সার্ভারে লগ ইন করুন এবং নিম্নলিখিত কমান্ডটি চালান:
/opt/apigee/apigee-service/bin/apigee-service service_name status
যেখানে service_name নিম্নলিখিতগুলির মধ্যে একটি:
- ম্যানেজমেন্ট সার্ভার:
edge-management-server
- বার্তা প্রসেসর:
edge-message-processor
- পোস্টগ্রেস:
edge-postgres-server
- Qpid:
edge-qpid-server
- রাউটার:
edge-router
যেমন:
/opt/apigee/apigee-service/bin/apigee-service edge-message-processor status
- ম্যানেজমেন্ট সার্ভার:
- পরিষেবা চালু না হলে, পরিষেবা শুরু করুন:
/opt/apigee/apigee-service/bin/apigee-service service_name start
- পরিষেবা পুনঃসূচনা করার পরে, এটি কাজ করছে কিনা তা পরীক্ষা করুন, হয় আপনার পূর্বে ব্যবহৃত
apigee-service status
কমান্ড ব্যবহার করে অথবা ম্যানেজমেন্ট API-এর সাথে মনিটরে বর্ণিত ম্যানেজমেন্ট API ব্যবহার করে।যেমন:
curl -v http://localhost:port_number/v1/servers/self/up
যেখানে port_number হল পরিষেবার জন্য ম্যানেজমেন্ট API পোর্ট ।
এই উদাহরণটি ধরে নেয় যে আপনি সার্ভারে লগ ইন করেছেন এবং হোস্টনাম হিসাবে "স্থানীয় হোস্ট" ব্যবহার করতে পারেন। ম্যানেজমেন্ট এপিআই-এর সাথে দূরবর্তীভাবে স্থিতি পরীক্ষা করতে, আপনাকে অবশ্যই সার্ভারের আইপি ঠিকানা উল্লেখ করতে হবে এবং আপনার API কলে সিস্টেম প্রশাসকের ব্যবহারকারীর নাম এবং পাসওয়ার্ড অন্তর্ভুক্ত করতে হবে।
পোস্টগ্রেস পর্যবেক্ষণ
Postgres বেশ কয়েকটি ইউটিলিটি সমর্থন করে যা আপনি এর স্থিতি পরীক্ষা করতে ব্যবহার করতে পারেন। এই ইউটিলিটিগুলি অনুসরণ করা বিভাগগুলিতে বর্ণনা করা হয়েছে।
Postgres-এ প্রতিষ্ঠান এবং পরিবেশ পরীক্ষা করুন
আপনি নিম্নলিখিত curl
কমান্ডটি জারি করে পোস্টগ্রেস সার্ভারে অনবোর্ড করা সংস্থা এবং পরিবেশের নামগুলি পরীক্ষা করতে পারেন:
curl -v http://postgres_IP:8084/v1/servers/self/organizations
সিস্টেমের সংগঠন এবং পরিবেশের নাম প্রদর্শন করা উচিত।
বিশ্লেষণ স্থিতি যাচাই করুন
আপনি নিম্নলিখিত curl
কমান্ড জারি করে Postgres এবং Qpid বিশ্লেষণ সার্ভারের স্থিতি যাচাই করতে পারেন:
curl -u userEmail:password http://host:port_number/v1/organizations/orgname/environments/envname/provisioning/axstatus
সিস্টেমটিকে সমস্ত বিশ্লেষণ সার্ভারের জন্য একটি সাফল্যের স্থিতি প্রদর্শন করা উচিত, যেমনটি নিম্নলিখিত উদাহরণটি দেখায়:
{ "environments" : [ { "components" : [ { "message" : "success at Thu Feb 28 10:27:38 CET 2013", "name" : "pg", "status" : "SUCCESS", "uuid" : "[c678d16c-7990-4a5a-ae19-a99f925fcb93]" }, { "message" : "success at Thu Feb 28 10:29:03 CET 2013", "name" : "qs", "status" : "SUCCESS", "uuid" : "[ee9f0db7-a9d3-4d21-96c5-1a15b0bf0adf]" } ], "message" : "", "name" : "prod" } ], "organization" : "acme", "status" : "SUCCESS" }
PostgreSQL ডাটাবেস
এই বিভাগে কৌশলগুলি বর্ণনা করা হয়েছে যা আপনি পোস্টগ্রেস ডাটাবেস নিরীক্ষণের জন্য বিশেষভাবে ব্যবহার করতে পারেন।
check_postgres.pl
স্ক্রিপ্ট ব্যবহার করুন
PostgreSQL ডাটাবেস নিরীক্ষণ করতে, আপনি একটি স্ট্যান্ডার্ড মনিটরিং স্ক্রিপ্ট ব্যবহার করতে পারেন, check_postgres.pl
। আরও তথ্যের জন্য, http://bucardo.org/wiki/Check_postgres দেখুন।
আপনি স্ক্রিপ্ট চালানোর আগে:
- আপনাকে অবশ্যই প্রতিটি Postgres নোডে check_postgres.pl স্ক্রিপ্ট ইনস্টল করতে হবে।
- নিশ্চিত করুন যে আপনি
perl-Time-HiRes.x86_64
ইনস্টল করেছেন, একটি পার্ল মডিউল যা উচ্চ রেজোলিউশন অ্যালার্ম, ঘুম, গেটটাইম অফ ডে এবং ইন্টারভাল টাইমার প্রয়োগ করে৷ উদাহরণস্বরূপ, আপনি নিম্নলিখিত কমান্ড ব্যবহার করে এটি ইনস্টল করতে পারেন:
yum install perl-Time-HiRes.x86_64
- CentOS 7: CentOS v7 এ check_postgres.pl ব্যবহার করার আগে,
perl-Data-Dumper.x86_64
RPM ইনস্টল করুন।
check_postgres.pl আউটপুট
check_postgres.pl
ব্যবহার করে API কলের ডিফল্ট আউটপুট Nagios সামঞ্জস্যপূর্ণ। আপনি স্ক্রিপ্ট ইনস্টল করার পরে, নিম্নলিখিত চেকগুলি করুন:
- ডাটাবেসের আকার পরীক্ষা করুন:
check_postgres.pl -H 10.176.218.202 -db apigee -u apigee -dbpass postgres -include=apigee -action database_size --warning='800 GB' --critical='900 GB'
- ডাটাবেসে আগত সংযোগের সংখ্যা পরীক্ষা করুন এবং সর্বাধিক অনুমোদিত সংযোগের সাথে তুলনা করুন:
check_postgres.pl -H 10.176.218.202 -db apigee -u apigee -dbpass postgres -action backends
- ডাটাবেস চলমান এবং উপলব্ধ কিনা তা পরীক্ষা করুন:
check_postgres.pl -H 10.176.218.202 -db apigee -u apigee -dbpass postgres -action connection
- ডিস্কের স্থান পরীক্ষা করুন:
check_postgres.pl -H 10.176.218.202 -db apigee -u apigee -dbpass postgres -action disk_space --warning='80%' --critical='90%'
- পোস্টগ্রেস নোডে অনবোর্ড করা সংস্থা এবং পরিবেশের সংখ্যা পরীক্ষা করুন:
check_postgres.pl -H 10.176.218.202 -db apigee -u apigee -dbpass postgres -action=custom_query --query="select count(*) as result from pg_tables where schemaname='analytics' and tablename like '%fact'" --warning='80' --critical='90' --valtype=integer
ডাটাবেস চেক চালান
আপনি যাচাই করতে পারেন যে পোস্টগ্রেএসকিউএল ডাটাবেসে সঠিক টেবিল তৈরি করা হয়েছে। নিম্নলিখিত কমান্ড ব্যবহার করে PostgreSQL ডাটাবেসে লগ ইন করুন:
psql -h /opt/apigee/var/run/apigee-postgresql/ -U apigee -d apigee
তারপর চালান:
\d analytics."org.env.fact"
পোস্টগ্রেস প্রক্রিয়ার স্বাস্থ্যের অবস্থা পরীক্ষা করুন
আপনি নিম্নলিখিত curl
কমান্ডটি ব্যবহার করে পোস্টগ্রেস মেশিনে API চেক করতে পারেন:
curl -v http://postgres_IP:8084/v1/servers/self/health
পোস্টগ্রেস প্রক্রিয়া সক্রিয় থাকাকালীন এই কমান্ডটি ACTIVE
অবস্থা প্রদান করে। Postgres প্রক্রিয়া চালু না হলে, এটি INACTIVE
অবস্থা ফিরিয়ে দেয়।
পোস্টগ্রেস সম্পদ
Postgres পরিষেবা নিরীক্ষণ সম্পর্কে অতিরিক্ত তথ্যের জন্য, নিম্নলিখিত দেখুন:
- http://www.postgresql.org/docs/9.0/static/monitoring.html
- http://www.postgresql.org/docs/9.0/static/diskusage.html
- http://bucardo.org/check_postgres/check_postgres.pl.html
অ্যাপাচি ক্যাসান্দ্রা
জেএমএক্স ক্যাসান্দ্রার জন্য ডিফল্টরূপে সক্রিয় থাকে এবং ক্যাসান্দ্রার দূরবর্তী জেএমএক্স অ্যাক্সেসের জন্য পাসওয়ার্ডের প্রয়োজন হয় না।
ক্যাসান্দ্রার জন্য JMX প্রমাণীকরণ সক্ষম করুন
আপনি ক্যাসান্দ্রার জন্য JMX প্রমাণীকরণ সক্ষম করতে পারেন। এটি করার পরে, আপনাকে নোডটুল ইউটিলিটিতে সমস্ত কলের জন্য একটি ব্যবহারকারীর নাম এবং পাসওয়ার্ড পাস করতে হবে।
ক্যাসান্দ্রার জন্য JMX প্রমাণীকরণ সক্ষম করতে:
-
cassandra.properties
ফাইল তৈরি এবং সম্পাদনা করুন:-
/opt/apigee/customer/application/cassandra.properties
ফাইলটি সম্পাদনা করুন। যদি ফাইলটি বিদ্যমান না থাকে তবে এটি তৈরি করুন। - ফাইলে নিম্নলিখিত যোগ করুন:
conf_cassandra-env_com.sun.management.jmxremote.authenticate=true conf_cassandra-env_com.sun.management.jmxremote.password.file=${APIGEE_ROOT}/data/apigee-cassandra/jmxremote.password conf_cassandra-env_com.sun.management.jmxremote.access.file=${APIGEE_ROOT}/data/apigee-cassandra/jmxremote.access
-
cassandra.properties
ফাইলটি সংরক্ষণ করুন। - ফাইলের মালিককে
apigee:apigee
তে পরিবর্তন করুন, যেমনটি নিম্নলিখিত উদাহরণটি দেখায়:chown apigee:apigee /opt/apigee/customer/application/cassandra.properties
টোকেন সেট করতে বৈশিষ্ট্য ফাইল ব্যবহার করার বিষয়ে আরও তথ্যের জন্য, এজ কনফিগার করার পদ্ধতি দেখুন।
-
-
jmx_auth.sh
তৈরি এবং সম্পাদনা করুন:- নিম্নলিখিত অবস্থানে একটি ফাইল তৈরি করুন যদি এটি বিদ্যমান না থাকে:
/opt/apigee/customer/application/jmx_auth.sh
- ফাইলে নিম্নলিখিত বৈশিষ্ট্য যোগ করুন:
export CASS_JMX_USERNAME=JMX_USERNAME export CASS_JMX_PASSWORD=JMX_PASSWORD
-
jmx_auth.sh
ফাইলটি সংরক্ষণ করুন। - ফাইলের উৎস:
source /opt/apigee/customer/application/jmx_auth.sh
- নিম্নলিখিত অবস্থানে একটি ফাইল তৈরি করুন যদি এটি বিদ্যমান না থাকে:
-
jmxremote.password
ফাইলটি অনুলিপি করুন এবং সম্পাদনা করুন:- আপনার
$JAVA_HOME
ডিরেক্টরি থেকে নিম্নলিখিত ফাইলটি অনুলিপি করুন/opt/apigee/data/apigee-cassandra/
:cp ${JAVA_HOME}/lib/management/jmxremote.password.template $APIGEE_ROOT/data/apigee-cassandra/jmxremote.password
-
jmxremote.password
ফাইলটি সম্পাদনা করুন এবং নিম্নলিখিত সিনট্যাক্স ব্যবহার করে আপনার JMX ব্যবহারকারীর নাম এবং পাসওয়ার্ড যোগ করুন:JMX_USERNAME JMX_PASSWORD
যেখানে JMX_USERNAME এবং JMX_PASSWORD হল JMX ব্যবহারকারীর নাম এবং পাসওয়ার্ড আপনি আগে সেট করেছেন৷
- নিশ্চিত করুন যে ফাইলটি "apigee" এর মালিকানাধীন এবং ফাইলের মোডটি 400:
chown apigee:apigee /opt/apigee/data/apigee-cassandra/jmxremote.password
chmod 400 /opt/apigee/data/apigee-cassandra/jmxremote.password
- আপনার
-
jmxremote.access
ফাইলটি অনুলিপি এবং সম্পাদনা করুন:- আপনার
$JAVA_HOME
ডিরেক্টরি থেকে নিম্নলিখিত ফাইলটি অনুলিপি করুন/opt/apigee/data/apigee-cassandra/
:cp ${JAVA_HOME}/lib/management/jmxremote.access $APIGEE_ROOT/data/apigee-cassandra/jmxremote.access
- jmxremote.access ফাইলটি সম্পাদনা করুন এবং নিম্নলিখিত ভূমিকা যোগ করুন:
JMX_USERNAME readwrite
- নিশ্চিত করুন যে ফাইলটি "apigee" এর মালিকানাধীন এবং ফাইলের মোডটি 400:
chown apigee:apigee /opt/apigee/data/apigee-cassandra/jmxremote.access
chmod 400 /opt/apigee/data/apigee-cassandra/jmxremote.access
- আপনার
- ক্যাসান্দ্রায়
configure
চালান:/opt/apigee/apigee-service/bin/apigee-service apigee-cassandra configure
- ক্যাসান্দ্রা পুনরায় চালু করুন:
/opt/apigee/apigee-service/bin/apigee-service apigee-cassandra restart
- অন্যান্য সমস্ত ক্যাসান্ড্রা নোডগুলিতে এই প্রক্রিয়াটি পুনরাবৃত্তি করুন।
JMX পাসওয়ার্ড এনক্রিপশন সক্ষম করুন
JMX পাসওয়ার্ড এনক্রিপশন সক্ষম করতে, নিম্নলিখিত পদক্ষেপগুলি করুন:
-
source/conf/casssandra-env.sh
ফাইলটি খুলুন। - ফাইলে নিম্নলিখিত লাইনগুলিকে মুক্ত করুন:
-
JVM_OPTS="$JVM_OPTS -Djava.security.auth.login.config={T}conf_cassandra-env_java.security.auth.login.config{/T}"
-
JVM_OPTS="$JVM_OPTS -Dcom.sun.management.jmxremote.login.config=ApigeeSecureFileLoginModule"
-
- কমান্ড লাইনে,
echo -n 'Secret' | openssl dgst -sha1
-
jmxremote.password
এ ব্যবহারকারীর নামের বিপরীতে পাসওয়ার্ড(গুলি) সেট করুন। - শুধুমাত্র আপডেটের পরে পড়ার জন্য ফাইল
cassandra-env.sh
পরিবর্তন করুন।
ক্যাসান্দ্রার জন্য SSL দিয়ে JMX সক্ষম করুন
SSL এর সাথে JMX সক্ষম করা ক্যাসান্দ্রার সাথে JMX-ভিত্তিক যোগাযোগের জন্য অতিরিক্ত নিরাপত্তা এবং এনক্রিপশন প্রদান করে। SSL-এর সাথে JMX সক্ষম করতে, SSL-ভিত্তিক JMX সংযোগগুলি গ্রহণ করার জন্য আপনাকে ক্যাসান্দ্রাকে একটি কী এবং একটি শংসাপত্র প্রদান করতে হবে৷ আপনাকে SSL-এর জন্য নোডটুল (এবং অন্য কোনও সরঞ্জাম যা জেএমএক্সের উপর ক্যাসান্দ্রার সাথে যোগাযোগ করে) কনফিগার করতে হবে।
SSL-সক্ষম JMX প্লেইনটেক্সট এবং এনক্রিপ্ট করা JMX পাসওয়ার্ড উভয়ই সমর্থন করে।
ক্যাসান্দ্রার জন্য SSL এর সাথে JMX সক্ষম করতে, নিম্নলিখিত পদ্ধতিটি ব্যবহার করুন:
- JMX সক্ষম করুন । প্রয়োজন হলে পাসওয়ার্ড এনক্রিপশন সক্রিয় করুন।
- ক্যাসান্দ্রার জন্য JMX প্রমাণীকরণ সক্ষম করুন । উপরে বর্ণিত হিসাবে। নিশ্চিত করুন যে nodetool কনফিগার করা ব্যবহারকারীর নাম এবং পাসওয়ার্ডের সাথে কাজ করছে।
/opt/apigee/apigee-cassandra/bin/nodetool -u <JMX_USER> -pw <JMX_PASS> ring
কীস্টোর এবং ট্রাস্টস্টোর প্রস্তুত করুন।
কীস্টোরে একটি কী এবং শংসাপত্র থাকা উচিত এবং ক্যাসান্দ্রা সার্ভার কনফিগার করতে ব্যবহৃত হয়। যদি কীস্টোরে একাধিক কী জোড়া থাকে, ক্যাসান্দ্রা SSL সক্ষম করতে প্রথম কী জোড়া ব্যবহার করে।
লক্ষ্য করুন যে কীস্টোর এবং কী-এর পাসওয়ার্ড একই হওয়া উচিত (যখন আপনি কী-টুল ব্যবহার করে কী তৈরি করেন তখন ডিফল্ট)।
- ট্রাস্টস্টোরে শুধুমাত্র শংসাপত্র থাকা উচিত এবং ক্লায়েন্টরা (এপিজি-সার্ভিস ভিত্তিক কমান্ড বা নোডটুল) JMX-এর সাথে সংযোগ করতে ব্যবহার করে।
উপরের প্রয়োজনীয়তা যাচাই করার পরে:
- কীস্টোর ফাইলটি
/opt/apigee/data/apigee-cassandra
এ রাখুন। - নিশ্চিত করুন কীস্টোর ফাইলটি শুধুমাত্র প্রবেশ করে Apigee ব্যবহারকারীর দ্বারা পাঠযোগ্য
chown apigee:apigee /opt/apigee/data/apigee-cassandra/keystore.node1 chmod 400 /opt/apigee/data/apigee-cassandra/keystore.node1
- নিম্নলিখিত পদক্ষেপগুলি করে SSL এর সাথে JMX এর জন্য Cassandra কনফিগার করুন:
- প্রবেশ করে ক্যাসান্দ্রা নোড বন্ধ করুন
apigee-service apigee-cassandra stop
-
/opt/apigee/customer/application/cassandra.properties
ফাইলটি খুলে এবং নিম্নলিখিত লাইন যোগ করে ক্যাসান্দ্রায় SSL সক্ষম করুন:conf_cassandra-env_com.sun.management.jmxremote.ssl=true
ফাইলটি
apigee:apigee
এর মালিকানাধীন হওয়া উচিত। - নিম্নরূপ ক্যাসান্দ্রায় SSL সম্পর্কিত কনফিগারেশন সক্ষম করুন।
/opt/apigee/apigee-cassandra/source/conf/cassandra-env.sh
ফাইলটি খুলুন এবং নিম্নলিখিত লাইনগুলিকে আনকমেন্ট করুন, পাথ/opt/apigee/data/apigee-cassandra/keystore.node1
এবং প্রয়োজনীয় হিসাবে কীস্টোর পাসওয়ার্ড পরিবর্তন করুন .JVM_OPTS="$JVM_OPTS -Djavax.net.ssl.keyStore=/opt/apigee/data/apigee-cassandra/keystore.node1" JVM_OPTS="$JVM_OPTS -Djavax.net.ssl.keyStorePassword=keystore-password" JVM_OPTS="$JVM_OPTS -Dcom.sun.management.jmxremote.registry.ssl=true"
নিশ্চিত করুন যে ফাইলটিapigee:apigee
এর মালিকানাধীন। - প্রবেশ করে ক্যাসান্দ্রা নোড শুরু করুন
apigee-service apigee-cassandra start
- প্রবেশ করে ক্যাসান্দ্রা নোড বন্ধ করুন
-
apigee-service
ক্যাসান্দ্রা কমান্ড কনফিগার করুন।apigee-service
কমান্ড চালানোর সময় আপনাকে নির্দিষ্ট পরিবেশের ভেরিয়েবল সেট করতে হবে, নীচেরগুলি সহ:apigee-service apigee-cassandra stop apigee-service apigee-cassandra wait_for_ready apigee-service apigee-cassandra ring apigee-service apigee-cassandra backup
JMX প্রমাণীকরণ এবং SSL-এর জন্য
apigee-service
কনফিগার করার জন্য বেশ কয়েকটি বিকল্প রয়েছে। ব্যবহারযোগ্যতা এবং আপনার নিরাপত্তা অনুশীলনের উপর ভিত্তি করে একটি বিকল্প চয়ন করুন।- বিকল্প 1 (SSL আর্গুমেন্ট ফাইলে সংরক্ষিত)
- বিকল্প 2 (পরিবেশ ভেরিয়েবলে সংরক্ষিত SSL আর্গুমেন্ট)
- বিকল্প 3 (SSL আর্গুমেন্ট সরাসরি
apigee-service
পাঠানো হয়েছে)
বিকল্প 1 (SSL আর্গুমেন্ট ফাইলে সংরক্ষিত)
নিম্নলিখিত পরিবেশ ভেরিয়েবল সেট করুন:
export CASS_JMX_USERNAME=ADMIN # Provide encrypted password here if you have setup JMX password encryption export CASS_JMX_PASSWORD=PASSWORD export CASS_JMX_SSL=Y
Apigee ব্যবহারকারীর হোম ডিরেক্টরিতে একটি ফাইল তৈরি করুন (
/opt/apigee
)।$HOME/.cassandra/nodetool-ssl.properties
ফাইলটি সম্পাদনা করুন এবং নিম্নলিখিত লাইন যোগ করুন:
-Djavax.net.ssl.trustStore=<path-to-truststore.node1> -Djavax.net.ssl.trustStorePassword=<truststore-password> -Dcom.sun.management.jmxremote.registry.ssl=true
নিশ্চিত করুন যে ট্রাস্টোর ফাইলটি Apigee ব্যবহারকারী দ্বারা পাঠযোগ্য।
নিম্নলিখিত
apigee-service
কমান্ডটি চালান। যদি এটি ত্রুটি ছাড়াই চলে তবে আপনার কনফিগারেশন সঠিক।apigee-service apigee-cassandra ring
বিকল্প 2 (পরিবেশ ভেরিয়েবলে সংরক্ষিত SSL আর্গুমেন্ট)
নিম্নলিখিত পরিবেশ ভেরিয়েবল সেট করুন:
export CASS_JMX_USERNAME=ADMIN # Provide encrypted password here if you have setup JMX password encryption export CASS_JMX_PASSWORD=PASSWORD export CASS_JMX_SSL=Y # Ensure the truststore file is accessible by Apigee user. export CASS_JMX_TRUSTSTORE=<path-to-trustore.node1> export CASS_JMX_TRUSTSTORE_PASSWORD=<truststore-password>
নিম্নলিখিত
apigee-service
কমান্ডটি চালান। যদি এটি ত্রুটি ছাড়াই চলে তবে আপনার কনফিগারেশন সঠিক।apigee-service apigee-cassandra ring
বিকল্প 3 (SSL আর্গুমেন্ট সরাসরি
apigee-service
পাঠানো হয়েছে)নিচের মত যেকোন
apigee-service
কমান্ড চালান। আপনাকে কোনো পরিবেশ ভেরিয়েবল কনফিগার করতে হবে না।CASS_JMX_USERNAME=ADMIN CASS_JMX_PASSWORD=PASSWORD CASS_JMX_SSL=Y CASS_JMX_TRUSTSTORE=<path-to-trustore.node1> CASS_JMX_TRUSTSTORE_PASSWORD=<trustore-password> /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra ring
নোডটুল সেট আপ করুন। Nodetool এর জন্য JMX পরামিতি পাস করতে হবে। নিচের কনফিগারেশন বিকল্পগুলিতে বর্ণিত হিসাবে SSL-সক্ষম JMX-এর সাথে চালানোর জন্য আপনি দুটি উপায়ে নোডটুল কনফিগার করতে পারেন:
SSL সম্পর্কিত কনফিগারেশনগুলি nodetool-এ পাস করার পদ্ধতিতে বিকল্পগুলি আলাদা। উভয় ক্ষেত্রেই, নোডটুল চালানো ব্যবহারকারীর ট্রাস্টস্টোর ফাইলে READ অনুমতি থাকা উচিত। ব্যবহারযোগ্যতা এবং আপনার নিরাপত্তা অনুশীলনের উপর ভিত্তি করে একটি উপযুক্ত বিকল্প বেছে নিন।
nodetool প্যারামিটার সম্পর্কে আরও জানতে, DataStax ডকুমেন্টেশন দেখুন।
কনফিগারেশন বিকল্প 1
নোডটুল চলমান ব্যবহারকারীর হোম ডিরেক্টরিতে একটি ফাইল তৈরি করুন।
$HOME/.cassandra/nodetool-ssl.properties
ফাইলে নিম্নলিখিত লাইন যোগ করুন:
-Djavax.net.ssl.trustStore=<path-to-truststore.node1> -Djavax.net.ssl.trustStorePassword=<truststore-password> -Dcom.sun.management.jmxremote.registry.ssl=true
উপরে উল্লিখিত ট্রাস্টস্টোর পাথ নোডটুল চলমান যেকোনো ব্যবহারকারীর দ্বারা অ্যাক্সেসযোগ্য হওয়া উচিত।
--ssl
বিকল্পের সাথেnodetool
চালান।/opt/apigee/apigee-cassandra/bin/nodetool --ssl -u <jmx-user-name> -pw <jmx-user-password> -h localhost ring
কনফিগারেশন বিকল্প 2
নীচে তালিকাভুক্ত অতিরিক্ত পরামিতি সহ একটি একক কমান্ড হিসাবে
nodetool
চালান।/opt/apigee/apigee-cassandra/bin/nodetool -Djavax.net.ssl.trustStore=<path-to-truststore.node1> -Djavax.net.ssl.trustStorePassword=<truststore-password> -Dcom.sun.management.jmxremote.registry.ssl=true -Dssl.enable=true -u <jmx-user-name> -pw <jmx-user-password> -h localhost ring
SSL কনফিগারেশন প্রত্যাবর্তন করুন
আপনি যদি উপরের পদ্ধতিতে বর্ণিত SSL কনফিগারেশনগুলিকে প্রত্যাবর্তন করতে চান তবে নিম্নলিখিত পদক্ষেপগুলি করুন:
-
apigee-cassandra
প্রবেশ করে থামুনapigee-service apigee-cassandra stop
-
/opt/apigee/customer/application/cassandra.properties
ফাইল থেকেconf_cassandra-env_com.sun.management.jmxremote.ssl=true
লাইনটি সরান। - নিম্নলিখিত লাইনগুলি
/opt/apigee/apigee-cassandra/source/conf/cassandra-env.sh
এ মন্তব্য করুন# JVM_OPTS="$JVM_OPTS -Djavax.net.ssl.keyStore=/opt/apigee/data/apigee-cassandra/keystore.node0" # JVM_OPTS="$JVM_OPTS -Djavax.net.ssl.keyStorePassword=keypass" # JVM_OPTS="$JVM_OPTS -Dcom.sun.management.jmxremote.registry.ssl=true”
- প্রবেশ করে
apigee-cassandra
শুরু করুন - পরিবেশ পরিবর্তনশীল
CASS_JMX_SSL
যদি সেট করা থাকে তা সরান।unset CASS_JMX_SSL
-
ring
,stop
,backup
ইত্যাদির মতোapigee-service
ভিত্তিক কমান্ডগুলি কাজ করছে কিনা তা পরীক্ষা করুন৷ - nodetool সহ
--ssl
সুইচ ব্যবহার করা বন্ধ করুন
apigee-service apigee-cassandra start
ক্যাসান্দ্রার জন্য JMX প্রমাণীকরণ অক্ষম করুন
ক্যাসান্দ্রার জন্য JMX প্রমাণীকরণ নিষ্ক্রিয় করতে:
-
/opt/apigee/customer/application/cassandra.properties
সম্পাদনা করুন। - ফাইলে নিম্নলিখিত লাইনটি সরান:
conf_cassandra-env_com.sun.management.jmxremote.authenticate=true
- ক্যাসান্দ্রায় কনফিগার চালান:
/opt/apigee/apigee-service/bin/apigee-service apigee-cassandra configure
- ক্যাসান্দ্রা পুনরায় চালু করুন:
/opt/apigee/apigee-service/bin/apigee-service apigee-cassandra restart
- অন্যান্য সমস্ত ক্যাসান্ড্রা নোডগুলিতে এই প্রক্রিয়াটি পুনরাবৃত্তি করুন।
JConsole ব্যবহার করুন: টাস্ক পরিসংখ্যান নিরীক্ষণ করুন
JMX এর মাধ্যমে অফার করা JMX বৈশিষ্ট্য (MBeans) নিরীক্ষণ করতে JConsole এবং নিম্নলিখিত পরিষেবা URL ব্যবহার করুন:
service:jmx:rmi:///jndi/rmi://IP_address:7199/jmxrmi
যেখানে IP_address হল Cassandra সার্ভারের IP।
ক্যাসান্দ্রা জেএমএক্স পরিসংখ্যান
JMX MBeans | JMX গুণাবলী |
---|---|
কলাম পরিবার/অ্যাপ্রেপো/পরিবেশ কলাম পরিবার/অ্যাপ্রেপো/সংস্থা ColumnFamilies/apprepo/apiproxy_revisions কলাম পরিবার/অ্যাপ্রেপো/এপিপ্রক্সি কলাম পরিবার/অডিট/অডিট ColumnFamilies/audit/audits_ref | পেন্ডিং টাস্ক |
MemtableColumns Count | |
মেমটেবল ডেটা সাইজ | |
রিডকাউন্ট | |
RecentReadLatencyMicros | |
TotalReadLatencyMicros | |
রাইট কাউন্ট | |
RecentWriteLatencyMicros | |
TotalWriteLatencyMicros | |
টোটাল ডিস্কস্পেস ব্যবহার করা হয়েছে | |
লাইভডিস্কস্পেস ব্যবহার করা হয়েছে | |
LiveSSTableCount | |
BloomFilterFalsePositives | |
RecentBloomFilterFalseRatio | |
BloomFilterFalseRatio |
ক্লাস্টার নোডগুলি পরিচালনা করতে nodetool ব্যবহার করুন
নোডটুল ইউটিলিটি হল ক্যাসান্দ্রার জন্য একটি কমান্ড লাইন ইন্টারফেস যা ক্লাস্টার নোডগুলি পরিচালনা করে। ইউটিলিটিটি /opt/apigee/apigee-cassandra/bin
এ পাওয়া যাবে।
সমস্ত ক্যাসান্দ্রা ক্লাস্টার নোডগুলিতে নিম্নলিখিত কলগুলি করা যেতে পারে:
- সাধারণ রিং তথ্য (একক ক্যাসান্ড্রা নোডের জন্যও সম্ভব): সমস্ত নোডের জন্য "আপ" এবং "সাধারণ" সন্ধান করুন।
nodetool [-u username -pw password] -h localhost ring
আপনি যদি ক্যাসান্দ্রার জন্য JMX প্রমাণীকরণ সক্ষম করেন তবেই আপনাকে আপনার ব্যবহারকারীর নাম এবং পাসওয়ার্ড পাস করতে হবে।
উপরের কমান্ডের আউটপুট নীচে দেখানো হিসাবে দেখায়:
Datacenter: dc-1 ========== Address Rack Status State Load Owns Token 192.168.124.201 ra1 Up Normal 1.67 MB 33,33% 0 192.168.124.202 ra1 Up Normal 1.68 MB 33,33% 5671...5242 192.168.124.203 ra1 Up Normal 1.67 MB 33,33% 1134...0484
- নোড সম্পর্কে সাধারণ তথ্য (নোড প্রতি কল)
nodetool [-u username -pw password] -h localhost info
উপরের কমান্ডের আউটপুট নিম্নলিখিত মত দেখায়:
ID : e2e42793-4242-4e82-bcf0-oicu812 Gossip active : true Thrift active : true Native Transport active: true Load : 273.71 KB Generation No : 1234567890 Uptime (seconds) : 687194 Heap Memory (MB) : 314.62 / 3680.00 Off Heap Memory (MB) : 0.14 Data Center : dc-1 Rack : ra-1 Exceptions : 0 Key Cache : entries 150, size 13.52 KB, capacity 100 MB, 1520781 hits, 1520923 requests, 1.000 recent hit rate, 14400 save period in seconds Row Cache : entries 0, size 0 bytes, capacity 0 bytes, 0 hits, 0 requests, NaN recent hit rate, 0 save period in seconds Counter Cache : entries 0, size 0 bytes, capacity 50 MB, 0 hits, 0 requests, NaN recent hit rate, 7200 save period in seconds Token : 0
- থ্রিফ্ট সার্ভারের স্থিতি (ক্লায়েন্ট API পরিবেশন করা)
nodetool [-u username -pw password] -h localhost statusthrift
উপরের কমান্ডের আউটপুট নিম্নলিখিত মত দেখায়:
running
- ডেটা স্ট্রিমিং অপারেশনের স্থিতি : ক্যাসান্ড্রা নোডের জন্য ট্র্যাফিক পর্যবেক্ষণ করুন:
nodetool [-u username -pw password] -h localhost netstats
উপরের কমান্ডের আউটপুট নিম্নলিখিত মত দেখায়:
Mode: NORMAL Not sending any streams. Read Repair Statistics: Attempted: 151612 Mismatch (Blocking): 0 Mismatch (Background): 0 Pool Name Active Pending Completed Dropped Commands n/a 0 0 0 Responses n/a 0 0 n/a
নোডটুল সম্পর্কে আরও তথ্যের জন্য, নোডটুল ইউটিলিটি সম্পর্কে দেখুন।
ক্যাসান্দ্রা সম্পদ
নিম্নলিখিত URL দেখুন: http://www.datastax.com/docs/1.0/operations/monitoring ।
Apache ZooKeeper
চিড়িয়াখানার স্থিতি পরীক্ষা করুন
- ZooKeeper প্রক্রিয়া চলছে তা নিশ্চিত করুন। ZooKeeper
opt/apigee/var/run/apigee-zookeeper/apigee-zookeeper.pid
করতে একটি PID ফাইল লেখে। - আপনি প্রতিটি ZooKeeper সার্ভারে 2181 এবং 3888 পোর্টে একটি TCP সংযোগ স্থাপন করতে পারেন তা নিশ্চিত করতে ZooKeeper পোর্ট পরীক্ষা করুন।
- আপনি ZooKeeper ডাটাবেস থেকে মান পড়তে পারেন তা নিশ্চিত করুন। একটি ZooKeeper ক্লায়েন্ট লাইব্রেরি (বা
/opt/apigee/apigee-zookeeper/bin/zkCli.sh
) ব্যবহার করে সংযোগ করুন এবং ডাটাবেস থেকে একটি মান পড়ুন। - স্থিতি পরীক্ষা করুন:
/opt/apigee/apigee-service/bin/apigee-service apigee-zookeeper status
ZooKeeper চার অক্ষরের শব্দ ব্যবহার করুন
নেটক্যাট (এনসি) বা টেলনেট ব্যবহার করে 2181 পোর্টে পাঠানো কমান্ডের (চার-অক্ষরের শব্দ) একটি ছোট সেটের মাধ্যমে ZooKeeper-কে পর্যবেক্ষণ করা যেতে পারে।
ZooKeeper কমান্ড সম্পর্কে আরও তথ্যের জন্য, দেখুন: Apache ZooKeeper কমান্ড রেফারেন্স ।
যেমন:
-
srvr
: সার্ভারের জন্য সম্পূর্ণ বিবরণ তালিকাভুক্ত করে। -
stat
: সার্ভার এবং সংযুক্ত ক্লায়েন্টদের জন্য সংক্ষিপ্ত বিবরণ তালিকাভুক্ত করে।
ZooKeeper পোর্টে নিম্নলিখিত কমান্ড জারি করা যেতে পারে:
- সার্ভারটি ত্রুটিহীন অবস্থায় চলছে কিনা তা পরীক্ষা করতে চার-অক্ষরের কমান্ড রুক চালান। একটি সফল প্রতিক্রিয়া "imok" ফেরত দেয়।
echo ruok | nc host 2181
রিটার্ন:
imok
- সার্ভার কর্মক্ষমতা এবং সংযুক্ত ক্লায়েন্ট পরিসংখ্যান তালিকাভুক্ত করতে চার-অক্ষরের কমান্ড,
stat
চালান:echo stat | nc host 2181
রিটার্ন:
Zookeeper version: 3.4.5-1392090, built on 09/30/2012 17:52 GMT Clients: /0:0:0:0:0:0:0:1:33467[0](queued=0,recved=1,sent=0) /192.168.124.201:42388[1](queued=0,recved=8433,sent=8433) /192.168.124.202:42185[1](queued=0,recved=1339,sent=1347) /192.168.124.204:39296[1](queued=0,recved=7688,sent=7692) Latency min/avg/max: 0/0/128 Received: 26144 Sent: 26160 Connections: 4 Outstanding: 0 Zxid: 0x2000002c2 Mode: follower Node count: 283
- যদি netcat (nc) উপলব্ধ না হয়, আপনি একটি বিকল্প হিসাবে পাইথন ব্যবহার করতে পারেন।
zookeeper.py
নামে একটি ফাইল তৈরি করুন যাতে নিম্নলিখিতগুলি রয়েছে:import time, socket, sys c = socket.socket(socket.AF_INET, socket.SOCK_STREAM) c.connect((sys.argv[1], 2181)) c.send(sys.argv[2]) time.sleep(0.1) print c.recv(512)
এখন নিম্নলিখিত পাইথন লাইনগুলি চালান:
python zookeeper.py 192.168.124.201 ruok
python zookeeper.py 192.168.124.201 stat
LDAP স্তরের পরীক্ষা
নির্দিষ্ট অনুরোধগুলি সঠিকভাবে পরিবেশিত হয়েছে কিনা তা দেখতে আপনি OpenLDAP নিরীক্ষণ করতে পারেন। অন্য কথায়, একটি নির্দিষ্ট অনুসন্ধানের জন্য পরীক্ষা করুন যা সঠিক ফলাফল প্রদান করে।
- সিস্টেম অ্যাডমিনের এন্ট্রি জিজ্ঞাসা করতে
ldapsearch
(yum install openldap-clients
) ব্যবহার করুন। এই এন্ট্রিটি সমস্ত API কল প্রমাণীকরণ করতে ব্যবহৃত হয়।ldapsearch -b "uid=admin,ou=users,ou=global,dc=apigee,dc=com" -x -W -D "cn=manager,dc=apigee,dc=com" -H ldap://localhost:10389 -LLL
তারপর আপনাকে LDAP অ্যাডমিন পাসওয়ার্ডের জন্য অনুরোধ করা হবে:
Enter LDAP Password:
পাসওয়ার্ড প্রবেশ করার পরে, আপনি ফর্মটিতে একটি প্রতিক্রিয়া দেখতে পাবেন:
dn: uid=admin,ou=users,ou=global,dc=apigee,dc=com objectClass: organizationalPerson objectClass: person objectClass: inetOrgPerson objectClass: top uid: admin cn: admin sn: admin userPassword:: e1NTSEF9bS9xbS9RbVNXSFFtUWVsU1F0c3BGL3BQMkhObFp2eDFKUytmZVE9PQ= = mail: opdk@google.com
- ম্যানেজমেন্ট সার্ভার এখনও নিম্নলিখিত কমান্ডের সাথে LDAP এর সাথে সংযুক্ত কিনা তা পরীক্ষা করুন:
curl -u userEMail:password http://localhost:8080/v1/users/ADMIN
রিটার্ন:
{ "emailId" : ADMIN, "firstName" : "admin", "lastName" : "admin" }
আপনি OpenLDAP ক্যাশেও নিরীক্ষণ করতে পারেন, যা ডিস্ক অ্যাক্সেসের সংখ্যা কমাতে সাহায্য করে এবং তাই সিস্টেমের কর্মক্ষমতা উন্নত করে। ওপেনএলডিএপি সার্ভারে ক্যাশের আকার পর্যবেক্ষণ এবং তারপর টিউন করা ডিরেক্টরি সার্ভারের কার্যকারিতাকে ব্যাপকভাবে প্রভাবিত করতে পারে। ক্যাশে সম্পর্কে তথ্য পেতে আপনি লগ ফাইলগুলি দেখতে পারেন ( opt/apigee/var/log
)।