aasaam

گروه نرم‌افزاری آسام

پشتیبانی تماس با ما +982191008212

مانیتورینگ

فرآیند مانیتورینگ چیست ؟

به طور کلی مانیتورینگ سامانه‌ای است برای رصد یک اکوسیستم که در لایه‌های مختلف، رخدادها و متریک‌های گوناگون را جمع آوری، پایش و گرد آوری می‌کند. این سامانه می‌تواند با در نظر گرفتن قواعدی از پیش تعیین شده و تحت شرایطی معین بر روی درگاه‌های گوناگون (همچون ایمیل، پیامک یا Puhs Notification) برای توسعه‌دهندگان، پشتیبانان سیستم و یا بهره‌برداران آلارم ارسال کند. برای رسیدن به این هدف پیاده‌سازی چند لایه لازم است، لایه جمع آوری‌داده، لایه پیش پردازش (Pre Process)، لایه بانک اطلاعاتی سری زمانی، لایه پس پردازش (Post Process)، و در نهایت لایه سیستم هشدار(Alerting) که با توجه به قواعد تعیین شده،‌ در صورت نیاز هشدار مورد نظر را به دریافت‌کننده تعیین شده ارسال خواهد کرد.

انواع داده‌ها در مانیتورینگ:

متریک (Metrics): داده‌ها و شاخص ‌های کمی
ثبت وقایع (Log): تمامی وقایع ثبت شده در لایه‌های مختلف نرم‌افزارها، سرویس ‌ها و سیستم‌عامل و سخت افزارهای شبکه

لایه‌های مختلف مانیتورینگ کدامند؟

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

مانیتورینگ عوامل محیطی شامل سیستم برق رسانی، دما و رطوبت محیط، وضعیت درب های فیزیکی و…
مانیتورینگ شبکه و تجهیزات شبکه
مانیتورینگ سیستم عاملهای روی سرورهای baremetal
مانیتورینگ نرم‌افزار مجازی سازی (Vmware, KVM,…)
مانیتورینگ سیستم عامل های روی سرورهای مجازی
مانیتورینگ سرویس های مختلف روی سرور – وب سرور، پایگاه‌های داده و…
مانیتورینگ متریک ها و لاگ های نرم افزارهای اختصاصی
مانتورینگ وب سرویس های داخلی سازمانی و بیرون سازمانی

چرا باید سامانه مانیتورینگ مرکزی داشت؟

پاسخ به این سوال را در سه محور می‌توان توضیح داد.

01

تعدد سرور ها و سرویس ها:

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

02

تعدد لایه‌های پایش:

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

03

سطوح متفاوت پایش و مانتیورینگ:

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

ما چگونه سیستم مانیتورینگ را پیاده‌سازی می‌کنیم؟

برای پاسخ به این سؤال می‌توان به نکات زیر اشاره کرد:

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

ما چه سرویس‌ هایی را مانیتور و پایش می‌کنیم؟

دامنه و تعدد سرویس و سامانه‌هایی که می‌توان مانیتور و پایش کرد بسیار زیاد است که در زیر به برخی از آن‌ها اشاره می‌کنیم:

لاگ مرکزی برای Access Log و Error Log های وب سرورهایی مانند Nginx, Apache و IIS
لاگ مرکزی برای Syslog سیستم عامل های لینوکسی شامل خانواده Debian و CentOS
لاگ مرکزی برای Event Log های سیستم عامل ویندوز
لاگ مرکزی برای فایروال های متخلف
لاگ مرکزی برای پایگاه‌های داده مختلف از جمله Elasticsearch, MySQL و MSSQL
مانیتورینگ سیستم عامل های ویندوزی و لینوکسی (Memory, Disks, CPU , Swap, Page File,…)
مانیتورینگ سخت افزارهای مختلف شبکه از جمله میکروتیک، فایروال، روتر، سوییچ و…
مانیتورینگ شبکه (Ping, Telnet,…)
مانیتورینگ DNS شامل Bind, powerDNS, Microsoft DNS
مانیتورینگ Active Directory

ما از چه تکنولوژی‌هایی برای پیاده‌سازی مونیتورینگ و سیستم لاگ مرکزی استفاده می‌کنیم؟

بنابر نیازمندی‌های هر مجموعه فناوری اطلاعات و طرح تهیه شده ما سعی می‌کنیم از بهترین تکنولوژی‌های روز دنیا برای طراحی و پیاده‌سازی سامانه مرکزی و یکپارچه مانیتورینگ استفاده کنیم. برخی از تکنولوژی‌های مورد استفاده به شرح زیر است:

si_influxdb Telegraf/InfluxDB
si_grafana Grafana
si_prometheus Prometheus
si_fluentd Fluent Bit
si_elasticstack Elasticstack
si_kibana Kibana
si_elasticsearch Elasticsearch
si_logstash Logstash
si_beats Beats
گروه نرم‌افزاری آسام