デフォルトでは、 レリアノイド バックエンドや実サーバーで基本的なヘルスチェックを実行しますが、これらのチェックだけではバックエンドが正常に動作しているかどうかを判断するのに十分ではない場合があります。このため、Relianoidはと呼ばれるサービスを実装しています。 ファームガーディアン 高度なヘルスチェックを実行および管理します。
の目的 ファームガーディアン バックエンド アプリケーション サーバーの高度な監視ツールとして機能します。Farmguardian は、各バックエンドのヘルス ステータスをチェックするプラグインの助けを借りて、構成を読み取り、バックエンドのリストを取得することでこれを実行します。また、Farmguardian は各ファームのバックエンド ステータスを更新し、ロード バランサーがそのバックエンドにトラフィックを送信する必要があるかどうかを決定します。
このセクションでは、 農場守護者 両方を使用してチェックする Global 設定と設定内 農場.
グローバル設定 #
以内 Global セクションでは、これらは ファームガーディアン.
グローバルタブでは、チェックがシステムに事前にロードされている場合、フィールドは編集できません。ヘルスチェックを変更する場合は、新しいヘルスチェックを作成する必要があります。 農場守護者、有効にする コピー farmguardian 新しいものを修正します。
名前現在の Farmguardian チェックの識別名は編集できません。
Commandバックエンドのステータスを確認するために実行されるコマンドを設定します。
タイムアウトバックエンドが応答を返すのにかかる最長時間。単位 (秒)。
インターバルすべてのバックエンドに対するヘルス チェック バッチ間の時間。間隔ごとに、ファームガーディアン チェックが停止して再起動されるので、すべてのバックエンドをチェックできるほど十分に高い値にする必要があります (タイムアウト * バックエンド数 +1)。
詳細説明 このフィールドには、Farmguardian チェックの簡単な説明が含まれます。
接続を切断このオプションを有効にすると、ダウンしていると検出されたバックエンドの現在の接続がフラッシュされ、使用可能なバックエンドに直ちに再接続されます。無効にすると、クライアントを切断せずに現在の接続がドレインされます。
ログを有効にするすべての Farmguardian チェックのログを有効または無効にします。ログを無効にすると、バックエンドのステータスの変更のみがログ ファイルに表示されます。
バックエンドエイリアスバックエンドのインターフェースを簡単に識別できる名前。
ヘルスチェックを構成する #
使用可能なすべての 農場守護者 プラグインはディレクトリの下にあります /usr/local/zevenet/app/libexec/ ロードバランサー内部。
ファームガーディアン プラグインを使用して高度なヘルス チェックを設定し、カスタマイズされたオプションを使用して特定の実サーバーが期待どおりに動作しているかどうかを検出します。プロトコル、サービス、アプリケーションごとに多数のヘルス チェックがあります。最も重要なプラグインについては、以下で説明します。
チェック_ftpこのプラグインは、指定されたホストとの FTP 接続をテストします。
使用方法: check_ftp -H ホスト -p ポート [-w ] [-c ] [-s ] [-e ] [-q ][-m ] [-d ] [-t ] [-r ] [-M ] [-v] [-4|-6] [-j] [-D [、 ]] [-S ] [-E]
チェック_fping: このプラグインは、fping コマンドを使用して指定されたホストに ping を実行し、高速チェックを実行します。
使用法: check_fping -w 制限 -c 制限 [-b サイズ] [-n 数値] [-T 数値] [-i 数値]
チェック_http: このプラグインは、指定されたホスト上の HTTP サービスをテストします。プレーン (HTTP) およびセキュア (HTTPS) プロトコルのテスト、リダイレクトの追跡、文字列と正規表現の検索、接続時間の確認、証明書の有効期限や HTTP 戻りコードなどのレポートが可能です。
使用方法: check_http -H | -私[-u ] [-p ] [-J ] [-K ] [-w ] [-c ] [-t ] [-L] [-E] [-a 認証] [-b プロキシ認証] [-f ] [-e ] [-d 文字列] [-s 文字列] [-l] [-r | -R ] [-P 文字列] [-m : ] [-4|-6] [-N] [-M ] [-A 文字列] [-k 文字列] [-S ] [--sni] [-C [、 ]] [-T ] [-jメソッド]
チェック_imap: このプラグインは、指定されたホストとの IMAP 接続をテストします。
使用方法: check_imap -H ホスト -p ポート [-w ] [-c ] [-s ] [-e ] [-q ][-m ] [-d ] [-t ] [-r ] [-M ] [-v] [-4|-6] [-j] [-D [、 ]] [-S ] [-E]
チェックLDAP: このプラグインは LDAP サービスをテストします。指定された検索でテストできます。
使用方法: check_ldap -H -b [-p ] [-a ] [-D ] [-P ] [-w ] [-c ] [-t タイムアウト] [-2|-3] [-4|-6]
チェックLDAP: このプラグインは LDAPS サービスをテストします。指定された検索でテストできます。
使用方法: check_ldaps -H -b [-p ] [-a ] [-D ] [-P ] [-w ] [-c ] [-t タイムアウト] [-2|-3] [-4|-6]
チェック_mysql: このプラグインは、MySQL サーバーへの接続をテストします。
使用方法: check_mysql [-d データベース] [-H ホスト] [-P ポート] [-s ソケット] [-u ユーザー] [-p パスワード] [-S] [-l] [-a 証明書] [-k キー] [-C ca-cert] [-D ca-dir] [-L 暗号] [-f optfile] [-g グループ]
チェック_mysql_クエリ: このプラグインは、クエリ結果をしきい値レベルと照合します。
使用方法: 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]
チェック_pgsql: PostgreSQL データベースが接続を受け入れているかどうかをテストします。
使用方法: check_pgsql [-H ] [-P ] [-c ] [-w ] [-t ] [-d ] [-l ] [-p ] [-q ] [-C ] [-W ]
チェックポップ: このプラグインは、指定されたホストとの POP 接続をテストします。
使用方法: check_pop -H ホスト -p ポート [-w ] [-c ] [-s ] [-e ] [-q ][-m ] [-d ] [-t ] [-r ] [-M ] [-v] [-4|-6] [-j] [-D [、 ]] [-S ] [-E]
チェック半径: RADIUS サーバーが接続を受け入れているかどうかをテストします。
使用方法: 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]
チェック_simap: このプラグインは、指定されたホストとの安全な IMAP 接続をテストします。
使用方法: check_simap -H ホスト -p ポート [-w ] [-c ] [-s ] [-e ] [-q ][-m ] [-d ] [-t ] [-r ] [-M ] [-v] [-4|-6] [-j] [-D [、 ]] [-S ] [-E]
チェック_smtp: このプラグインはホストとの SMTP 接続を開こうとします。
使用方法: check_smtp -H ホスト [-p ポート] [-4|-6] [-e 期待値] [-C コマンド] [-R 応答] [-f 送信元アドレス] [-A 認証タイプ -U 認証ユーザー -P 認証パス] [-w 警告] [-c クリット] [-t タイムアウト] [-q] [-F fqdn] [-S] [-D 警告日数証明書の有効期限[,クリット日数証明書の有効期限]] [-v]
チェック_snmp: リモート マシンのステータスを確認し、SNMP 経由でシステム情報を取得します。
使用方法: check_snmp -H -o [-w 警告範囲] [-c 危険範囲] [-C コミュニティ] [-s 文字列] [-r 正規表現] [-R 正規表現] [-t タイムアウト] [-e 再試行] [-l ラベル] [-u 単位] [-p ポート番号] [-d 区切り文字] [-D 出力区切り文字] [-m miblist] [-P snmp バージョン] [-N コンテキスト] [-L セキュリティレベル] [-U セキュリティ名] [-a 認証プロトコル] [-A 認証パスワード] [-x プライベートプロトコル] [-X プライベートパスワード] [-4|6]
チェック_spop: このプラグインは、指定されたホストとの安全な POP 接続をテストします。
使用方法: check_spop -H ホスト -p ポート [-w ] [-c ] [-s ] [-e ] [-q ][-m ] [-d ] [-t ] [-r ] [-M ] [-v] [-4|-6] [-j] [-D [、 ]] [-S ] [-E]
チェック_ssh: 指定されたサーバーおよびポートで SSH サーバーに接続しようとします。
使用法: check_ssh [-4|-6] [-t ] [-r ] [-p ]
チェック: このプラグインは、指定されたホストとの SSMTP 接続をテストします。
使用方法: check_ssmtp -H ホスト -p ポート [-w ] [-c ] [-s ] [-e ] [-q ][-m ] [-d ] [-t ] [-r ] [-M ] [-v] [-4|-6] [-j] [-D [、 ]] [-S ] [-E]
チェック_tcp: このプラグインは、指定されたホストとの TCP 接続をテストします。
使用方法: check_tcp -H ホスト -p ポート [-w ] [-c ] [-s ] [-e ] [-q ][-m ] [-d ] [-t ] [-r ] [-M ] [-v] [-4|-6] [-j] [-D [、 ]] [-S ] [-E]
詳細については、プラグイン パスで次のコマンドを実行してください。
プラグイン名 - 助けて
ファームガーディアン これらのプラグインを使用してバックエンドのヘルス状態を確認し、実行されたプラグインの実行エラー出力を管理して、次のようにバックエンドの状態を決定します。
エラーの場合 出力 == 0 バックエンドはOKです > $? = 0
エラーの場合 出力 <> 0 バックエンドは正常ではありません > $? <> 0
カスタムプラグイン #
これらのプラグインは、システム管理者が構成し、あらゆるプロトコルやアプリケーションに適応できるように完全にプログラムすることができます。
この例ではカスタムプラグインを示します チェックロード.
#!/bin/bash ### ###コメント: ###snmp ユーティリティがインストールされている必要があります ###snmpd がバックエンドにインストールされ、構成されている必要があります ### 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 "$1 の SNMP CPU 負荷チェックは $EXECUTE です" # 結果が true の場合、1 で終了します。エラー。それ以外の場合は exit = 0; OK if (( $EXECUTE >= $MAXVALUE )); then #エラー出力。サーバーが過負荷で、ロードバランサーはこれ以上接続を送信しません exit 1 else #、エラーではありません。サーバーはさらに多くの接続を受け入れることができます exit 0 fi
定数 #
日時 ファームガーディアン プラグインを実行する場合、次のような定数またはトークンを引数として使用できます。
主催者. ファームガーディアン この定数を実際のサーバーの IP アドレスで変更します。
PORT. ファームガーディアン 実際のサーバー ポートによってこの定数を変更します。
これらの定数はすべてのプラグインで使用できます。 ファームガーディアン これらを使用して、実際のパラメータを使用してヘルスチェックを実行します。
農場 #
このタブには、これを使用している農場とサービスのリストがあります ファームガーディアン 健康診断。
農場とサービスはここから割り当てたり削除したりできます ファームガーディアン 単一矢印アイコンまたは二重矢印による複数選択を使用してヘルス チェックを実行し、すべてのファームを有効または無効にします。

