LAS

$Date: 2023/09/25 14:12:18 $


概要

LAS (Log Analysis Service) はヤマハネットワーク機器の各種ログをYNOマネージャーに集約し、分析するサービスです。YNOエージェントはヤマハネットワーク機器からログを収集し、YNOマネージャーに送信します。本文書では、YNOエージェントの処理を中心に説明します。


用語の説明

用語 説明
LASクライアント YNOエージェントの機能の一部です。ヤマハネットワーク機器のログを収集し、LASサーバーに送信します。
LASサーバー YNOマネージャーに組み込まれているサーバーです。LASクライアントから送信されたログを受信し、LAS分析基盤に転送します。
機器統計情報 LASクライアントがLASサーバーに送信するログの一種です。メモリ使用率やトラフィックなど、ヤマハネットワーク機器本体の動作や状態を示す時系列のデータです。

注意事項

以下の設定とLASの併用は非推奨です。SYSLOGが大量に発生することで、一部のSYSLOGがYNOマネージャーに保存されない可能性があります。


対応機種とファームウェアリビジョン

YNOエージェント機能 - 対応機種とファームウェアリビジョンを参照してください。


詳細

システム構成

LASのシステム構成を以下に示します。LASクライアントはヤマハネットワーク機器のログを収集し、LASサーバーに送信します。LASサーバーはLASクライアントから受信したログをLAS分析基盤に転送します。LAS分析基盤は転送されたログを集約、分析し、YNOマネージャーのGUIに情報を表示します。

システム構成

LASクライアントが収集するログには以下の種類があります。

機種やファームウェアリビジョンにより収集できるログの種類が異なります。詳細はYNOエージェント機能 - 対応機種とファームウェアリビジョンを参照してください。

LASクライアントの有効化

LASクライアントを有効にするには、YNOマネージャーで設定を変更する必要があります。詳細は以下を参照してください。

YNO操作マニュアル - LAS

ヤマハネットワーク機器には、YNOを使用するための以下の設定が必要です。これ以外に追加の設定は必要ありません。

LASの動作状態はshow status ynoおよびshow status yno lasで確認できます。

SYSLOGの処理

収集

LASクライアントが有効になっている場合、ヤマハネットワーク機器内部で発生したSYSLOGは、LASクライアントが持つ送信キューに一時的に蓄積されます。送信キューに蓄積されたSYSLOGは、SYSLOGの処理 - 送信に記載されているルールに従ってLASサーバーに送信されます。SYSLOGが送信キューに蓄積されるには、SYSLOGの各レベルに対応した出力設定 (syslog info/syslog notice/syslog debug) がonになっている必要があります。

送信キュー長の最大値はyno las syslog queue lengthで設定します。SYSLOGの発生頻度が送信速度を上回っている場合、送信キュー長は長くなっていきます。送信キュー長が最大値に達している状態でさらにSYSLOGが発生した場合、そのSYSLOGはLASサーバーに送信されることなく破棄されます。このとき "Tx queue was full" のSYSLOGがINFOレベルで出力されると同時に、YNOで「LAS - ログ欠落」のアラームが発生します。"Tx queue was full" のSYSLOGはLASサーバーに送信されません。

ヤマハネットワーク機器の起動時はLASクライアントが無効になっており、YNOエージェントがYNOマネージャーと通信して初期化が完了するまでLASクライアントが有効になりません。この場合でも、起動時のCONFIGにyno use onとyno access codeの両方が設定されている場合は、起動後に発生したSYSLOGが送信キューに蓄積されます。LASクライアントが有効になる前に送信キュー長が最大値に到達した場合、それまでに送信キューに蓄積されていたSYSLOGはすべて破棄されます。LASクライアントが有効にならない限り、それ以降発生したSYSLOGは送信キューに蓄積されません。

以下の場合、送信キューに蓄積されたSYSLOGは破棄され、LASサーバーには送信されません。

送信

LASクライアントは送信キューに蓄積されたSYSLOGを古いものから順に、一定の時間間隔でLASサーバーに送信します。一度に送信するSYSLOGの行数は最大で100行です。

SYSLOG送信の時間間隔は状況に応じて以下の通り切り替わります。

状況 時間間隔
通常時 (送信キュー長が100行以下のとき) 1分おき
送信キュー長が100行を超えたとき 10秒おき
YNOマネージャーでリアルタイム表示をしているとき 1秒おき

SYSLOG送信の時間間隔をヤマハネットワーク機器の設定で変更することはできません。

LASクライアントはSYSLOG送信時にLASサーバーとのコネクションを確立し、送信が完了とすると切断します。ただし、YNOマネージャーでリアルタイム表示をしている間はコネクションを維持した状態となります。LASサーバーとの通信経路上にファイアウォールが存在するなどして、無通信タイマーによりコネクションが切断される場合、LASクライアントからキープアライブパケットを送信することで症状が改善する場合があります。LASクライアントのキープアライブ動作はyno las connection keepaliveで設定できます。

送信キューにSYSLOGが蓄積されている状態でヤマハネットワーク機器を再起動した場合、LASクライアントは再起動直前に、送信キューに蓄積されているSYSLOGを最大で100行送信しようと試みます。この処理は、タイミングによっては失敗する可能性があります。

機器統計情報

収集

LASクライアントが収集する機器統計情報には以下の種類があります。収集する各種類の情報をデータセットと呼びます。

種類 説明
メモリ使用率

メモリ使用率です。

このデータセットが収集されるにはstatistics memory onの設定が必要です。

CPU使用率

CPU使用率です。マルチコアの機種では、CPUコアごとの使用率が収集されます。

このデータセットが収集されるにはstatistics cpu onの設定が必要です。

トラフィック量

インターフェースごとの1秒あたりのデータ転送量です。対応するインターフェースは以下の通りです。

  • LAN (LAN分割、タグVLANを除く)
  • ONU
  • PP
  • TUNNEL

インターフェースごとに送信量と受信量がそれぞれ収集されます。

このデータセットが収集されるにはstatistics traffic onの設定が必要です。

LAN分割を有効にしたLANインターフェースでは情報が収集されません。

ONUインターフェースの情報は、小型ONUが取り付けられた状態でのみ収集されます。一方、その場合はONUインターフェースと排他になるLANインターフェースの情報が収集されなくなります。

PPインターフェースの情報は、pp enableが設定されている場合のみ収集されます。

TUNNELインターフェースの情報は、tunnel enableが設定されている場合のみ収集されます。

ファストパスフロー数

ファストパスフロー数です。IPv4、IPv6でそれぞれ収集されます。

このデータセットが収集されるにはstatistics flow onの設定が必要です。

NATセッション数

NATセッション数です。全インターフェース、全ディスクリプタのセッション数を合計した値が収集されます。

このデータセットが収集されるにはstatistics nat onの設定が必要です。

動的フィルターのセッション数

動的フィルターのセッション数です。全インターフェースのセッション数を合計した値が収集されます。

このデータセットが収集されるにはstatistics filter onの設定が必要です。

LASクライアントはデータセットごとに1秒に1回値を取得し、60個溜まった時点でそれを元に1分ごとの平均値と最大値を算出します。LASサーバーに送信されるデータは1分ごとの平均値と最大値です。

送信

LASクライアントは、1分ごとの平均値と最大値のデータが12個溜まった時点でこれらをLASサーバーに送信します。SYSLOGの送信と同様に、データはLASクライアントが持つ送信キューに一時的に蓄積されます。送信キューの最大値をユーザーが設定することはできませんが、発生するデータの数に対して十分に長い値になっています。したがって、LASクライアントがLASサーバーと正常に通信できていれば、送信キュー長が最大値を超過することはありません。

ログの再送

LASクライアントはログ送信後、yno las request timeoutで設定されている時間、LASサーバーからの応答を待ちます。応答待ち時間が超過した場合、あるいはLASサーバーからエラーが返された場合、LASクライアントは送信に失敗したと判定し、yno las request retryで設定されている回数、送信を再試行します。失敗判定から再試行までの時間間隔は、以下の式で計算されます。

(再試行回数 - 1) × 2 + 1 [秒]

ログ送信の失敗が継続すると、やがてログが破棄され、YNOで「LAS - ログ欠落」のアラームが発生します。このケースは、LASサーバーへの接続失敗が継続する場合と、ログの送信後にエラーが発生する場合の2つに分類されます。LASクライアントがLASサーバーへの接続に失敗する状況が継続する場合、その間に発生したログは送信キューに蓄積され続けます。したがって、送信キュー長が最大値を超過した時点で「LAS - ログ欠落」のアラームが発生します。一方で、LASサーバーへは接続できてログを送信したが、LASサーバーからの応答待ち時間超過またはエラー応答の受信により、送信を再試行し、再試行回数が超過した場合、その時点で「LAS - ログ欠落」のアラームが発生します。例えばインターネット回線がダウンしている場合は、前者の「LASサーバーへの接続失敗が継続する場合」に該当します。したがって、送信キュー長が最大値に達する前に回線が復旧すればログは破棄されず、「LAS - ログ欠落」のアラームも発生しません。後者の「LASサーバーから正常に応答を受信できない場合」はLASサーバーの動作が異常であり、通常は発生しません。


コマンド

SYSLOG送信キューの長さの設定

[書式]
yno las syslog queue length LENGTH
no yno las syslog queue length
[設定値および初期値]
[説明]
SYSLOG送信キュー長の最大値を設定する。現在の送信キュー長より小さい値を設定しても、すでに送信キューに蓄積されているSYSLOGは破棄されることなく、順次LASサーバーに送信される。

LASクライアントが送信したリクエストに対するLASサーバーからの応答待ちがタイムアウトするまでの時間の設定

[書式]
yno las request timeout SECONDS
no yno las request timeout
[設定値および初期値]
[説明]
LASクライアントが送信したリクエストに対するLASサーバーからの応答待ちがタイムアウトするまでの時間を設定する。

LASクライアントがリクエストの送信を再試行する回数の設定

[書式]
yno las request retry COUNT
no yno las request retry
[設定値および初期値]
[説明]
LASクライアントがリクエストの送信を再試行する回数を設定する。

LASサーバーとのコネクションに対するキープアライブの設定

[書式]
yno las connection keepalive INTERVAL [timeout=SW]
no yno las connection keepalive
[設定値および初期値]
[説明]
YNOマネージャーでリアルタイム表示をしている間、LASクライアントはLASサーバーとの間でコネクションを確立した状態となる。コネクションが確立されている間は、INTERVALに設定された時間間隔でLASクライアントからキープアライブパケットが送信される。SWがonに設定されている場合、キープアライブパケットが送信されてからINTERVALで設定された時間までにLASサーバーから応答がないと、LASクライアントはコネクションを一旦切断し、再接続を試みる。

LASの動作状態の表示

[書式]
show status yno las
[説明]
LASの動作状態を表示する。
[表示例]
# show status yno las
機能               : 有効
ログ送信結果       : 成功
SYSLOG送信速度     : 100行 / 60秒
SYSLOG送信キュー長 : 26

SYSLOGメッセージ一覧

本機能において出力されるSYSLOGメッセージを以下に示します。

レベル 出力メッセージ 意味 ログ種類の表示 Proxy表示 ヤマハネットワーク機器内部のみ
INFO Activated LASクライアントが有効になった
Inactivated LASクライアントが無効になった
Retry count exceeded, N logs were discarded リクエストの再送回数が超過したため、ログがN個破棄された
Tx queue was full 送信キュー長が最大値に到達した
DEBUG Activating... LASクライアントを有効にしている
Inactivating... LASクライアントを無効にしている
Could not connect to server: (理由) (理由) によりLASサーバーに接続できなかった
Retrying Tx request (N times)... リクエスト送信に失敗したため、N回目の再送をする
Retry count exceeded リクエストの再送回数が超過した (ログは送信キューに蓄積されているため、欠落していない)
Received invalid message LASサーバーから予期せぬタイミングでメッセージを受信した
Received error response: (理由) LASサーバーから (理由) というエラー応答を受信した
Received invalid response LASサーバーから不正な応答を受信した
Connection was closed unexpectedly: (理由) (理由) によりLASサーバーとのコネクションが予期せず切断された
Request timed out after N seconds 送信したリクエストに対するLASサーバーからの応答待ちがN秒経過したため、タイムアウトした

実際に出力されるメッセージには "[LASC]" のプレフィックスが付加されます。

複数の種類のログ収集に対応しているファームウェアで、"ログ種類の表示" 欄が "○" になっているSYSLOGが出力される場合、ログの種類を示す以下の文字列がプレフィックスに追加されます。

プレフィックス文字列 ログの種類
SYSLOG SYSLOG
DEVSTAT 機器統計情報

yno https-proxyコマンドが設定されている状態で、"Proxy表示" 欄が "○" になっているSYSLOGが出力される場合、プレフィックスに "(Proxy)" の文字列が追加されます。

"ヤマハネットワーク機器内部のみ" 欄が "○" になっているSYSLOGはLASサーバーに送信されません。


関連文書