Contents [show]
Secara lalai, ZEVENET perkakas menjalankan pemeriksaan kesihatan mudah ke bahagian belakang atau pelayan sebenar, tetapi kadangkala semakan ini tidak mencukupi untuk menentukan sama ada bahagian belakang berfungsi dengan betul atau tidak. Oleh itu, perkakas melaksanakan dan mengurus pemeriksaan kesihatan lanjutan melalui daemon yang menggunakan satu set pemalam yang dipanggil Farmguardian.
Tugas utama Farmguardian adalah untuk berfungsi sebagai alat pemantauan lanjutan untuk bahagian belakang aplikasi. Jadi, Farmguardian membaca konfigurasi ladang dan mendapatkan senarai bahagian belakang, dan dibantu oleh pemalam yang menyemak status kesihatan bahagian belakang. Penjaga Ladang juga mengemas kini status bahagian belakang untuk ladang tertentu, menentukan sama ada pengimbang beban harus menghantar trafik ke bahagian belakang itu.
Dalam bahagian ini, anda akan belajar cara mengkonfigurasi tukang ladang cek. Kami akan meneroka kedua-dua tab, iaitu Global and Farms tab.
Tetapan Global
Pada Global bahagian, terdapat tetapan yang pasti tukang ladang pemeriksaan kesihatan seperti gambar di bawah.
Medan tab ini tidak boleh diedit jika semakan telah dimuatkan dalam sistem. Jika anda ingin mengubah suai pemeriksaan kesihatan, anda harus membuat pemeriksaan baharu tukang ladang, aktifkan Salin tukang ladang pilihan, dan ubah suai yang baharu.
Nama. Nama pengenalan cek Penjaga Ladang semasa ini tidak boleh diedit.
Perintah. Menetapkan arahan yang dilaksanakan untuk menyemak status hujung belakang.
tamat masa. Jumlah masa tertinggi untuk bahagian belakang menghantar semula respons. Unit (saat).
Jeda. Masa di antara kumpulan pemeriksaan kesihatan terhadap semua bahagian belakang. Perhatikan bahawa pada setiap selang waktu, cek penjaga ladang akan berhenti dan dilancarkan semula. Jadi, ia mestilah cukup tinggi supaya ia boleh menyemak semua hujung belakang ( tamat masa * nº hujung belakang +1 ).
Deskripsi. Bidang ini mengandungi penerangan singkat tentang pemeriksaan Farmguardian.
Potong Sambungan. Apabila pilihan ini didayakan, sambungan semasa hujung belakang yang dikesan yang terputus disiram, memaksa penyambungan semula segera ke hujung belakang yang tersedia. Jika dilumpuhkan, sambungan semasa akan terputus tanpa memutuskan sambungan mana-mana pelanggan.
Dayakan log. Mendayakan atau melumpuhkan log setiap cek penjaga ladang. Dengan log dilumpuhkan, hanya perubahan status bahagian belakang akan ditunjukkan dalam fail log.
Konfigur pemeriksaan kesihatan
Semua tersedia tukang ladang pemalam boleh didapati di bawah direktori / usr / local / zevenet / app / libexec / di dalam pengimbang beban.
Farmguardian menggunakan pemalam untuk mengkonfigurasi pemeriksaan kesihatan lanjutan untuk mengesan sama ada pelayan sebenar tertentu berfungsi seperti yang diharapkan menggunakan pilihan tersuai. Terdapat banyak pemeriksaan kesihatan untuk setiap protokol, perkhidmatan atau aplikasi. Pemalam yang paling penting diterangkan di bawah.
check_ftp. Pemalam ini menguji sambungan FTP dengan hos yang ditentukan.
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: Plugin ini akan menggunakan arahan fping untuk ping host yang ditentukan untuk pemeriksaan pantas.
Usage: check_fping <host_address> -w limit -c limit [-b size] [-n number] [-T number] [-i number]
check_http: Pemalam ini menguji perkhidmatan HTTP pada hos yang ditentukan. Ia boleh menguji protokol biasa (HTTP) dan selamat (HTTPS), mengikuti ubah hala, mencari rentetan dan ungkapan biasa, menyemak masa sambungan dan melaporkan masa tamat tempoh sijil, kod pemulangan HTTP, dsb.
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: Plugin ini menguji sambungan IMAP dengan hos yang ditentukan.
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: Plugin ini menguji perkhidmatan LDAP. Ia boleh diuji dengan carian yang diberikan.
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: Plugin ini menguji perkhidmatan LDAPS. Ia boleh diuji dengan carian yang diberikan.
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: Plugin ini menguji sambungan ke pelayan 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: Plugin ini menyemak hasil pertanyaan terhadap tahap ambang.
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: Menguji sama ada Pangkalan Data PostgreSQL menerima sambungan.
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: Plugin ini menguji sambungan POP dengan hos yang ditentukan.
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: Ujian untuk melihat sama ada pelayan RADIUS menerima sambungan.
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: Plugin ini menguji sambungan IMAP dengan hos yang ditentukan.
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: Plugin ini akan cuba membuka sambungan SMTP dengan hos.
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: Periksa status mesin jauh dan dapatkan maklumat sistem melalui 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: Plugin ini menguji sambungan POP dengan hos yang ditentukan.
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: Cuba hubungkan ke pelayan SSH di pelayan dan pelabuhan yang ditentukan.
Usage: check_ssh [-4|-6] [-t <timeout>] [-r <remote version>] [-p <port>] <host>
check_ssmtp: Plugin ini menguji sambungan SSMTP dengan hos yang ditentukan.
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: Plugin ini menguji sambungan TCP dengan hos yang ditentukan.
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]
Untuk maklumat lanjut, jalankan arahan berikut di bawah laluan pemalam:
plugin_name --help
. Farmguardian akan menggunakan pemalam ini untuk menyemak status kesihatan hujung belakang dan akan menguruskan output ralat pelaksanaan pemalam yang dilaksanakan untuk menentukan status hujung belakang seperti berikut:
Jika kesilapan itu output == 0 maka backend adalah OK> $? = 0
Jika kesilapan itu output <> 0 maka backend TIDAK OK> $? <> 0
Plugin tersuai
Sysadmin boleh mengkonfigurasi pemalam ini kerana ia boleh diprogramkan sepenuhnya dan boleh disesuaikan dengan mana-mana protokol atau aplikasi.
Contoh ini menunjukkan pemalam tersuai 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
Malang
Bila Farmguardian melaksanakan pemalam, ia mungkin menggunakan beberapa pemalar atau token sebagai hujah, seperti:
HOST. Farmguardian akan menguruskan mengubah suai pemalar ini dengan alamat IP pelayan sebenar.
PORT. Farmguardian akan menguruskan mengubah suai pemalar ini oleh port pelayan sebenar.
Pemalar ini akan digunakan untuk setiap pemalam. Farmguardian akan menggunakannya untuk menjalankan pemeriksaan kesihatan dengan parameter sebenar tersedia.
Farms
Pada tab ini, terdapat senarai ladang dan perkhidmatan yang menggunakan ini Farmguardian pemeriksaan kesihatan.
Ladang dan perkhidmatan boleh diberikan atau dialih keluar daripada ini Farmguardian pemeriksaan kesihatan menggunakan berbilang pilihan dengan ikon anak panah tunggal atau anak panah berganda untuk mendayakan atau melumpuhkan semua ladang.