NSX のコンポーネントは、/var/log ディレクトリのログファイルに書き込みます。NSX アプライアンスの NSX Syslog メッセージは RFC 5424 に準拠しています。ESXi ホストの Syslog メッセージは RFC 3164 に準拠しています。
ログの表示
NSX アプライアンスの Syslog メッセージは /var/log/syslog にあります。
get log-file <auth.log | controller | controller-error | http.log | kern.log | manager.log | node-mgmt.log | syslog> [follow]
名前 | 説明 |
---|---|
auth.log | 認証ログ |
controller | コントローラ ログ |
controller-error | コントローラ エラー ログ |
http.log | HTTP サービス ログ |
kern.log | カーネル ログ |
manager.log | マネージャ サービス ログ |
node-mgmt.log | ノード管理ログ |
nsx-audit-write.log | NSX 監査の書き込みログ |
nsx-audit.log | NSX 監査ログ |
Syslog | システム ログ |
また NSX は監査 (audispd) ログをリモート Syslog サーバに直接送信します。これらのメッセージは /var/log/audit/audit.log に記録されますが、ローカル Syslog ファイルには記録されません。監査ログには、オペレーティング システムのセキュリティ関連のイベントが記録されます。
ハイパーバイザーでは、tac、tail、grep、more などの Linux コマンドを使用してログを表示できます。
各 Syslog メッセージには、メッセージの送信元を識別するためのコンポーネント (comp) 情報とサブコンポーネント (subcomp) 情報が含まれます。
NSX は、facility local6 のログ(数値 22)を生成します。
監査ログは Syslog の一部です。監査ログ メッセージは、structured-data フィールドの文字列 audit="true" で識別できます。ログ メッセージを受信するように外部のログ サーバを構成することができます。API /api/v1/administration/audit-logs を使用して監査ログにアクセスすることもできます。nsx-audit ファイルの Syslog メッセージでは、structured-data フィールドが audit="true" に設定されています。nsx-audit-write ファイルの Syslog メッセージでは、structured-data フィールドに audit="true" と update="true" の両方が設定されています。
<182>1 2020-05-05T00:29:02.900Z nsx-manager1 NSX 147324 - [nsx@6876 audit="true" comp="nsx-manager" level="INFO" reqId="fe75651d-c3e7-4680-8753-9ae9d92d7f0c" subcomp="policy" username="admin"] UserName="admin", ModuleName="AAA", Operation="GetCurrentUserInfo", Operation status="success"
2023-01-25T21:58:42.173Z w4-mydevice-220.eng.vmware.com NSX 1463241016 - [nsx@6876 comp="nsx-controller" level="INFO" subcomp="corfu-cluster"] Received maintenance mode status: {da3a0242-bf6d-ee98-224c-b9799cb5e29f=MAINTENANCE_MODE_OFF}
- API のオブジェクトを識別するためのエンティティ ID パラメータ entId。
- 特定の API 呼び出しを識別するためのリクエスト ID パラメータ req-id。
- API 呼び出しにヘッダー X-NSX-EREQID:<string> が含まれている場合は、外部リクエスト ID パラメータ ereqId。
- API 呼び出しにヘッダー X-NSX-EUSER:<string> が含まれている場合は、外部ユーザー パラメータ euser。
- API 操作が読み取り (GET) か書き込み (PUT/POST/DELETE/...) かを示す update フラグ。
- API 操作の名前を示す operation name フィールド。
- API 操作の成功または失敗を示す operation status フィールド。
- API 要求のすべてのパラメータ値を示す new value フィールド。
NSX には特権モードの概念がありません。すべての送信元とユーザーからの API 呼び出しが監査対象になります。
2020-07-07T16:33:20.339Z svc.nsxmanager NSX 1513 SYSTEM [nsx@6876 audit="true" comp="nsx-manager" level="INFO" subcomp="http"] UserName="[email protected]", ModuleName="ACCESS_CONTROL", Operation="LOGIN", Operation status="success" 2020-07-07T16:33:58.779Z svc.nsxmanager NSX 1513 SYSTEM [nsx@6876 audit="true" comp="nsx-manager" level="INFO" subcomp="http"] UserName="admin", ModuleName="ACCESS_CONTROL", Operation="LOGOUT", Operation status="success" 2020-07-07T16:50:21.301Z svc.nsxmanager NSX 1513 SYSTEM [nsx@6876 audit="true" comp="nsx-manager" level="INFO" subcomp="http"] UserName="[email protected]", ModuleName="ACCESS_CONTROL", Operation="LOGIN", Operation status="success" 2020-07-07T16:43:20.339Z svc.nsxmanager NSX 1513 SYSTEM [nsx@6876 audit="true" comp="nsx-manager" level="INFO" subcomp="http"] UserName="[email protected]", ModuleName="ACCESS_CONTROL", Operation="LOGIN", Operation status="failure"
<182>1 2020-07-06T18:09:14.210Z svc.nsxmanager NSX 2326 FABRIC [nsx@6876 audit="true" comp="nsx-manager" entId="68d5a9d0-4691-4c9c-94ed-64fd1c96150f" level="INFO" reqId="4c2335aa-c973-4f74-983f-331a4f7041ca" subcomp="manager" update="true" username="admin"] UserName="admin", ModuleName="TransportZone", Operation="CreateTransportZone", Operation status="success", New value=[{"transport_type":"OVERLAY","host_switch_name":"nsxvswitch","host_switch_mode":"STANDARD","nested_nsx":false,"is_default":false,"display_name":"1-transportzone-1307","_protection":"UNKNOWN"}]
2020-07-07T16:36:41.783Z svc.nsxmanager NSX 21018 - [nsx@6876 comp="nsx-manager" subcomp="cli" username="admin" level="INFO"] NSX CLI started (Manager, Policy, Controller) for user: admin 2020-07-07T16:36:53.469Z svc.nsxmanager NSX 21018 - [nsx@6876 comp="nsx-manager" subcomp="cli" username="admin" level="INFO"] NSX CLI stopped for user: admin
<182>1 2020-07-22T20:51:49.017Z manager2 NSX 1864 - [nsx@6876 comp="nsx-manager" subcomp="cli" username="admin" level="INFO" audit="true"] CMD: set user admin password-expiration 100 (duration: 2.185s), Operation status: CMD_EXECUTED
<182>1 2020-07-21T21:01:38.803Z manager2 NSX 4690 - [nsx@6876 comp="nsx-manager" subcomp="node-mgmt" username="admin" level="INFO" audit="true"] admin 'GET /api/v1/node/services/syslog/exporters' 200 731 "" "PostmanRuntime/7.26.1" 0.004588
<182>1 2020-07-21T20:54:40.018Z manager2 NSX 16915 - [nsx@6876 comp="nsx-manager" subcomp="cli" username="admin" level="INFO" audit="true"] CMD: set logging-server 1.1.1.1 proto udp level info (duration: 4.356s), Operation status: CMD_EXECUTED
RFC 5424 および RFC 3164 では、次の重要度が定義されています。
重要度 | 説明 |
---|---|
0 | 緊急:システムが不安定な状態 |
1 | アラート:迅速な対応が必要な状態 |
2 | 重大:重大な問題がある状況 |
3 | エラー:エラーが発生した状態 |
4 | 警告:警告が発生した状態 |
5 | 通知:正常ではあっても注意を要する状態 |
6 | 情報:情報メッセージ |
7 | デバッグ:デバッグレベルのメッセージ |
重要度が緊急、アラート、重大、またはエラーのすべてのログには、ログ メッセージの構造化データに、一意のエラー コードが記載されます。エラー コードは文字列と 10 進数で構成されます。文字列は特定のモジュールを表わします。
ログ ファイルまたはリモート ログ サーバへのアクセス失敗
NSX がログ ファイルへのアクセスまたはメッセージの書き込みに失敗した場合、アラームが生成されます。想定されるエラーは次のとおりです。
- ローカル ログ ファイルがない。
- ローカル ログ ファイルの権限または所有権の設定により、NSX がファイルに書き込むことができない。
- NSX がサードパーティのリモート ログ サーバにログ メッセージを送信できない。NSX が Aria Operations for Logs エージェントにログを送信できない場合、アラームは発生しません。
アラームは、アラーム フレームワークで解決できます。
ログ メッセージの形式
RFC 5424 の詳細については、https://tools.ietf.org/html/rfc5424 を参照してください。RFC 3164 の詳細については、https://tools.ietf.org/html/rfc3164 を参照してください。
RFC 5424 は、ログ メッセージの次の形式を定義します。
<facility * 8 + severity> version UTC-TZ hostname APP-NAME procid MSGID [structured-data] msg
<187>1 2016-03-15T22:53:00.114Z nsx-manager NSX - SYSTEM [nsx@6876 comp="nsx-manager" errorCode="MP4039" subcomp="manager"] Connection verification failed for broker '10.160.108.196'. Marking broker unhealthy.
エラー コード
エラー コードの完全なリストについては、ナレッジベースの記事 KB71077NSX-T Data Center 2.x Error Codesを参照してください。