نظارت بر سرور

چگونه می توان بر روی عملکرد سرور نظارت کرد؟

چگونه می توان بر روی عملکرد سرور نظارت کرد؟

برای بهینه سازی عملکرد های سرور (server performance) و جلوگیری از بروز اختلال در عملکرد کسب و کارهای آنلاین نیاز به نظارت بر روی سرور است. کار کنترل و نظارت بر عملکردهای سرور کمی پیچیده و دشوار است. به همین جهت یک سری اطلاعات برای شناسایی بهتر خطا و ارور ها در سرور قرار دارد. از این رو ابزارهایی مانند Retrace طراحی شده اند تا این پیچیدگی و پراکندگی ها را تا حد زیادی ساده تر و قابل کنترل تر کنند.

Server Monitoring چیست؟

Server Monitoring، به معنی کنترل و نظارت سرور است. همانطور که از اسمش پیداست وظیفه آن بهینه کردن عملکرد های سرور و جلوگیری از بروز هرگونه اختلال و مشکل در کسب و کار، از سمت سرور است.

Server Monitoring شامل معیارها و پارامتر های مختلفی است که برای اطمینان از عملکرد بهینه سرور باید مد نظر قرار داد. به کمک این معیارها میتوان به راحتی گلوگاه های سرور (bottlenecks) را شناسایی و مشخص کرد.

در پشت تمام سرویس های کسب و کار آنلاین مهم، معمولا چندین سرور فیزیکی یا مجازی وجود دارد. حتی ممکن است در برخی از سرور های فیزیکی چندین موتور در حال اجرا و عملیات باشند که باعث ایجاد عملکردهای متعددی در سرور شود. سرور های فیزیکی نمونه های مختلفی دارند که ممکن است بعضی از آنها سرورهای پایگاه داده (data base server)، سرورهای برنامه (application server) و یا سرورهای وب (web server) باشند.

چرا نظارت بر عملکرد سرور ها مهم است؟

نظارت بر سرور برای شناسایی مشکلات موجود در عملکردها قبل از کاربر نهایی می باشد. نظارت بر سرور باعث درک میزان استفاده از منابع سیستم سرور و برنامه ریزی بهتر ظرفیت سرور میشود. البته معیارهای موجود در نظارت سرور می تواند یک تهدید برای امنیت سایبری به حساب بیاید.

چگونه می توان بر روی عملکرد سرور، نظارت کرد؟

در فرایند وب Hosting معمولا اکثر پنل های کنترل، دارای یک سری ابزار مخصوص نظارت برای کمک به استفاده از منابع مختلف هستند.

برای داشتن یک نظارت موفق و صحیح دو نکته کلیدی وجود دارد:

1. شناسایی مناطقی که باید روی آنها تمرکز شود.

2. ایجاد یک خط پایه عملکرد.

برای نظارت و کنترل سریع تر سرور، ابزارهای مخصوصی وجود دارد که علاوه بر نظارت بر روی سرور، برنامه ها و تمام زیرساخت ها را نیز کنترل میکنند.

Stackify Retrace یکی از ابزارهای عالی محسوب میشود که دارای یک سری استراتژی های موفقیت آمیز برای نظارت بر روی سرور است. عملگر و گزینه های ابزار Stackify Retrace APM، به شما یک دید کلی و همه جانبه از پشته های سرور میدهد. پلتفرم Retrace به صورت خودکار، تمام برنامه هایی را که با پلتفرم IT شما در ارتباط هستند را آنالیز میکند. سپس حجم گسترده ای از معیارهای مبتنی بر کنترل عملکرد را به شما ارائه میدهد.

برخی از ویژگی ها و قابلیت های ابزار Retrace :

  • نظارت بر عملکرد برنامه.
  • دارای توابع مدیریت برنامه.
  • یک نوع ابزار Logging متمرکز محسوب میشود.
  • نمایش خط به خط کد های نوشته شده و متناسب ساختن آن با تصویر بزرگتر.
  • شناسایی و گزارش خطا های بزرگ و اساسی.
  • مجموعه ای از توابع برای نظارت به موقع سرور ها.
  • توابع برای نظارت هر کاربر به صورت جداگانه و شخصی.

ابزار Retrace، به شما امکان تحلیل و بررسی دقیق پشته سرور را میدهد. با این ابزار به راحتی می توانید خطا ها و نقاط ضعف را قبل از اینکه باعث اختلال در سرور شوند را پیدا و برطرف کنید. به طور کلی ابزار Retrace یک دید کلی در مورد چگونگی عملکرد سرور و برنامه های موجود در سرور را به ادمین میدهد.

نقاط کلیدی و مهم که حتما باید بر روی آنها نظارت شود

در تمام سرورها، یک سری نقاط مهم وجود دارد که حتما باید نظارت و کنترل شوند. این نقاط در تمام سرورهایی که در ویندوز یا یونیکس در حال اجرا هستند، مشترک است. برای داشتن یک نظارت موفق و مفید پیشنهاد میشود که با توجه به نوع سرور مناطق و نقاط کلیدی را پیدا و نظارت را از این مناطق شروع کنید.

وضعیت فیزیکی سرورها

منظور از سرورهای فیزیکی، سرورهایی است که برای راه اندازی یک سایت استفاده میشوند و داده ها در آن قرار میگیرند. از آنجا که امروزه حملات زیادی به سرورهای سایت میشود، نیاز است که به خوبی از این سرورها در مقابل حملات و آسیب های احتمالی، محافظت کنیم. علاوه بر نگهداری و اجرای سرورها در یک محیط امن و ایمن، مهم است که از وضعیت دما و منبع تغذیه آنها آگاه باشیم و آن را کنترل کنیم.

برای اینکه یک سرور کارآمد و سالم داشته باشیم باید دمای محیط آن را به خوبی کنترل کنیم. اگر درجه حرارت سرور به طور مداوم زیاد شود، باعث اختلال در فن و یا قسمت های دیگر سرور میشود.

همانطور که کمی قبل گفته شد، تنظیم کننده های منبع تغذیه نیاز به نظارت و کنترل دارند. از این رو باید راه های ورودی برق به سرور، ولتاژ و افت جریان برق کنترل و تنظیم شود. در صورت قطع شدن برق اصلی، باید یک منبع تغذیه بدون وقفه (UPS) تهیه کنید. تا زمانی که برق قطع است یک پشتیبان برق داشته باشید که در سرور وقفه ایجاد نشود.

واحد پردازش مرکزی CPU و حافظه

هر زمان که در عملکرد سرور مشکلی به وجود می آید، معمولا مشکل از قسمت پردازنده یا حافظه است. زمانی که از پردازنده یا cpu بیشتر از ظرفیتش کار بکشیم، در عملکرد برنامه اختلال به وجود می آید و در نتیجه با مشکل مواجه میشویم. از این رو پیشنهاد میشود که از پردازنده هایی استفاده کنید که متناسب با حجم کار شما هستند. با انتخاب درست پردازنده میتوانید به سرعت مشکلات موجود در سرور را حل کنید. هنگام انتخاب پردازنده به معیارهای اندازه گیری که مانند تعداد فرآیند CPU و درصد وقفه CPU حتما توجه کنید.

نیاز است که میزان استفاده از حافظه هر سرور کنترل و مشخص شود. تمام معیار های ذکر شده به شما کمک میکند در جریان میزان سلامتی سرور خود باشید و در صورت بروز هرگونه مشکل و اختلال فورا بتوانید آن را برطرف کنید.

مدت زمان فعالیت سرور

یک وب سایت باید به صورت 24 ساعته فعال و در دسترس کاربران باشد. مدت زمان فعال بودن یک سایت و سیستم به مدت زمان فعال بودن سرور بستگی دارد که با توجه به آن اندازه گیری میشود. گاهی اوقات ممکن است که سیستم شما از کار بیفتد و مجددا راه اندازی شود، این معیار میتواند در چنین مواقعی به شما اطلاع دهد که سیستم یا سایت شما برای چه مدتی غیر فعال شده است.

فعالیت دیسک

برای پردازش درخواست های فعال، به یک دیسک درایو با معیار های اصلی کنترل زیر نیاز است:

  • Disk busy time : درصد فعالیت دیسک را اندازه گیری می کند. اگر مقدار فعالیت دیسک زیاد باشد، به این معناست که درخواست های زیادی برای دسترسی به دیسک ارسال شده است.  یعنی این درخواست ها در حال انباشته شدن در دیسک هستند.
  • عملیات ورودی و خروجی (I / OP) : حجم و مقدار کارهای در حال انجام و انجام شده در درایو دیسک را مشخص میکند. نظارت بر این معیار به شما کمک میکند تا حجم کارها را در دیسک کنترل و تنظیم کنید.
  • خواندن یا نوشتن دیسک : مدت زمانی را که برای خواندن یا نوشتن بلوک های داده مصرف شده، اندازه گیری میکند. اگر مقدار آن کم باشد به این معنی است که دیسک عملکرد خوبی دارد.
  • طول صف دیسک : مدت زمان انجام خدمات و سرویس های موجود در صف را اندازه گیری می کند. هر چه طول صف دیسک کمتر باشد، دیسک عملکرد بهتری خواهد داشت.

نکته: کار نظارت بر عملکرد دیسک ها برای کارهایی که به صورت ورودی و خروجی ارائه میشوند، بسیار مهم است.

استفاده از فایل Page

داده هایی که استفاده نشده اند و یا غیرقابل دسترس هستند، در page فایل ذخیره می شوند. عملیاتی که مدت زمان انجام آنها به فضای رم (RAM) سیستم عامل محدود شده، برای کنترل بهتر به page فایل ارسال و ذخیره میشوند. استفاده زیاد از page فایل، باعث میشود که نیاز های سرور به خوبی تامین نشود.

یکی دیگر از معیارهای مهم، page swapping (تغییر صفحه) است. هر زمان که حافظه کاری سرور در حال اتمام باشد، به طور موقت قسمتی از فضای دیسک برای ذخیره سازی داده ها اختصاص داده میشود تا فضای بیشتری در حافظه کاری آزاد شود.

نکته : با توجه به اینکه page swapping زمان پاسخ سرور را کاهش میدهد، تا جایی که ممکن است از آن استفاده نکنید.

هماهنگی زمان

سیستم های موجود در یک شبکه مشترک که پرونده ها را به اشتراک می گذارند یا با یکدیگر ارتباط برقرار می کنند دارای فعالیت های محدود هستند. بنابراین، تصور کنید که اگر ساعت های سیستم همزمان نباشند چه اتفاقی رخ خواهد داد؟

مطمئنا میتواند نتایج فاجعه باری به همراه داشته باشد.

ساعتهای نادرست می توانند باعث رونویسی مجدد داده ها یا ایجاد تضاد در نسخه ها شوند. از این بدتر، می تواند باعث عملکرد نادرست برنامه ها شود. همیشه جبران ساعت سیستم را در برابر ساعت مرجع کنترل کنید.

Handles های استفاده شده:

Handles به منابعی اشاره می کند که یک برنامه کاربردی به آنها ارجاع داده میشود. برنامه هایی که بر اساس درخواست سرور شما اجرا می شوند و منابع را دریافت می کنند، از آنها استفاده میکنند. سپس به سیستم عامل بازگردانده می شوند.

به یاد داشته باشید که منابع موجود در یک سرور محدود هستند. نشت های مکرر دستگیره ممکن است به مرور زمان سرور را خسته کند و باعث افت عملکرد سرور شود. اگر تعداد Handles های باز به شدت یا به طور مداوم افزایش یابد، این می تواند به معنای نشت Handles باشد.

فعالیت پروسه ها

گاهی اوقات ممکن است یک برنامه بخواهد بدون ایجاد وقفه در پروسه هایی که از قبل شروع شده اند، یک سری فرایندهای جدید ایجاد و اعمال کند. تا جایی که ممکن است از چنین برنامه هایی استفاده نکنید. زیرا کار کنترل و مدیریت وظایف موجود در پروسه های مربوط به سرور شود را سخت و به سرور آسیب شدیدی وارد میکند. از این رو باید فعالیت های موجود در سرور به صورت مداوم کنترل شود.

ترافیک شبکه

نظارت بر فعالیت های شبکه، برای اندازه گیری عملکرد هر سرور بسیار مهم است. هر رابط شبکه، یک بازده از فعالیت های شبکه ارائه میدهد. با کنترل مداوم فعالیت های ورودی و خروجی کارت شبکه، می توانید خرابی های احتمالی مربوط به سخت افزار را تشخیص دهید. سپس برای مطمئن شدن از عملکرد مطلوب و صحیح سرور، میتوانید نیازهای سخت افزاری آن را برنامه ریزی کنید.

فعالیت TCP

برنامه هایی که بر مبنای ارتباطات هستند، برای برقراری ارتباط از TCP به عنوان یک پروتکل حمل و نقل استفاده می کنند.مانند سرور های HTTP ، SQL ، SMTP. هنگامی که عملکرد لایه TCP کاهش بیابد، عملکرد برنامه هم کاهش می یابد.

برای نظارت بهتر TCP معیارهای مهمی وجود دارد:

  • نرخ اتصالات و ارتباطات در سرور ، میزان کارکرد سرور را مشخص میکند.
  • زمانی که تعداد اتصالات موجود در سرور کم میشود، نشان دهنده یک مشکل یا اختلال در سرور است.
  • درصد ارتباطات و مخابره مجدد : زمانی که سرور از مشتری و کاربر پاسخ و تاییدیه دریافت نکند، به صورت مجدد ارتباط برقرار میشود.

نکته : به خاطر داشته باشید زمانی که در سرور تلاش زیادی برای انجام مخابره های مجدد صورت میگیرد، سرعت عملیات و فعالیت های سرور کاهش میابد.

Log فایل ها

Log فایل ها متداول ترین روش برای نظارت و کنترل سلامتی سرور هستند. زیرا Log فایل دارای جزئیات کاملی از خطا ها، خرابی ها و انواع ناهنجاری هایی ست که ممکن است در هر سرور رخ دهد. این فایل ها به شما کمک میکنند تا سریعا مشکلات را شناسایی و حل کنید.

در حالی که سیستم عامل ویندوز برنامه های Log فایل های سیستمی ، امنیتی و برنامه ایی را ارائه می دهد. سیستم عامل یونیکس دارای Log cron و Log فایل های سیستمی است که در فهرست var / log ذخیره شده اند. با نظارت، بررسی و هشدار به صورت دوره ای و منظم تا حد زیادی می توان از بروز هرگونه ناهنجاری و اختلال در سرور جلوگیری کرد.

 

بستن