このセクションでは、NSX Advanced Load Balancer の vRealize Log Insight について説明します。
vRealize Log Insight へのデータの送信
イベントは、NSX Advanced Load Balancer Controller 全体で使用され、関連する変更の履歴を提供します。イベントは永続的なレコードであり、適切なアクションを実行するためのアラートを生成するために使用できます。イベントの詳細については、「イベント」を参照してください。
仮想サービスとプールは、TCP および UDP 接続のクライアントとアプリケーション間のやり取りをログに記録できるため、クライアント要求とサーバ応答の両方に関する重要な判断材料を提供します。これらの仮想サービス クライアントのログは、NSX Advanced Load Balancer Controller 内でローカルにインデックス付け、表示、およびフィルタリングできます。
どちらのタイプのデータも、展開内で何が発生しているかについての一般的な感覚に基づき、展開のトラブルシューティングを行うために重要となる可能性があります。このデータはすべて NSX Advanced Load Balancer Controller ユーザー インターフェイスから使用できますが、このデータを中央集中型のプラットフォームへ外部送信するオプションがあります。このドキュメントでは、このデータを vRealize Log Insight に送信する方法の例をいくつか示します。
Log Insight へのイベントの送信
イベントは、NSX Advanced Load Balancer Controller から Syslog メッセージとして送信できます。次に示す図の例では、Log Insight ログ フォワーダが使用されています。このログ フォワーダは、NSX Advanced Load Balancer Controller 構成内で Syslog の宛先として構成されています。
詳細については、「通知」を参照してください。
vRealize Log Insight コンテンツ パック
Log Insight に送信されるイベントの場合、VMware Marketplace で入手できる VMware NSX Advanced Load Balancer(VMware 提供)コンテンツ パックがキーを使用した抽出を実行します。コンテンツ パックはイベントにのみ使用されます。
コンテンツ パックは、キーの抽出に加えて、イベント データを視覚的に表示するための事前構築済みのダッシュボードを提供します。ダッシュボード クエリは、抽出されたキー値を使用します。
次に、キー抽出の例を示します。
Log Insight への仮想サービス クライアント ログの送信
NSX Advanced Load Balancer は、仮想サービス クライアント ログをサービス エンジンから外部サーバに直接ストリーミングする機能をサポートしています。詳細については、「外部サーバへの NSX Advanced Load Balancer クライアント ログの送信」を参照してください。
これらのログは、イベント設計のように、サービス エンジンから Log Insight ログ フォワーダに直接送信するように構成できますが、この直接ワークフローは理想的ではありません。ここでの制限は、クライアント ログが JSON 形式で送信される点です。ログ フォワーダに直接送信すると、キーが抽出されないため、クライアント ログのクエリがより困難になります。JSON 解析を実行する中間プロキシを介してログを送信することをお勧めします。
次に、JSON 解析を使用してクライアント ログを Log Insight に送信する例を 2 つ示します。最初の例では Log Insight Agent を使用し、2 番目の例では Fluent Bit を使用します。
JSON 解析での Log Insight エージェントの使用
Log Insight エージェントは、ローカル ログ ファイルの読み取り、JSON データの解析、ログ フォワーダへの転送を行う機能を提供します。Syslog サーバで Log Insight エージェントを実行すると、ログ ファイルが読み取りおよび解析されるようにエージェントが構成されます。
この例では、Syslog を実行している外部サーバに仮想サービス クライアント ログをストリーミングするようにサービス エンジンが構成されています。この場合、rsyslog
が使用されます。Log Insight エージェントは、この外部 Syslog サーバにもインストールされ、特定のファイルを含む JSON を解析してログ フォワーダに転送するように構成されます。
rsyslog と Log Insight エージェントの両方の構成ファイルの例を次に示します。
次の変更を /etc/rsyslog.conf に追加できます。
# provides UDP syslog reception module(load="imudp") input(type="imudp" port="514") ## rules for process the remote logs # $template noTimestampFormat,"%msg%\n" $template RemoteLogs,"/var/log/avi/%HOSTNAME%.log" *.* ?RemoteLogs;noTimestampFormat
liagent.conf 構成の例:
[server] hostname=<loginsight_forwarder> ssl=no [filelog|avi] directory=/var/log/avi/ include=*.log exclude=liagent parser=json_parser [parser|json_parser] base_parser=json fields=*
JSON 解析での Fluent Bit の使用
Fluent Bit は、指定されたポートでログを受信し、JSON データを解析してからログ フォワーダに転送する機能を提供します。
この例では、Fluent Bit を実行している外部サーバに仮想サービス クライアント ログをストリーミングするように SE が構成されています。Fluent Bit 構成には、parsers.conf ファイルに新しいエントリを追加することが含まれます。Fluent Bit は、指定されたポートで仮想サービス クライアント ログを受信し、JSON を解析してからログ フォワーダに転送します。
次の構成を /etc/td-agent-bit/parsers.conf に追加できます。
[PARSER] Name avi Format json Time_Keep Off
/etc/td-agent-bit/td-agent-bit.conf 構成の例:
[INPUT] Name syslog Listen 0.0.0.0 Port 514 Mode udp Parser avi Buffer_Chunk_Size 1024000 Buffer_Max_Size 2048000 Tag avi.logs [OUTPUT] Name http Match * Host <loginsight_forwarder> Port 9000 URI /log-forwarder/ingest Format json