افتراضيا، Zevenet تشغيل فحوصات صحية بسيطة إلى الخوادم الخلفية أو الخوادم الحقيقية في مزارع HTTP ، ولكن أحيانًا لا يكون هذا الفحص كافيًا لتحديد أن الخلفيات تعمل بشكل مناسب. لهذا السبب ، تقوم Zevenet بتنفيذ خدمة تقوم بتنفيذ وإدارة فحوصات صحية متقدمة عبر برنامج خفي يستخدم ملحقات إضافية تسمى مزرعة الجارديان.
المهمة الرئيسية لـ Farm Guardian هي العمل كأداة مراقبة متقدمة للتطبيقات ، لهذا ، يقوم Farm Guardian بقراءة تكوين المزرعة ويحصل على القائمة الخلفية ، ويساعده المكون الإضافي على التحقق من الحالة الصحية الخلفية ، يقوم Farm Guardian بتحديث الحالة الخلفية لـ المزرعة المعطاة التي تسمح أو لا تسمح لموازنة الحمل بإرسال حركة المرور إلى هذه الخلفية.
من هذا القسم ، يمكنك تكوين الاختيار Farmguardian. يمكنك رؤية قسمين العالمية و المزارع.
إعدادات العالمية
في القسم العالمي ، توجد إعدادات الفحوصات الصحية لفحص صحة Farmguardian معين ، كما هو موضح أدناه.
يمكن أن تكون حقول هذا القسم غير قابلة للتحرير إذا تم تكوين الاختبار مسبقًا في النظام ، إذا كنت ترغب في تعديل هذا الاختيار ، فيجب إنشاء فحص Farmguardian جديد يضيف نسخة param مع اسم الشيك المطلوب وتعديله.
- الاسم. تحديد اسم الشيك فارما جارديان الحالية.
- وصف المنتج. يحتوي هذا الحقل على بعض الوصف حول الشيك.
- أمر. تحقق من الأوامر والمعلمات ليتم تنفيذها بشكل منتظم مقابل كل الخلفية.
- الفاصلة. الوقت بالثواني بين دفعات التحقق من الصحة مقابل جميع النقاط الخلفية.
- قطع اتصالات. عند تمكين هذا الخيار ، يتم مسح الاتصالات الحالية للوحدة الخلفية لأسفل ، مما يؤدي إلى إعادة الاتصال الفوري إلى الخلفية المتاحة. في حالة التعطيل ، سيتم تفريغ الاتصالات الحالية دون فصل المستخدمين.
- سجلات. لتمكين أو تعطيل سجلات كل فحص صحي لـ Farm Guardian. مع تعطيل السجلات ، تظهر تغييرات حالة الواجهة الخلفية فقط في ملفات السجل.
تكوين الشيكات الصحية
يمكن العثور على المكونات الإضافية المستخدمة بواسطة Farm Guardian تحت الدليل / البيرة / ليب / nagios / الإضافات /.
تستخدم Farm Guardian مكونات إضافية لتكوين فحوصات صحية متطورة لاكتشاف ما إذا كان خادم حقيقي معين يعمل كما هو متوقع باستخدام خيارات مخصصة. هناك الكثير من الفحوصات الصحية لكل أنواع البروتوكولات أو الخدمات أو التطبيقات. يتم وصف المكونات الإضافية الأكثر أهمية أدناه.
check_ftp: هذا البرنامج المساعد اختبارات اتصالات FTP مع المضيف المحدد.
Usage: check_ftp -H host -p port [-w <warning time>] [-c <critical time>] [-s <send string>] [-e <expect string>] [-q <quit string>][-m <maximum bytes>] [-d <delay>] [-t <timeout seconds>] [-r <refuse state>] [-M <mismatch state>] [-v] [-4|-6] [-j] [-D <warn days cert expire>[,<crit days cert expire>]] [-S <use SSL>] [-E]
check_fping: سيستخدم هذا المكون الإضافي الأمر fping لإجراء اختبار ping على المضيف المحدد لإجراء فحص سريع.
Usage: check_fping <host_address> -w limit -c limit [-b size] [-n number] [-T number] [-i number]
check_http: هذا البرنامج المساعد يختبر خدمة HTTP على المضيف المحدد. ويمكنه اختبار البروتوكولات (HTTP) والبروتوكول الآمن (HTTPS) ، ومتابعة عمليات إعادة التوجيه ، والبحث عن السلاسل والتعبيرات العادية ، والتحقق من أوقات الاتصال ، والإبلاغ عن أوقات انتهاء صلاحية الشهادة ، ورموز إرجاع HTTP ، إلخ.
Usage: check_http -H <vhost> | -I <IP-address> [-u <uri>] [-p <port>] [-J <client certificate file>] [-K <private key>] [-w <warn time>] [-c <critical time>] [-t <timeout>] [-L] [-E] [-a auth] [-b proxy_auth] [-f <ok|warning|critcal|follow|sticky|stickyport>] [-e <expect>] [-d string] [-s string] [-l] [-r <regex> | -R <case-insensitive regex>] [-P string] [-m <min_pg_size>:<max_pg_size>] [-4|-6] [-N] [-M <age>] [-A string] [-k string] [-S <version>] [--sni] [-C <warn_age>[,<crit_age>]] [-T <content-type>] [-j method]
check_imap: هذا البرنامج المساعد يختبر اتصالات IMAP مع المضيف المحدد.
Usage: check_imap -H host -p port [-w <warning time>] [-c <critical time>] [-s <send string>] [-e <expect string>] [-q <quit string>][-m <maximum bytes>] [-d <delay>] [-t <timeout seconds>] [-r <refuse state>] [-M <mismatch state>] [-v] [-4|-6] [-j] [-D <warn days cert expire>[,<crit days cert expire>]] [-S <use SSL>] [-E]
check_ldap: هذا البرنامج المساعد يختبر خدمات LDAP. ويمكن اختباره مع بحث معين.
Usage: check_ldap -H <host> -b <base_dn> [-p <port>] [-a <attr>] [-D <binddn>] [-P <password>] [-w <warn_time>] [-c <crit_time>] [-t timeout] [-2|-3] [-4|-6]
check_ldaps: هذا البرنامج المساعد يختبر خدمات LDAPS. ويمكن اختباره مع بحث معين.
Usage: check_ldaps -H <host> -b <base_dn> [-p <port>] [-a <attr>] [-D <binddn>] [-P <password>] [-w <warn_time>] [-c <crit_time>] [-t timeout] [-2|-3] [-4|-6]
check_mysql: هذا البرنامج المساعد يختبر اتصالات إلى خادم MySQL.
Usage: check_mysql [-d database] [-H host] [-P port] [-s socket] [-u user] [-p password] [-S] [-l] [-a cert] [-k key] [-C ca-cert] [-D ca-dir] [-L ciphers] [-f optfile] [-g group]
check_mysql_query: هذا البرنامج المساعد يتحقق نتيجة استعلام ضد مستويات العتبة.
Usage: check_mysql_query -q SQL_query [-w warn] [-c crit] [-H host] [-P port] [-s socket] [-d database] [-u user] [-p password] [-f optfile] [-g group]
check_pgsql: اختبار ما إذا كانت قاعدة بيانات PostgreSQL تقبل الاتصالات.
Usage: check_pgsql [-H <host>] [-P <port>] [-c <critical time>] [-w <warning time>] [-t <timeout>] [-d <database>] [-l <logname>] [-p <password>] [-q <query>] [-C <critical query range>] [-W <warning query range>]
check_pop: هذا البرنامج المساعد يختبر اتصالات POP مع المضيف المحدد.
Usage: check_pop -H host -p port [-w <warning time>] [-c <critical time>] [-s <send string>] [-e <expect string>] [-q <quit string>][-m <maximum bytes>] [-d <delay>] [-t <timeout seconds>] [-r <refuse state>] [-M <mismatch state>] [-v] [-4|-6] [-j] [-D <warn days cert expire>[,<crit days cert expire>]] [-S <use SSL>] [-E]
check_radius: الاختبارات لمعرفة ما إذا كان خادم RADIUS يقبل الاتصالات.
Usage: check_radius -H host -F config_file -u username -p password [-P port] [-t timeout] [-r retries] [-e expect] [-n nas-id] [-N nas-ip-addr]
check_simap: يختبر هذا المكون الإضافي اتصالات IMAP الآمنة مع المضيف المحدد.
Usage: check_simap -H host -p port [-w <warning time>] [-c <critical time>] [-s <send string>] [-e <expect string>] [-q <quit string>][-m <maximum bytes>] [-d <delay>] [-t <timeout seconds>] [-r <refuse state>] [-M <mismatch state>] [-v] [-4|-6] [-j] [-D <warn days cert expire>[,<crit days cert expire>]] [-S <use SSL>] [-E]
check_smtp: سيحاول هذا المكون الإضافي فتح اتصال SMTP بالمضيف.
Usage: check_smtp -H host [-p port] [-4|-6] [-e expect] [-C command] [-R response] [-f from addr] [-A authtype -U authuser -P authpass] [-w warn] [-c crit] [-t timeout] [-q] [-F fqdn] [-S] [-D warn days cert expire[,crit days cert expire]] [-v]
check_snmp: تحقق من حالة الأجهزة عن بعد والحصول على معلومات النظام عبر SNMP.
Usage: check_snmp -H <ip_address> -o <OID> [-w warn_range] [-c crit_range] [-C community] [-s string] [-r regex] [-R regexi] [-t timeout] [-e retries] [-l label] [-u units] [-p port-number] [-d delimiter] [-D output-delimiter] [-m miblist] [-P snmp version] [-N context] [-L seclevel] [-U secname] [-a authproto] [-A authpasswd] [-x privproto] [-X privpasswd] [-4|6]
check_spop: يختبر هذا المكون الإضافي اتصالات POP آمنة مع المضيف المحدد.
Usage: check_spop -H host -p port [-w <warning time>] [-c <critical time>] [-s <send string>] [-e <expect string>] [-q <quit string>][-m <maximum bytes>] [-d <delay>] [-t <timeout seconds>] [-r <refuse state>] [-M <mismatch state>] [-v] [-4|-6] [-j] [-D <warn days cert expire>[,<crit days cert expire>]] [-S <use SSL>] [-E]
check_ssh: حاول الاتصال بخادم SSH في الخادم والمنفذ المحددين.
Usage: check_ssh [-4|-6] [-t <timeout>] [-r <remote version>] [-p <port>] <host>
check_ssmtp: هذا البرنامج المساعد يختبر اتصالات SSMTP مع المضيف المحدد.
Usage: check_ssmtp -H host -p port [-w <warning time>] [-c <critical time>] [-s <send string>] [-e <expect string>] [-q <quit string>][-m <maximum bytes>] [-d <delay>] [-t <timeout seconds>] [-r <refuse state>] [-M <mismatch state>] [-v] [-4|-6] [-j] [-D <warn days cert expire>[,<crit days cert expire>]] [-S <use SSL>] [-E]
check_tcp: هذا البرنامج المساعد يختبر اتصالات TCP مع المضيف المحدد.
Usage: check_tcp -H host -p port [-w <warning time>] [-c <critical time>] [-s <send string>] [-e <expect string>] [-q <quit string>][-m <maximum bytes>] [-d <delay>] [-t <timeout seconds>] [-r <refuse state>] [-M <mismatch state>] [-v] [-4|-6] [-j] [-D <warn days cert expire>[,<crit days cert expire>]] [-S <use SSL>] [-E]
لمزيد من المعلومات ، قم بتنفيذ الأمر التالي تحت مسار الإضافات:
plugin_name --help
ستستخدم Farm Guardian هذه المكونات الإضافية للتحقق من الحالة الصحية للملفات الخلفية وستدير إخراج الخطأ في التنفيذ للمكوِّن الإضافي الذي تم تنفيذه لتحديد حالة الواجهة الخلفية كما يلي:
إذا كان الخطأ الإخراج == 0 ثم الخلفية على ما يرام> $؟ = 0
إذا كان الخطأ الإخراج <> 0 ثم الخلفية ليست على ما يرام> $؟ <> 0
مكوّن مخصص
يمكن تكوين هذه الملحقات وقابلة للبرمجة بالكامل من قبل sysadmins من أجل تكييفها مع أي بروتوكول أو تطبيق.
يوضح هذا المثال مكونًا مخصصًا check_load.sh.
#!/bin/bash ### ###comments: ###snmp utils should be installed ###snmpd should be installed and configured in the backends ### MAXVALUE=4 COMMUNITY="public" EXECUTE=`snmpget -v 2c -c $COMMUNITY $1 .1.3.6.1.4.1.2021.10.1.3.1 |cut -d ':' -f2 | cut -d '.' -f1 | sed s/\ // | sed s/\"//` echo "SNMP CPU load check for $1 is $EXECUTE" # If the result is true, exit with 1; error; else exit = 0; OK if (( $EXECUTE >= $MAXVALUE )); then #error output; the server is overloaded and the load balancer isn’t going to send more connections exit 1 else #not error; the server can accept more connections exit 0 fi
ثابت
عند تنفيذ Farm Guardian للمكوّن الإضافي ، يمكنه استخدام بعض الثوابت أو الرموز المميزة كحجج ، مثل:
- HOST: سيعتني Farm Guardian بتعديل هذا الثابت بواسطة عنوان IP للخادم الحقيقي.
- PORT: سيعتني Farm Guardian بتعديل هذا الثابت بمنفذ الخادم الحقيقي.
يمكن استخدام هذه الثوابت لكل مكون إضافي ، ستستخدمها Farm Guardian لتشغيل الفحص الصحي مع المعلمات الحقيقية في المكان.
المزارع
في هذا القسم ، هناك قائمة بالمزارع والخدمات التي تستخدم هذا الفحص الصحي في Farm Guardian.
يمكن فصل المزارع والخدمات عن هذا الفحص الصحي Farm Guardian والنقر على رمز سلة المهملات.