في كثير من الأحيان، يأمل الأصدقاء الذين يشاركون في صيانة الخادم أن يكون لديهم نظام أساسي لمراقبة أداء الخادم يمكنه تقديم نظرة عامة شاملة، حتى يتمكنوا من فهم ديناميكيات تشغيل خوادم الشركة في الوقت الفعلي. يوجد حاليًا العديد من منصات مراقبة أداء الشبكة التابعة لجهات خارجية في السوق، مثل Alibaba Cloud وTencent Cloud وLinode وVultr وموفري استضافة VPS الآخرين مع خدمات مراقبة أداء الخادم الخاصة بهم.
إذا قمت بإنشاء منصة مراقبة الخادم الخاصة بك، فيمكنك تجربة أدوات تحليل سجل الخادم التي شاركناها من قبل: ngxtop وGoAccess، والتي يمكن أن تساعدنا في عرض تشوهات الخادم من منظور تحليل سجلات الخادم. يمكنك أيضًا استخدام أداة Smokeping لمراقبة حالة خط شبكة الخادم، مثل اختبار الاتصال التقليدي، والحفر، والتكرار، والالتفاف، وما إلى ذلك.
ستشارك في هذه المقالة أداتين ممتازتين لمراقبة الخادم: إحداهما هي PHP Probe-x-prober المجانية مفتوحة المصدر. هناك العديد من تحقيقات PHP على الإنترنت، لكن x-prober مناسب لـ "عشاق الجمال"؛ والآخر هو Netdata، وهي أداة لمراقبة أداء خادم Linux في الوقت الفعلي مع واجهة رائعة وأسلوب جميل. يمكن لهذين النوعين من المراقبة تحسين أداء أعمال التشغيل والصيانة بشكل كبير.
لمزيد من أداء الخادم وأوامر مراقبة الشبكة وأدوات المراقبة، إليك:
- ملخص أوامر مراقبة نظام Linux - وحدة المعالجة المركزية الرئيسية، والذاكرة، وإدخال القرص، وما إلى ذلك للعثور على اختناقات الأداء
- تثبيت وتكوين التدخين - أداة مجانية لمراقبة أداء الشبكة مفتوحة المصدر، نشر مرئي رئيسي/تابع
- أدوات تحليل سجل الخادم: ngxtop وGoAccess - المراقبة في الوقت الفعلي والإدارة المرئية للعثور بسرعة على مصدر الاستثناءات
1. مسبار PHP مجاني مفتوح المصدر: x-prober
موقع إلكتروني:
- المشروع: https://github.com/kmvan/x-prober
- التحميل: https://api.inn-studio.com/download?id=xprober
- العرض التوضيحي: https://tz.inn-studio.com/
هذا مسبار PHP يمكن أن يحل محل مسبار Yahei، وله واجهة جميلة، ووظائف بسيطة ولكنها عملية، ومناسب لاحتياجات مسبار الخادم الأساسية. (اضغط للتكبير)
يمكن لمسبار x-prober عرض حالة الخادم، وإحصائيات حركة المرور، ومعلومات الخادم، ومعلومات PHP، وامتدادات PHP، وقواعد البيانات، ونتائج أداء الخادم، وما إلى ذلك.
2. تثبيت واستخدام أداة المراقبة المباشرة لنظام التشغيل Linux Netdata
موقع إلكتروني:
- الموقع الرسمي: https://my-netdata.io/
- العرض التوضيحي: https://my-netdata.io/#demosites
- الصفحة الرئيسية: https://github.com/firehol/netdata
2.1 مقدمة لوظيفة Netdata
Netdata هي أداة لمراقبة أداء خادم Linux بواجهة رائعة جدًا، ووظائف قوية جدًا، وتثبيت بسيط للغاية. يتم تحديثها في الوقت الفعلي، وتثبيتها بنقرة واحدة، ولا تتطلب أي صيانة، وتعرض بيانات المراقبة مباشرة في المتصفح. تجمع Netdata آلاف المؤشرات في الثانية، ولكنها لا تمثل سوى 1% من نواة وحدة المعالجة المركزية الواحدة، وكمية صغيرة من الذاكرة، ولا توجد قراءة وكتابة للقرص IO على الإطلاق. كما هو موضح أدناه: (اضغط للتكبير)
يقوم Netdata بمراقبة الكثير من المحتوى، بما في ذلك بشكل رئيسي:
وحدة المعالجة المركزية (CPU): الاستخدام، والمقاطعات، والبرمجيات، والتردد، وحالة وحدة المعالجة المركزية الإجمالية ولكل مركز
الذاكرة: ذاكرة الوصول العشوائي (RAM)، واستخدام ذاكرة التبديل وذاكرة kernel، KSM (دمج نفس صفحة kernel)، NUMA
الأقراص: لكل قرص: الإدخال/الإخراج، العمليات، الأعمال المتراكمة، الاستخدام، المساحة، برنامج RAID (md)
واجهات الشبكة: لكل واجهة: عرض النطاق الترددي، الحزم، الأخطاء، القطرات
شبكة IPv4، شبكة IPv6: عرض النطاق الترددي، الحزمة، الخطأ، الجزء، TCP: الاتصال، الحزمة، الخطأ، المصافحة، UDP: الحزمة، الخطأ، البث: عرض النطاق الترددي، الحزمة، البث المتعدد: عرض النطاق الترددي، الحزمة
netfilter/iptables جدار حماية Linux: الاتصالات، وأحداث تعقب الاتصال، والأخطاء
خوادم وعملاء ملفات NFS: NFS v2، v3، v4: الإدخال/الإخراج، التخزين المؤقت، القراءة المسبقة، مكالمات RPC
خوادم الويب Apache وlighttpd: حالة التعديل (v2.2، v2.4) وإحصائيات سجل ذاكرة التخزين المؤقت لخوادم متعددة
خادم الويب Nginx: حالة كعب الروتين لخوادم متعددة
Tomcat: الوصول، المواضيع، الذاكرة المتاحة، وحدات التخزين
ملفات سجل خادم الويب: استخراج مقاييس أداء خادم الويب في الوقت الفعلي وتطبيق فحوصات صحية متعددة
قاعدة بيانات MySQL: خوادم متعددة، يعرض كل خادم: النطاق الترددي، الاستعلامات/المعالجات، الأقفال، المشكلات، عمليات tmp، الاتصالات، مقاييس binlog، سلاسل الرسائل، مقاييس innodb والمزيد
قاعدة بيانات Postgres: خوادم متعددة، يعرض كل خادم: إحصائيات لكل قاعدة بيانات (الاتصالات، ومجموعات القراءة والكتابة، والمعاملات، والأقفال)، والعمليات الخلفية، والفهارس، والجداول، والكتابة المسبقة، وكتاب الخلفية، والمزيد
قاعدة بيانات Redis: خوادم متعددة، يعرض كل خادم: العمليات، معدل الدخول، الذاكرة، المفتاح، العميل، الخادم التابع
CouchDB: القراءة/الكتابة، طرق الطلب، رموز الحالة، المهام، النسخ المتماثل، لكل ديسيبل، إلخ.
قاعدة بيانات memcached: خوادم متعددة، يعرض كل خادم: النطاق الترددي، الاتصالات، المشاريع
خوادم أسماء NSD: الاستعلامات والمناطق والبروتوكولات وأنواع الاستعلام ووسائل النقل وما إلى ذلك.
PowerDNS: الاستعلامات والإجابات والتخزين المؤقت وزمن الوصول والمزيد
خادم البريد الإلكتروني Postfix: قائمة انتظار الرسائل (الإدخال والحجم)
مصادر الطاقة غير المنقطعة NUT وAPC: الحمل والسعة وجهد البطارية ودرجة الحرارة ومؤشرات المرافق ومؤشرات الإخراج
PHP-FPM: مثيلات متعددة، كل اتصالات التقارير والطلبات والأداء
Smartd: قيمة القرص S.M.A.R.T
2.2 طريقة تثبيت Netdata
يمكن لجميع أنظمة Linux استخدام الطريقة التالية لتثبيت netdata بنقرة واحدة (لا حاجة لاستخدام Sudo):
# 基础安装 bash <(curl -Ss https://my-netdata.io/kickstart.sh) # 或者 # 安装所有的组件 bash <(curl -Ss https://my-netdata.io/kickstart.sh) all
بنية دليل Netdata هي كما يلي:
- البرنامج الخفي في /usr/sbin/netdata
- ملفات التكوين في /etc/netdata
<x2 > - ملفات الويب في /usr/share/netdata
- المكونات الإضافية < x2> في /usr/libexec/netdata
- ملفات ذاكرة التخزين المؤقت في /var/cache/netdata
< x2> - ملفات قاعدة البيانات في /var/lib/netdata
- ملفات السجل > في /var/log/netdata
- ملف pid في /var /run/netdata.pid
– قم بتدوير الملف على /etc/logrotate.d/netdata
كما هو مبين أدناه:
تشير المطالبة التالية إلى أنه تم تثبيت Netdata بنجاح.
2.3 عمليات استخدام Netdata
بعد التثبيت، استخدم ip:19999 للوصول إليه. هذه هي واجهة Netdata. يمكن ملاحظة أنها سهلة الاستخدام للغاية. اسحب الصفحة لأسفل لرؤية بيانات المراقبة المختلفة. يمكنك أيضًا النقر بسرعة على المؤشرات المقابلة على اليمين اظهرها. (اضغط للتكبير)
يتم تحديث كل بيانات المراقبة في الوقت الفعلي، ويمكنك أيضًا النقر بالماوس لعرض التفاصيل.
لدى Netdata وظيفة الاستيراد والتصدير. يمكنك تصدير بيانات المراقبة لفترة زمنية معينة، ويمكنك أيضًا استيراد بيانات النسخ الاحتياطي.
إذا قمت بتثبيت أجهزة متعددة وتريد الوصول إليها من خلال متصفح واحد، فانقر فوق my-netdata في الزاوية اليسرى العليا. ثم انقر على أيقونة الأشرطة العمودية الثلاثة.
قم بتسجيل معرف التسجيل، وعندما تصل إلى المنزل، أدخل وأضف كل معرف تسجيل في متصفحك في المنزل.
3. ملخص
ربما تكون المشكلة الأكبر في مراقبة Netdata هي مشكلة اللغة حاليًا، الموقع الرسمي باللغة الإنجليزية فقط، ولا توجد لغات أخرى، إذا كنت تشعر أن اللغة الإنجليزية لا تبدو جيدة، فيمكنك ترجمتها يدويًا بنفسك وضعت في هذا الدليل.
يشبه مسبار x-prober إلى حد ما مسبار Yahei في الوظيفة، والميزة الرئيسية هي أنه أكثر جمالًا ويمكن استخدامه كبديل للمسبار. يمكن استخدام Netdata كمراقبة للخادم على مستوى المؤسسة، ولكنها "ضائعة" قليلاً للاستخدام الشخصي.