![]() |
[شرح] : Monit لمراقبة السيرفرات
بسم الله الرحمن الرحيم الموضوع : Monit لمراقبة السيرفرات اهداء : الى زملائي واخواني في ابعاد المعلومات و الى 37 . مقدمة : مراقبة السيرفر من مهام مدير السيرفر الاساسية وهي ضرورة لابد ان يتم عملها لكي يتم ضمان عمل السيرفر وقيامه باصلاح بعض مشاكله بدون تدخل خارجي . ايضا ، مراقبة السيرفر مع وضع الحماية في البال والقيام بوضع بعض القوانين التي تادي دور المراقبة واكتشاف اي تغيير امني على تصاريح الملفات او المجلدات المهمه شيء ضروري ومهم جدا لضمان اكتشاف اي محاولة اختراق قبل تمادي تلك المحاولة . Monit برنامج رائع لمراقبة خدمات السيرفرات ، حالة السيرفر وايضا مراقبة سيرفرات اخرى واشياء اخرى عديدة ستتضح لنا من هذا الموضوع باذن الله . الحقوق : الموضوع كتب من قبلي ، علي حمد ، لفائدة المستخدم العربي ، ارجو عدم نسخه كليا او جزئيا او نقله بدون ذكر هذه الحقوق. تنبيه : مع انه تم كتابة الموضوع من قبلي وهو للفائدة العامه الا ان ابعاد المعلومات ( الشركة التي اعمل لها ) لاتقوم بتقديم اي ضمان من اي نوع لعمل البرنامج او دعم لعمل البرنامج ، الموضوع كما هو بدون اي ضمانات او اي التزامات على أبعاد المعلومات او علي انا ، علي حمد . قمت بكتابته وتغطيته من كل جوانبه للفائدة العامه ولكن ذلك لايعني اني ملزم بضمان عمل البرنامج او اقدم الدعم الفني له . الشرح خاص لتوزيعات Fedora, CentOs, Redhat . تقسيم الموضوع : الموضوع تم تقسيمه كالتالي :
أولا : تنصيب البرنامج : متطلبات عمل البرنامج : لكي يعمل البرنامج لابد من توفر البكجات التالية في السيرفر : flex , openssl-devel, byacc للتاكد من توفر هذه البكجات في السيرفر الخاص بك ، قم بتنفيذ الامر : كود PHP:
كود PHP:
CentOs 5 Redhat Enterprise Linux Server 5 Fedora 9 Fedora 7 قم بتحميل البكج المناسب لك من الروابط التالية : CentOs5 : بكج البرنامج : كود PHP:
كود PHP:
بكج البرنامج : كود PHP:
كود PHP:
بكج البرنامج : كود PHP:
كود PHP:
بكج البرنامج : كود PHP:
كود PHP:
كود PHP:
الان ، قم بتنصيب البرنامج عن طريق الامر : كود PHP:
الان ، انتهى قسم التنصيب ، نبدا في قسم اعدادالبرنامج . الاعداد : قمت بتقسيم هذه المرحلة الى قسمين :
اولا : اعداد ا لبرنامج ككل : التعديلات كلها ستكون على ملف /etc/monit.conf وسيكون هو المكان الرئيسي لحفظ الاعدادات العامة للبرنامج Global Setting :
كود PHP:
كود PHP:
كود PHP:
كود PHP:
كود PHP:
كود PHP:
كود PHP:
ماأعنيه بالاعدادات الاضافية هي كل مايمكن عمله لمراقبة شيء معين لايدخل تحت الاعدادات الاساسية للبرنامج . لتسهيل عملية كتابة اي اعداد لمراقبة شيء معين تحتاج بشكل عام الى معرفة بعض الامور الاساسية :
في هذا القسم ، ساقوم بوضع امثلة على طريقة سؤال وجواب وشرح ، الهدف من هذا القسم هو شرح طريقة كتابة الاعدادات الخاصه بالخدمات .. علما باني في اخر الموضوع قد قمت بعمل ملفات جاهزه يمكن استخدامها لسيرفرات السي بنل .. وانا باذن الله ساحاول تلبية اي طلب لاي خدمة او غرض ان شاء الله . س1: هل بامكاني مراقبة الاباتشى مثلا وفي حالة توقفه عن العمل اقوم باعادة تشغيله وارسال ايميل الى مدير السيرفر لاخباره بذلك ؟ ج1: نعم ، الاعداد او القانون الخاص بذلك كالتالي : كود PHP:
السطر الاول : قمنا بتحديد اسم العملية المراد مراقبتها وهي httpd وتحديد الملف الذي يحتوي على رقم العملية عند تشغيلها . السطر الثاني : قمنا بتحديد الامر الذي يقوم بتشغيل الخدمه . السطر الثالث : قمنا بتحديد الامر الذي يقوم بايقاف الخدمة . السطر الرابع : الشرط : ان لم تستطع الاتصال بالاي بي عن طريق البورت 80 ( بورت الخدمة ) قم باعادة التشغيل . س2: لو افترضنا ان الاباتشى توقف لمدة طويلة ، بالطبع لاتريد ان يقوم البرنامج بمتابعة اعادة تشغيل الاباتشى حتى وهو متوقف كليا لفتره طويلة ، هل من حل ؟ ج2: نعم ، تستطيع تحديد عدد المرات التي يقوم فيها البرنامج باعادة تشغيل الخدمة في فترة زمنية محدده . مثلا : المده التي يقوم البرنامج بالتحقق فيها هي 300 ثانية ( خمس دقائق ) ، فلو افترضنا اننا نريد ان يقوم البرنامج بالتوقف عن التحقق من الخدمة بعد ان يقوم بعمل 5 اعادات تشغيل لها في مدة زمنية قدرها 20 دقيقه . سنقوم بكتابة التالي في اخر الاعداد اعلاه : كود PHP:
لو كان عدد عمليات الخدمة في مثالنا ( الاباتشى ) اكثر من 300 ، قم باعادة التشغيل . لو كان استهلاك الخدمة ( في مثالنا ، الاباتشى ) اكثر من 40% من ال cpu قم باعادة التشغيل . لو كان استهلاك الخدمة ( في مثالنا ، الاباتشى ) اكثر من 500 ميجا من الميموري الخاص بالسيرفر قم باعادة التشغيل . لو كان اللود الخاص بالسيرفر ( اللود الخاص بالعشر دقائق ) اعلى من 10 باعادة تشغيل الاباتشى .؟ ج3: نعم : نقوم بكتابة الاعداد : كود PHP:
السطر الاول : اذا كان عدد العمليات الجزئية ( children ) الذين يتبعون للعملية الام ( parent) اكثر من 300 ، قم باعادة التشغيل . السطر لثالث : اذا كان استهلاك العملية من المعالج اكثر من 40 % من نسبة اشغال المعالج ، قم باعادة التشغيل . السطر الخامس : اذا كان الكمية المستهلكة من الرام لهذه العمليات كلها ( الشلدرن والبارنت ) اكثر من 500 ميجا ، قم باعادة التشغيل . السطر السابع : اذا كان الضغط على السيرفر لمدة 10 دقائق اكبر من 10 قم باعادة تشغيل الاباتشى . س4 : قد تستهلك خدمة معينة اكثر من 40% مثلا من ال cpu في خمس دقائق ، اريد تغيير الوقت ، لكي يقوم البرنامج باعادة تشغيل الخدمة ( في مثالنا الاباتشى ) ان استمرت الخدمة في استهلاك 40% من المعالج لمدة 15 دقيقه ، هل استطيع القيام بذلك ؟ ج4 : نعم : نقوم بكتابة الاعداد : كود PHP:
س5 : يوجد بعض الملفات المهمه في السيرفر التي لايمكن ان يتم تغيير تصريحها او تغيير اليوزر المالك لها او القروب او توقيع ال md5 ، ان تم تغيير اي من ذلك ، فهذا يعني خطر امني على السيرفر محتمل ، قد لايكون هناك خطر امني ، لان التوقيع سيتغير ان تم تحديث البكج المسؤول عن الملف .. لكن لفنرض اني اريد مراقبة ملف معين ( مثلا ، su ) ، هل من طريقة الى ذلك ؟ ج5 : نعم : نقوم بكتابة الاعداد او القانون : كود PHP:
السطر الاول : قمنا باخباره اننا نريد مراقبة ملف باسم su ومساره هو /bin/su . السطر الثاني : الشرط ، ان اختلف توقيع ال md5 ، قم بالتبليغ . س6: هل استطيع مراقبة حجم بارتشن معين في السيرفر بحيث ان وصل حجمه اعلى من 90% يتم ارسال تنبيه ؟ ج6: نعم : كود PHP:
السطر الاول : اخبرنا باننا نريد مراقبة ديفايس باسم backup ومساره /dev/sdb1 . السطر الثاني : الشرط : اذا كان حجم المستهلك فيه اكبر من 90 % السطر الثالث : قم بالتبليغ . س7: هل استطيع تنفيذ سكربت معين ( اتخاذ اكشن خارجي ليس من قبل البرنامج ) في حالة تحقق شرط معين ؟ مثلا : اريد ان يتم تنفيذ سكربت قمت بكتابته يقوم بجمع بعض البيانات في حالة كان اللود على السيرفر ( اللود الخاص ب 15 دقيقه ) اعلى من 10 ؟ ج7 : نعم : كود PHP:
ج8 : نعم : كود PHP:
ج9 : نعم : كود PHP:
س10 : املك سيرفر اخر واريد ان اقوم بمراقبته ، هل استطيع عمل ذلك ؟ ج10 : نعم ، ولكن ، انا انصح بشدة باستخدام برامج افضل مثل nagios او Zabbix ( على فكره ، ترى عمرو الجبالي " صديقي واخي في قسم الاستضافه في ابعاد المعلومات " يموت في البرنامج هذا ... Monit سيقوم بالواجب لعدد قليل من السيرفرات ولكن بامكانيات محدوده ... نعود للجواب : نفترض ان اسم السيرفر الخاص بك : 37.drdrm.com والاي بي الخاص به 123.456.78.90 وتريد مراقبة الخدمات التالية في ذلك السيرفر : ping , apache, ssh , ftp , smtp, dns, pop نقوم بكتابة القانون : كود PHP:
ج11: نعم : كود PHP:
انا افضل وانصح بتفعيل monit عن طريق المتصفح لاسباب كثيره اولها سهولة مشاهدة ومراقبة حالة السيرفر\السيرفرات : ان رغبنا في التفعيل نحتاج الى التعديل على ملف ال /etc/monit.conf : باضافة التالي : كود PHP:
السطر الاول : تفعيل التحكم ب monit عن طريق المتصفح ، بورت 2812 السطر الثاني والثالث : الاي بيات المسموح لها بالدخول . السطر الرابع : اسم المستخدم وكلمة المرور ، بمعنى ان اسم المستخدم هنا هو admin وكلمة المرور monit . الان ، تستطيع الدخول عن طريق اي بي السيرفر ، مثلا : http://123.123.123.12:2812 رابعا : تطبيق الاعدادات المناسبة للعمل مع cPanel مع امثلة جاهزه :
كود PHP:
عند قيامك بتفعيل monit عن طريق المتصفح ، تستطيع تنفيذ بعض الاوامر المهمه عن طريق الكوماند لاين مثل : monit status monit summary عند قيامك بالتعديل ، لاتقم باعادة التشغيل ، قم بعمل reload : monit reload ان رغبت التاكد من ان ملف الاعدادات لديك سليم قم بتنفيذ الامر : monit -t سيقوم باخبارك ان كان ملف الاعداد لديك سليم . الامثلة اعلاه خاصه بسيرفرات السي بنل ، قم بوضعها في داخل ملفات في المجلد : /etc/monit.d ويكون اسمها مثلا : apache.conf ، sshd.conf ، لاننا قمنا في ملف الاعداد العام بعمل انكلود للملفات التي تنتهي بـ .conf . المصادر : موقع الشركة الرسمي : http://www.tildeslash.com/monit/ قوقل : http://www.google.com صفحة المانيول : man monit خاتمة : الموضوع يحمل اكثر مما ذكرت ، تغطية الموضوع بتفاصيل تقنية متقدمه يعتمد على نقاش الاعضاء وتبادلهم للخبرات . طلب : الله وحده يعلم قد ايش انا اتألم في اليوم والليله ... وقد ايش اخذ الموضوع مني كجهد .. ان اعجبك الموضوع واحسست باني قد افدتك بشيء ما ، ارجو ان تردد لي : اللهم انه عبدك وبه املك فاجعل الشفاء في جسده واليقين في قلبه والنور في بصره والشكر في صدره . للجميع التحية ، علي حمد ، أبعاد المعلومات ، قسم الاستضافة . |
جزاك الله خير .. فعلاً برنامج قوي جداً
أسأل الله لك التوفيق تشآآآو |
الله يجزاك خير يابو حمد ، موضوع متعوب عليه بصراحه
والله يشفيك ويمن عليك بالصحه والعافيه ، شد حيلك |
موضوع قوي وبيستفيد منه الكثير
اللهم انه عبدك وبه املك فاجعل الشفاء في جسده واليقين في قلبه والنور في بصره والشكر في صدره . اللهم انه عبدك وبه املك فاجعل الشفاء في جسده واليقين في قلبه والنور في بصره والشكر في صدره . اللهم انه عبدك وبه املك فاجعل الشفاء في جسده واليقين في قلبه والنور في بصره والشكر في صدره . اخوك فيصل |
إقتباس:
علي حمد ، |
إقتباس:
شكرا لك على مرورك ، علي حمد ، |
إقتباس:
شكرا لك على تواجدك ، |
شرح رائع جدا وواااااااااافى
مشكور حبيب قلبى على الشرح والى الامام |
إقتباس:
حياك الله ، وشكرا لك على مرورك . علي حمد ، |
اللهم انه عبدك وبه املك فاجعل الشفاء في جسده واليقين في قلبه والنور في بصره والشكر في صدره .
أستاذنا علي حمد شرح رائع و متعوب عليه و يتضمن كل الجوانب فجزاك الله خير الجزاء على ما تقدمه لإخوانك :) أسئلة: 1. هل تقدم برامج Zabbix أو Nagios نفس ما يقدمه Monit ؟ 2. عندي نظام ديبياني --في الجهاز الشخصي طبعا :D -- و وجدت شرح لتركيب البرنامج و تفعليه للعمل من المتصفح .. هل يمكن تنفيذ جميع المهام التي ذكرتها من المتصفح .. أم لابد في أي حال من سطر الأوامر ؟ أعتذر عن الإطالة و جزاك الله كل خير يا أستاذنا :) تحياتي |
اللهم انه عبدك وبه املك فاجعل الشفاء في جسده واليقين في قلبه والنور في بصره والشكر في صدره .
سلمت يالغلا, أكثــر من رائع والبرنــامج قوي جداً .. بالتوفيق,, السكربت العــربي. |
مشكور وبارك الله فيك
|
إقتباس:
1) لامقارنه اطلاقا ، نيقوس وزابيكس للحلول المتقدمه ، مونيت لسيرفر او سيرفرين ولايقارن بهم اطلاقا . 2) نعم يمكنك ذلك ، ولكن الاعدادات لابدد ان تكون من سطر الاوارم . انا احييك على استخدام الدبيان ، ولكن ادعوك لتجربة فيدورا 9 .. لا اعتقد ان لها منافس حاليا كتوزيعه سطح مكتب . علي حمد ، |
إقتباس:
علي حمد ، |
إقتباس:
علي حمد ، |
الف شكر على هذا الجهد الطيب
|
إقتباس:
علي حمد ، |
جزاك الله خير .. فعلاً برنامج قوي جداً
أسأل الله لك التوفيق |
ج ـزاك الله خير
ويـ ع ـطيك الـ ع ـافيه |
شكرا استاذ على :) .. وكل عام وانت بخير ..
مع التحيه bad3r |
جميع الأوقات بتوقيت مكة المكرمة. الساعة الآن » 01:11 AM. |
Powered by vBulletin
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Copyright © ArabWebTalk.Com 2004-2012