با عرض سلام خدمت دوستان . همون طور که می دونید یکی از بحث های داغ در امر نگهداری سرور ، مدیریت صحیح و مانیتورینگ لحظه ای منابع و اتفاقات درون سرور هست . فرقی نمی کنه سرور درون یک شبکه داخل قرار گرفته باشه و یا متصل به اینترنت باشه ، فرقی نمی کنه سرور نوعی سرور مجازی (VPS) باشه و یا به صورت فیزیکی درون دیتاسنتر اجاره شده باشه ، فرقی نمی کنه منابع سرور ( مثل CPU ، RAM و … ) بروز و قوی باشد و یا قدیمی و محدود و یا اشتراکی باشد . در تمامی این حالات و در تمامی سطوح ، مانیتورینگ منابع سرور امری بدیهی و لازم است و انتظار می رود تمامی sysadmin ها درون این مبجث حرفی برای گفتن داشته باشند .
در این آموزش مطالب زیر رو دنبال خواهیم کرد :
توضیحات پیرامون برنامه
نصب برنامه بر روی سرور
اجرای برنامه در سرور
پاک کردن کامل برنامه از سرور
فیلم آموزشی از نصب و اجرای برنامه
توضیحات پیرامون برنامه :
همان طور که در قسمت قبل ( مقدمه ) گفته شد ، مانیتورینگ منابع سرور امری بدیهی و لازم است اما به صورت پیش فرض این کار کمی وقت گیر است و sysadmin باید دستورات و مراحلی را دنبال کند . به عنوان مثال برای چک کردن میزان مموری مصرفی از دستوری خاص ، میزان cpu مصرفی از دستور و یا مجموعه دستورات خاص ، مشاهده پهنای باند مصرف شده از دستوری خاص باید استفاده شود . طبیعتا این روند وقت گیر بوده و نمی تواند به صورت Real Time جوابگو باشد .
حال برنامه ای رو فرض کنید که هر 1 دقیقه این اطلاعات را به صورت جامع از سرور جمع آوری کرده و درون صفحه ای html با ظاهری خوانا بریزد . برنامه ای که به راحتی بر روی توزیع های مختلف با ورژن های مختلف نصب می شود . برنامه ای که جهت نصب نیاز به پیش نیاز های متعدد و یا ورژن خاصی از فایل های کتابخانه ای ندارد . برنامه ای که جهت نصب ، کانفیگ پیشفرض سرویس ها و در کل سرور را بهم نمی ریزد . برنامه که خود منابع سرور را درگیر نکرده و با حداقل منابع فعالیت خود را دنبال می کند . اسم این برنامه M.SER هست که در ادامه به بررسی آن می پردازیم .
لازم به ذکر است که این برنامه به صورت متن باز با لایسنس GPLv3 در داخل گیت هاب منتشر شده است . برنامه نسخه های اولیه خود را می گذراند لذا تضمین کارکرد 99درصدی برنامه تنها بر روی توزیع های Debian و CentOS می باشد.
این برنامه بر روی تمامی ورژن های دبیان 6 الی 8 و در تمامی ورژن های CentOS 6 و CentOS 7 به درستی کار کرده و به طور مستقیم در ورژن های زیر تست شده است :
CentOS 7.2.1511 minimal - 64 Bit CentOS 6.6 minimal - 64 Bit CentOS 6.3 minimal - 32 Bit Debian 8.1.0 netinstall - 64 Bit Debian 8.4.0 netinstall - 64 Bit Debian 6.0.6 netinstall - 32 Bit Debian 7.8.0 netinstall - 64 Bit
تصویری از صفحه html ساخته شده توسط برنامه :
نصب برنامه بر روی سرور :
جهت نصب برنامه ابتدا لازم است فایل های برنامه بر روی سرور دانلود شود . جهت دانلود از گیت هاب استفاده می کنیم :
[email protected]:~# wget https://github.com/e2ma3n/M.SER/archive/master.zip
حال فایل زیپ دانلود شده را از حالت فشرده خارج می کنیم :
[email protected]:~# unzip master.zip
در مرحله بعد به دایرکتوری برنامه رفته تا عملیات نصب را شروع کنیم :
[email protected]:~# cd M.SER-master/
پیشنهاد می شود قبل از هر کاری ، ابتدا فایل README مطالعه شود . برای این منظور :
[email protected]:~/M.SER-master# less README
قبل از نصب توصیه می شود پیش نیاز ها و وابستگی های برنامه چک شود تا عملکرد برنامه دچار مشکل نشود . برای این منظور :
[email protected]:~/M.SER-master# chmod +x install.sh && ./install.sh -c
نکته : اگر برنامه ی پیشنیازی بر روی سرور پیدا نشد ، آن را نصب کنید و سپس به سراغ نصب برنامه روید .
جهت نصب برنامه از سویچ i- استفاده می کنیم تا عملیات نصب آغاز گردد :
[email protected]:~/M.SER-master# ./install.sh -i
نکته : پس از اجرای فایل install.sh ، هدر برنامه چاپ شده و جهت ادامه روند نصب enter را بزنید . برای کنسل کردن روند نصب ، کافیست در همین قسمت از کلید های ctrl+c استفاده کنید .
نکته : دومین سوالی که برنامه از شما می پرسد ، آدرس قرار گیری صفحه html برنامه می باشد . برای این منظور می توانید یک دایرکتوری در داخل محل قرار گرفتن فایل های وب سرور انتخاب کنید . به عنوان مثال : var/www/html/
نکته : سومین سوالی که برنامه از شما می پرسد ، اینترفیس اصلی سرور است . توجه کنید که برنامه برای مانیتور کردن پهنای باند مصرفی نیاز به دانستن نام اینترفیس سرور دارد . پس این سوال را هم متناسب با سرور خود پاسخ دهید .
نکته : چهارمین بخشی که برنامه از شما می خواهد ، وارد کردن یک آدرس دلخواه به منظور Home Page در صفحه index.html ساخته شده توسط برنامه است . این قسمت رو متناسب با سرور و سلیقه خود تکمیل کنید .
نکته : در آخر برنامه 3 سوال با مضمون نصب بودن برنامه های M.CSS , M.MSQL , M.SAL از شما می پرسد . در صورتی که این برنامه ها را نصب بر روی سرور داشته باشید ، URL هر یک را در مراحل نصب وارد کنید تا این آدرس ها در صفحه index.html ساخته شده توسط برنامه درج شود .
نکته : اگر مراحل نصب را موفقیت آمیز طی کرده باشید ، خروجی ای مشابه با زیر باید دریافت کنید :
[+] Monitor. system events and resources [M.SER v1.0] [+] Tested on all popular linux distributions such as debian 7, debian 8, ubuntu server, CentOS 6 and CentOS 7 [+] Suggestion: Install M.CSS for monitoring and control system services (restart and stop 12 popular services such as apache and ...) [+] Suggestion: Install M.SAL for monitoring system authentication logs (such as ssh attack, ssh login and ...) [+] Suggestion: Install M.SQL for monitoring squid logs (all logs) [+] Press enter for continue or press ctrl+c for exit [+] [+] Main Directory created [+] [+] Enter web server directory. For example, /var/www/html [!] Warning: If index.html and css directory exists in your address, Please taking backup from them. [+] Enter address: /var/www/html [+] Web server directory is /mnt. Are you sure ? [y/n]: y [+] M.SER.sh Updated [+] [+] Enter main server interface. for example, eth0 [+] Enter interface: eth0 [+] Your server interface is eth0. Are you sure ? [y/n]: y [+] M.SER.sh Updated [+] [+] css Directory created in /mnt [+] [+] bootstrap.min.css copied [+] heroic-features.css copied [+] index.html copied [+] [+] Enter your home page. For example, http://OSLearn.ir [+] Enter home page: http://oslearn.ir/ [+] Your home page is http://oslearn.ir/. Are you sure ? [y/n]: y [+] /mnt/index.html Updated [+] [+] Do you have installed M.SAL ? [y/n]: y [+] Enter M.SAL address. For example, http://example.com/M.SAL/ [+] Enter M.SAL address: http://192.168.1.44/M.SAL/ [+] M.SAL address is http://192.168.1.44/M.SAL/. Are you sure ? [y/n]: y [+] /mnt/index.html Updated [+] [+] Do you have installed M.SQL ? [y/n]: y [+] Enter M.SQL address. For example, htp://example.com/M.SQL/ [+] Enter M.SQL address: http://192.168.1.44/M.SQL/ [+] M.SQL address is http://192.168.1.44/M.SQL/. Are you sure ? [y/n]: y [+] /mnt/index.html Updated [+] [+] Do you have installed M.CSS ? [y/n]: y [+] Enter M.CSS address. For example, htp://example.com/M.CSS/ [+] Enter M.CSS address: http://192.168.1.44/M.CSS/ [+] M.CSS address is http://192.168.1.44/M.CSS/. Are you sure ? [y/n]: y [+] /mnt/index.html Updated [+] [+] M.SER.sh copied [+] M.SER.sh added to crontab file [+] M.SER automatically running every 1 minute [+] README copied [+] [+] Please see README [!] Warning: You should run program as root. [+] You can view source code from /opt/M.SER_v1.0/M.SER.sh [+] Done
تمام ! نصب تمام شد . همان طور که در خروجی مراحل نصب می توان مشاهده کرد ، نصاب فایل اجرایی اصلی برنامه را به صورت خودکار درون etc/crontab/ اضافه کرده تا هر 1 دقیقه برنامه اجرا و در نتیجه فایل index.html موجود در دایرکتوری وب سرور آپدیت شود . لذا نیازی به استارت آپ کردن و یا اجرای برنامه به صورت دستی نیست .
اجرای برنامه در سرور :
همان طور که در قسمت قبل گفته شد ، فایل اجرایی برنامه درون فایل crontab اضافه گردیده است و نیازی به اجرای دستی برنامه و یا استارت آپ کردن آن نیست .
برای اطمینان از صحت عمل کرد این روند ، می توان فایل etc/crontab/ را باز کرده و به دنبال عبارت زیر گشت :
*/1 * * * * root /opt/M.SER_v1.0/M.SER.sh
همان طور که می دانید ، رول بالا به معنای اجرای فایل M.SER.sh در هر دقیقه می باشد .
اما برای استفاده از برنامه کافیست آدرس دامنه و یا آی پی سرور خودتون رو داخل یک مرورگر وارد کنید تا نتایج رو مشاهده کنید .
http://example.local/
نکته : به صورت پیش فرض ، دایرکتوری قرار گرفتن فایل های وب سرور ، var/www/html/ می باشد . اگر این آدرس را در هنگام نصب وارد کرده باشید . کافیست به url ای که در بالا اشاره شد بروید . اما اگر مراحل نصب را با دایرکتوری ای دلخواه ، به عنوان مثال var/www/html/testing/ پیش بردید . باید url خودتون رو به شکل زیر در نظر بگیرید :
http://example.local/testing/
پاک کردن کامل برنامه از سرور :
با نصب این برنامه ، هیچ تغییری در کانفیگ سرور ایجاد نخواهد شد لذا جهت پاک کردن برنامه نیازی به تنظیم کانفیگ های سرور به حالت قبل از نصب و از این جور کارها نیست . فقط کافیست مراحل زیر را انجام داده تا برنامه به طور کامل پاک شود .
دایرکتوری اول محل قرار گرفتن هسته اصلی برنامه می باشد . برای پاک کردن آن :
[email protected]:~# rm -rf /opt/M.SER_v1.0/
دایرکتوری دوم ، محل قرار گرفتن فایل های CSS می باشد . برای پاک کردن آن ها :
[email protected]:~# rm -rf /var/www/html/css ; rm -f /var/www/html/index.html
فایل اجرایی برنامه در داخل فایل crontab واقع در مسیر etc/ وجود دارد . کافیست این فایل را با یک ویرایشگر مثل nano باز کرده سپس عبارت زیر را از آخر آن پاک کنیم .
*/1 * * * * root /opt/M.SER_v1.0/M.SER.sh
فیلم آموزشی از نصب و اجرای برنامه :
اگر با مراحل نصب مشکلی داشتید و نتیجه مطلوب رو دریافت نکردید ، نگران نباشید . فیلمی از نصب تا اجرای برنامه در سرور تهیه شده است که حاوی تمام مراحل و صحبت های این آموزش می باشد . برای دانلود مستقیم این فیلم آموزشی ، می توانید از لینک زیر استفاده کنید :
http://files.oslearn.ir/download/Videos/M.SER%20v1.0%20[Monitor.%20system%20events%20and%20resources].mp4
در صورت مشاهده هرگونه مشکل در کد نویسی ، اجرای برنامه و یا مشکل در نصب و … با ایمیل [email protected] در تماس باشید .
منبع : او اس لرن دات آی آر | http://OSLearn.ir
نویسنده : E2MA3N
مطلب اضافه ، سوال و بحث پیرامون این ارسال دارید ؟ لطفا آن را در انجمن سایت مطرح کنید .
از این مطلب راضی هستید ؟ می خواهید به سایت کمک کنید ؟ رضایت خودتون رو با دونیت به ما اعلام کنید . برای دونیت روی خرید کلیک کنید . با تشکر