কীভাবে মনিট (লিনাক্স প্রসেস এবং পরিষেবাদি মনিটরিং) প্রোগ্রাম ইনস্টল এবং সেটআপ করবেন


মনিট একটি নিখরচায় ওপেন সোর্স এবং খুব দরকারী সরঞ্জাম যা ইউনিক্স/লিনাক্স ভিত্তিতে সার্ভার প্রক্রিয়া, ফাইল, ডিরেক্টরি, চেকসাম, অনুমতি, ফাইল সিস্টেম এবং অ্যাপাচি, এনগিনেক্স, মাইএসকিউএল, এফটিপি, এসএসএইচ, সেন্ডমেল ইত্যাদির মতো স্বয়ংক্রিয়ভাবে নিরীক্ষণ ও পরিচালনা করে Mon সিস্টেমগুলি এবং সিস্টেম প্রশাসকদের একটি দুর্দান্ত এবং সহায়ক নিরীক্ষণ কার্যকারিতা সরবরাহ করে।

এই মনিটটির ব্যবহারকারীর অনুকূল ওয়েব ইন্টারফেস রয়েছে যেখানে আপনি সরাসরি স্থানীয় অবস্থা দেখতে এবং স্থানীয় HTTP (এস) ওয়েব সার্ভার ব্যবহার করে বা কমান্ড লাইন ইন্টারফেসের মাধ্যমে প্রক্রিয়াগুলি সেটআপ করতে পারবেন। এর অর্থ মনিট ওয়েব ইন্টারফেস অ্যাক্সেস এবং দেখতে আপনার সিস্টেমে অ্যাপাচি বা এনগিনেক্সের মতো ওয়েব সার্ভার থাকা উচিত।

মনিতের কোনও প্রক্রিয়া চালু না থাকলে শুরু করার ক্ষমতা রয়েছে, সাড়া না দিলে একটি প্রক্রিয়া পুনরায় চালু করুন এবং উচ্চ উত্স ব্যবহার করে কোনও প্রক্রিয়া বন্ধ করুন। অতিরিক্ত হিসাবে আপনি পরিবর্তন, চেকসাম পরিবর্তন, ফাইলের আকার পরিবর্তন বা টাইমস্ট্যাম্প পরিবর্তনের জন্য ফাইল, ডিরেক্টরি এবং ফাইল সিস্টেম পর্যবেক্ষণের জন্য মনিত ব্যবহার করতে পারেন। মনিটের সাহায্যে আপনি দূরবর্তী হোস্টগুলি টিসিপি/আইপি পোর্ট, সার্ভার প্রোটোকল এবং পিং পর্যবেক্ষণ করতে পারবেন। মনিট তার নিজস্ব লগ ফাইল রাখে এবং কোনও ত্রুটিপূর্ণ ত্রুটি শর্ত এবং পুনরুদ্ধারের স্থিতি সম্পর্কে সতর্কতা রাখে।

এই নিবন্ধটি কোনও আরএইচইল, সেন্টোস, ফেডোরা, উবুন্টু, লিনাক্স মিন্ট এবং ডেবিয়ান লিনাক্স অপারেটিং সিস্টেমগুলির উপর মনিট ইনস্টলেশন এবং কনফিগারেশন সম্পর্কিত একটি সহজ গাইড বর্ণনা করার জন্য লেখা হয়েছে, তবে এটিও বৈজ্ঞানিক লিনাক্সের সাথে খুব সহজেই সামঞ্জস্য করা উচিত।

পদক্ষেপ 1: মনিট ইনস্টল করা

ডিফল্টরূপে, সিস্টেম বেস ভান্ডারগুলি থেকে মনিট সরঞ্জাম উপলব্ধ নেই, আপনার RHEL/CentOS সিস্টেমের অধীনে মনিট প্যাকেজ ইনস্টল করতে আপনাকে তৃতীয় পক্ষের এপেল সংগ্রহস্থল যুক্ত করতে এবং সক্ষম করতে হবে। একবার আপনি এপেল সংগ্রহস্থল যুক্ত হয়ে গেলে, নিম্নলিখিত yum কমান্ডটি চালিয়ে প্যাকেজ ইনস্টল করুন। উবুন্টু/ডেবিয়ান/লিনাক্স মিন্টের জন্য ব্যবহারকারীরা অ্যাপি-গেট কমান্ড ব্যবহার করে সহজেই ইনস্টল করতে পারে shown

# yum install monit
$ sudo apt-get install monit

পদক্ষেপ 2: মনিট কনফিগার করা

মনিট কনফিগার করা খুব সহজ, আসলে কনফিগারেশন ফাইলগুলি খুব সহজেই পঠনযোগ্য এবং ব্যবহারকারীদের বুঝতে সহজতর করার জন্য তৈরি করা হয়। এটি প্রতি 2 মিনিটের মধ্যে চলমান পরিষেবাগুলি নিরীক্ষণের জন্য ডিজাইন করা হয়েছে এবং লগগুলিকে "/ var/লগ/মনিট" রাখে।

মনিতের এটির ওয়েব ইন্টারফেস রয়েছে যা ওয়েব সার্ভার ব্যবহার করে 2812 পোর্টে চলে। ওয়েব ইন্টারফেস সক্ষম করতে আপনাকে মনিট কনফিগারেশন ফাইলে পরিবর্তন করতে হবে। (উবুন্টু/ডেবিয়ান/লিনাক্স মিন্ট) এর জন্য (রেডহ্যাট/সেন্টোস/ফেডোরা) এর অধীনে /etc/monit.conf এবং/etc/monit/monitrc ফাইলের মধ্যে মনিটের মূল কনফিগারেশন ফাইল। আপনার সম্পাদকের পছন্দটি ব্যবহার করে এই ফাইলটি খুলুন।

# vi /etc/monit.conf
$ sudo vi /etc/monit/monitrc

এরপরে, নিম্নলিখিত বিভাগটি নিরবিচ্ছিন্ন করুন এবং আপনার সার্ভারের আইপি ঠিকানা বা ডোমেন নাম যুক্ত করুন, যে কাউকে সংযোগ স্থাপন এবং মনিট ব্যবহারকারী এবং পাসওয়ার্ড পরিবর্তন করার অনুমতি দিন বা আপনি ডিফল্ট ব্যবহার করতে পারেন।

 set httpd port 2812 and
     use address localhost  # only accept connection from localhost
     allow localhost        # allow localhost to connect to the server and
     allow admin:monit      # require user 'admin' with password 'monit'
     allow @monit           # allow users of group 'monit' to connect (rw)
     allow @users readonly  # allow users of group 'users' to connect readonly

একবার আপনি এটি কনফিগার করে নিলে নতুন কনফিগারেশন সেটিংস পুনরায় লোড করার জন্য আপনাকে মনিট পরিষেবাটি শুরু করতে হবে।

# /etc/init.d/monit start
$ sudo /etc/init.d/monit start

এখন, আপনি “HTTP:/লোকালহস্ট: 2812” বা “http://example.com:2812” এ নেভিগেট করে মনিট ওয়েব ইন্টারফেস অ্যাক্সেস করতে পারবেন। তারপরে ব্যবহারকারীর নাম "অ্যাডমিন" এবং পাসওয়ার্ড "monit" লিখুন। আপনার নীচের মত পর্দা পাওয়া উচিত।

পদক্ষেপ 3: নিরীক্ষণ পরিষেবা যুক্ত করা

একবার মনিট ওয়েব ইন্টারফেসটি সঠিকভাবে সেটআপ হয়ে গেলে, আপনি যে প্রোগ্রামগুলি (RedHat/CentOS/Fedora) এর অধীনে /etc/monit.conf এবং/etc/monit/monitrc ফাইলের জন্য (উবুন্টু/দেবিয়ান/লিনাক্স মিন্ট) এর জন্য নিরীক্ষণ করতে চান সেগুলি যুক্ত করতে শুরু করুন at নিচে.

মনিট সম্পর্কিত কয়েকটি দরকারী কনফিগারেশন উদাহরণ নীচে দেওয়া হল, এটি কোনও পরিষেবা কীভাবে চলমান, এটি যেখানে তার পিডফাইল রাখে এবং কীভাবে কোনও পরিষেবা শুরু এবং বন্ধ করতে হবে ইত্যাদি দেখতে খুব সহায়ক হতে পারে etc.

check process httpd with pidfile /var/run/httpd.pid
group apache
start program = "/etc/init.d/httpd start"
stop program = "/etc/init.d/httpd stop"
if failed host 127.0.0.1 port 80
protocol http then restart
if 5 restarts within 5 cycles then timeout
check process apache with pidfile /run/apache2.pid
start program = "/etc/init.d/apache2 start" with timeout 60 seconds
stop program  = "/etc/init.d/apache2 stop"
check process nginx with pidfile /var/run/nginx.pid
start program = "/etc/init.d/nginx start"
stop program = "/etc/init.d/nginx stop"
check process mysqld with pidfile /var/run/mysqld/mysqld.pid
group mysql
start program = "/etc/init.d/mysqld start"
stop program = "/etc/init.d/mysqld stop"
if failed host 127.0.0.1 port 3306 then restart
if 5 restarts within 5 cycles then timeout
check process sshd with pidfile /var/run/sshd.pid
start program "/etc/init.d/sshd start"
stop program "/etc/init.d/sshd stop"
if failed host 127.0.0.1 port 22 protocol ssh then restart
if 5 restarts within 5 cycles then timeout

একবার আপনি পর্যবেক্ষণের জন্য সমস্ত প্রোগ্রাম কনফিগার করে ফেললে, ত্রুটির জন্য মনিট সিনট্যাক্স পরীক্ষা করে দেখুন। যদি কোনও ত্রুটি তাদের সমাধান করে, তবে কী ভুল হয়েছে তা নির্ধারণ করা এত কঠিন নয়। আপনি যখন "কন্ট্রোল ফাইল সিনট্যাক্স ঠিক আছে" এর মত বার্তা পান বা আপনি কোনও ত্রুটি দেখতে না পান, আপনি এগিয়ে যেতে পারেন।

# monit -t
$ sudo monit -t

সমস্ত সম্ভাব্য ত্রুটিগুলি ঠিক করার পরে, আপনি মনিট পরিষেবাটি শুরু করতে নিম্নলিখিত কমান্ডটি টাইপ করতে পারেন।

# /etc/init.d/monit restart
$ sudo /etc/init.d/monit restart

আপনি যাচাই করতে পারেন যে লগ ফাইলটি পরীক্ষা করে মনিট পরিষেবা শুরু হয়েছে।

# tail -f /var/log/monit
$ sudo tail -f /var/log/monit.log
[BDT Apr  3 03:06:04] info     : Starting monit HTTP server at [localhost:2812]
[BDT Apr  3 03:06:04] info     : monit HTTP server started
[BDT Apr  3 03:06:04] info     : 'linux-console.net' Monit started
[BDT Apr  3 03:06:04] error    : 'nginx' process is not running
[BDT Apr  3 03:06:04] info     : 'nginx' trying to restart
[BDT Apr  3 03:06:04] info     : 'nginx' start: /etc/init.d/nginx

মনিটরিংয়ের জন্য সমস্ত প্রক্রিয়া যুক্ত করার পরে এটি মনিট দেখায়।

রেফারেন্স লিংক

  1. মনিট হোম পৃষ্ঠা
  2. মনিট ডকুমেন্টেশন
  3. মনিট কনফিগারেশন উদাহরণসমূহ