スイッチ : Cisco Nexus 3500 シリーズ スイッチ

Nexus 3500 シリーズ スイッチ プラットフォームのシステム ヘルス チェック プロセス

2016 年 10 月 27 日 - 機械翻訳について
その他のバージョン: PDFpdf | 英語版 (2015 年 8 月 22 日) | フィードバック

概要

このドキュメントでは、Nexus オペレーティング システム(NX-OS)リリース 6.0(2) が稼働している Cisco Nexus 3500 シリーズ スイッチ プラットフォームで、システムのヘルス チェックを実行するために使用される一般的なプロセスについて説明します。 

著者:Cisco TAC エンジニア、Yogesh Ramdoss、Matt Blanshard

CPU およびメモリ使用量のモニタ

システムの CPU およびメモリの使用量の概要を受信するには、show system resources コマンドを入力します。

switch# show system resources 
Load average: 1 minute: 0.32 5 minutes: 0.13
  15 minutes: 0.10
Processes: 366 total, 2 running
CPU states: 5.5% user, 12.0% kernel, 82.5% idle
  CPU0 states: 10.0% user, 18.0% kernel,
  72.0% idle
  CPU1 states: 1.0% user, 6.0% kernel, 93.0% idle
Memory usage: 4117064K total, 2614356K used,
  1502708K free
Switch#

CPU サイクルまたはメモリを消費するプロセスの詳細が必要な場合は、show process cpu sort コマンドおよび show system internal kernel memory usage コマンドを入力します。

switch# show process cpu sort
PID    Runtime(ms)  Invoked   uSecs  1Sec    Process
-----  -----------  --------  -----  ------  -----------
 3239     55236684  24663045   2239    6.3%  mtc_usd
 3376          776      7007    110    2.7%  netstack
   15     26592500 178719270    148    0.9%  kacpid
 3441      4173060  29561656    141    0.9%  cfs
 3445      7646439   6391217   1196    0.9%  lacp
 3507     13646757  34821232    391    0.9%  hsrp_engine
    1        80564    596043    135    0.0%  init
    2            6       302     20    0.0%  kthreadd
    3         1064    110904      9    0.0%  migration/0
<snip>
switch# show system internal kernel memory usage 
MemTotal:      4117064 kB
MemFree:       1490120 kB
Buffers:           332 kB
Cached:        1437168 kB
ShmFS:         1432684 kB
Allowed:       1029266 Pages
Free:           372530 Pages
Available:      375551 Pages
SwapCached:          0 kB
Active:        1355724 kB
Inactive:       925400 kB
HighTotal:     2394400 kB
HighFree:       135804 kB
LowTotal:      1722664 kB
LowFree:       1354316 kB
SwapTotal:           0 kB
SwapFree:            0 kB
Dirty:              12 kB
Writeback:           0 kB
AnonPages:      843624 kB
Mapped:         211144 kB
Slab:            98524 kB
SReclaimable:     7268 kB
SUnreclaim:      91256 kB
PageTables:      19604 kB
NFS_Unstable:        0 kB
Bounce:              0 kB
WritebackTmp:        0 kB
CommitLimit:   2058532 kB
Committed_AS: 10544480 kB
VmallocTotal:   284664 kB
VmallocUsed:    174444 kB
VmallocChunk:   108732 kB
HugePages_Total:     0
HugePages_Free:      0
HugePages_Rsvd:      0
HugePages_Surp:      0
Hugepagesize:     2048 kB
DirectMap4k:      2048 kB
DirectMap2M:   1787904 kB
switch#

出力には、ハイ メモリ領域を NX-OS が使用し、ロー メモリ領域をカーネルが使用していることが示されています。 MemTotalMemFree の値は、スイッチで使用可能なメモリの合計を示しています。

メモリ使用量のアラートを生成するには、次のようにスイッチを設定します。

switch(config)# system memory-thresholds minor 50 severe 70 critical 90

: このドキュメントで使用している 507090 の値は単なる例です。 必要に応じてしきい値制限を選択してください。

ハードウェア診断のステータスの確認

ハードウェア診断のステータスを確認するには、show diagnostic result all コマンドを入力します。 すべてのテストに合格し、Overall Diagnostic ResultPASS であることを確認します。

switch# show diagnostic result all 
Current bootup diagnostic level: complete
Module 1: 48x10GE Supervisor  SerialNo : <serial #>
  Overall Diagnostic Result for Module 1 : PASS
  Diagnostic level at card bootup: complete
  Test results: (. = Pass, F = Fail, I = Incomplete, U = Untested, A = Abort)
     1) TestUSBFlash ------------------------> .
     2) TestSPROM ---------------------------> .
     3) TestPCIe ----------------------------> .
     4) TestLED -----------------------------> .
     5) TestOBFL ----------------------------> .
     6) TestNVRAM ---------------------------> .
     7) TestPowerSupply ---------------------> .
     8) TestTemperatureSensor ---------------> .
     9) TestFan -----------------------------> .
    10) TestVoltage -------------------------> .
    11) TestGPIO ----------------------------> .
    12) TestInbandPort ----------------------> .
    13) TestManagementPort ------------------> .
    14) TestMemory --------------------------> .
    15) TestForwardingEngine ----------------> .
<snip>

ハードウェア プロファイルの表示

スイッチに設定されている現在のハードウェア プロファイルおよびハードウェア テーブルの使用量を確認するには、show hardware profile status コマンドを入力します。

switch# show hardware profile status 
Hardware table usage:
Max Host Entries = 65535, Used = 341
Max Unicast LPM Entries = 24576, Used = 92
Max Multicast LPM Entries = 8192, Used (L2:L3) = 1836 (1:1835)
Switch#

Host EntriesUnicast/Multicast Longest Prefix Match(LPM)Entries の使用量が、指定された制限内であることを確認します。

: スイッチの最適なパフォーマンスのためには、適切なハードウェア プロファイル テンプレートを選択することが重要です。

特定のしきい値レベルで syslog を生成するには、次のようにスイッチを設定します。

switch(config)# hardware profile multicast syslog-threshold ?
  <1-100>  Percentage

switch(config)# hardware profile unicast syslog-threshold ?
  <1-100>  Percentage

: デフォルトのしきい値は、ユニキャストとマルチキャストのいずれも 90 % です。

詳細については、インストールされたライセンスおよび有効な機能に基づく設定の詳細について説明した『PIM の設定』の記事を参照してください。 また、転送テーブルを最適化するには、『Cisco Nexus 3000 シリーズ スイッチ: 転送テーブルの概要、設定、および調整』の記事を参照してください。

実行中のバッファの監視

アクティブ バッファ モニタリング(ABM)によって詳細なバッファ占有データが得られ、輻輳のホットスポットを詳しく分析できます。 この機能は次の 2 種類の動作モードに対応しています。 ユニキャスト モードおよびマルチキャスト モード。

ユニキャスト モードの場合、ABM はバッファブロックごとのバッファ使用量データと 48 ポートすべてのユニキャスト バッファ使用率をモニタおよび管理します。 マルチキャスト モードでは、バッファブロックごとのバッファ使用量データとバッファブロックごとのマルチキャスト バッファ使用率をモニタおよび管理します。

: 詳細については、『Cisco Nexus 3548 アクティブ バッファ モニタリング』の記事を参照してください。 この記事の図 4 から、バッファ使用量が 22:15:32 に最も高くなり 22:15:37 まで続いていることがわかります。 またヒストグラムには、使用量が突然増加したことや、バッファ枯渇時の速度も示されています。 低速のレシーバが存在する場合(複数の 10 Gbps レシーバの中に 1 Gbps レシーバが 1 つ混在している場合など)、パケット ドロップを防ぐには、次のような設定をする必要があります。 hardware profile multicast slow-receiver port <x>

インターフェイス カウンタと統計情報のモニタ

トラフィック損失をモニタするには、show interface ethernet x/y コマンドを入力します。 このコマンドの出力は、基本的なトラフィックレート情報、およびポートレベルのドロップやエラーを示します。

switch# show interface eth1/10
Ethernet1/10 is up
 Dedicated Interface
  Belongs to Po1
  Hardware: 100/1000/10000 Ethernet, address: 30f7.0d9c.3b51
  (bia 30f7.0d9c.3b51)
  MTU 1500 bytes, BW 10000000 Kbit, DLY 10 usec
  reliability 255/255, txload 1/255, rxload 1/255
  Encapsulation ARPA
  Port mode is trunk
  full-duplex, 10 Gb/s, media type is 10G
  Beacon is turned off
  Input flow-control is off, output flow-control is off
  Rate mode is dedicated
  Switchport monitor is off
  EtherType is 0x8100
  Last link flapped 3d21h
  Last clearing of "show interface" counters never
  14766 interface resets
  30 seconds input rate 47240 bits/sec, 68 packets/sec
  30 seconds output rate 3120720 bits/sec, 3069 packets/sec
  Load-Interval #2: 5 minute (300 seconds)
    input rate 50.18 Kbps, 52 pps; output rate 3.12 Mbps, 3.05 Kpps
  RX
    4485822 unicast packets  175312538 multicast packets  388443 broadcast
    packets
    180186040 input packets  9575683853 bytes
    0 jumbo packets  0 storm suppression bytes
    1 runts  0 giants  1 CRC  0 no buffer
    2 input error  0 short frame  0 overrun   0 underrun  0 ignored
    0 watchdog  0 bad etype drop  0 bad proto drop  0 if down drop
    0 input with dribble  260503 input discard
    0 Rx pause
  TX
    159370439 unicast packets  6366799906 multicast packets  1111 broadcast
    packets
    6526171456 output packets  828646014117 bytes
    0 jumbo packets
    0 output errors  0 collision  0 deferred  0 late collision
    0 lost carrier  0 no carrier  0 babble 0 output discard
    0 Tx pause

switch#

input または output discards でゼロ以外の値が示されている場合は、ドロップされたパケットがユニキャストであるかマルチキャストであるか、もしくはその両方かを特定します。

switch# show queuing interface ethernet 1/10
Ethernet1/10 queuing information:
  TX Queuing
    qos-group  sched-type  oper-bandwidth
        0       WRR            100

  RX Queuing
    Multicast statistics:
        Mcast pkts dropped                      : 0
    Unicast statistics:
    qos-group 0
    HW MTU: 1500 (1500 configured)
    drop-type: drop, xon: 0, xoff: 0
    Statistics:
        Ucast pkts dropped                      : 0
switch#

出力は、ドロップされたトラフィックの原因が Quality of Service(QoS)ではないことを示しています。 この場合はハードウェア MAC アドレスの統計情報を確認する必要があります。

switch# show hardware internal statistics device mac ?
  all         Show all stats
  congestion  Show congestion stats
  control     Show control stats
  errors      Show error stats
  lookup      Show lookup stats
  pktflow     Show packetflow stats
  qos         Show qos stats
  rates       Show packetflow stats
  snmp        Show snmp stats

トラフィック ドロップのトラブルシューティングを実行する場合、確認すべき主なオプションは、congestionerrors、および qos です。 pktflow オプションは、特定のパケットサイズ範囲で RX および TX 方向のトラフィック統計情報を示します。

switch# show hardware internal statistics device mac errors port 10
|------------------------------------------------------------------------|
| Device: L2/L3 forwarding ASIC   Role:MAC                               |
|------------------------------------------------------------------------|
Instance:0
ID   Name                                          Value              Ports
--   ----                                          -----              -----
198  MTC_MB_CRC_ERR_CNT_PORT9                      0000000000000002   10 -
508  MTC_PP_CNT_PORT1_RCODE_CHAIN3                 0000000000000002   10 -
526  MTC_RW_EG_PORT1_EG_CLB_DROP_FCNT_CHAIN3       000000000054da5a   10 -
3616 MTC_NI515_P1_CNT_TX                           0000000000000bed   10 -
6495 TTOT_OCT                                      000000000005f341   10 -
7365 RTOT                                          0000000000000034   10 -
7366 RCRC                                          0000000000000001   10 -
7374 RUNT                                          0000000000000001   10 -
9511 ROCT                                          00000000000018b9   10 -
10678 PORT_EXCEPTION_ICBL_PKT_DROP                 000000000003f997   10 -

: 16 進数値の 0x3f997 は、10 進形式では 260503 になります。

switch# show interface eth1/10
Ethernet1/10 is up
<snip>  0 input with dribble  
260503 input discard
<snip>

出力の PORT_EXCEPTION_ICBL_PKT_DROP エラー メッセージは、ポートで受信したトラフィックにスイッチで有効になっていない VLAN の Dot1Q タグがあることを示しています。

QoS が原因でトラフィック ドロップが発生する別の例を次に示します。

switch# show interface ethernet 1/11

Ethernet1/11 is up
<snip>
  TX

<snip>
    0 output errors  0 collision  0 deferred  0 late collision
    0 lost carrier  0 no carrier  0 babble 6153699 output discard
    0 Tx pause
switch#
switch# show queuing interface ethernet 1/11

Ethernet1/11 queuing information:
  TX Queuing
    qos-group  sched-type  oper-bandwidth
        0       WRR            100

  RX Queuing
    Multicast statistics:
        Mcast pkts dropped                      : 0
    Unicast statistics:
    qos-group 0
    HW MTU: 1500 (1500 configured)
    drop-type: drop, xon: 0, xoff: 0
    Statistics:
        Ucast pkts dropped                      : 6153699

: 出力は、6153699 個のパケットが受信方向でドロップされたことを示していますが、それは誤りです。 Cisco Bug ID CSCuj20713 を参照してください。

switch# show hardware internal statistics device mac all | i 11|Port

(result filtered for relevant port)
ID   Name           Value              Ports
<snip>
5596 TX_DROP        00000000005de5e3   11 -  <--- 6153699 Tx Drops in Hex
<snip>
10253 UC_DROP_VL0   00000000005de5e3   11 -  <--- Drops for QoS Group 0 in Hex
<snip>

要約すると、パケット ドロップをキャプチャするために使用するコマンドは次のとおりです。

  • show interface ethernet x/y
  • show queuing interface ethernet x/y
  • show hardware internal statistics device mac errors port <port #>

コントロール プレーン ポリシング統計情報のモニタ

コントロール プレーン ポリシング(CoPP)は、ネットワークの安定性を確保するためにコントロール プレーンを保護します。 詳細については、『コントロール プレーン ポリシングの設定』の記事を参照してください。

CoPP 統計情報をモニタするには、show policy-map interface control-plane コマンドを入力します。

switch# show policy-map interface control-plane 
Control Plane
  service-policy  input: copp-system-policy

    class-map copp-s-ping (match-any)
      match access-group name copp-system-acl-ping
      police pps 100 , bc 0 packets
        HW Matched Packets   30
        SW Matched Packets   30
    class-map copp-s-l3destmiss (match-any)
      police pps 100 , bc 0 packets
        HW Matched Packets   76
        SW Matched Packets   74
    class-map copp-s-glean (match-any)
      police pps 500 , bc 0 packets
        HW Matched Packets   103088
        SW Matched Packets   51544
<snip>

出力では、copp-s-ping のハードウェア(HW)とソフトウェア(SW)の Matched Packets が同じです。 つまり、HW でカウントされたパケットの数が 30(すべてインバンド CPU ドライバに送信)で、それと同じ数を SW が CPU に送信する前にカウントしているということです。 これは、設定された 100 p/s の制限内であるため、CoPP によってドロップされたパケットがないことを示します。

Address Resolution Protocol(ARP)のキャッシュ エントリがない IP アドレス宛のパケットに一致する copp-s-glean クラスでは、HW に表示されたパケット数が 103,088 である一方、SW の一致は 51544 だけです。 これは、パケット レートが 500 p/s を超えているため、CoPP が 51544 個(103088 - 51544)のパケットをドロップしたことを示します。

SW のカウンタは CPU のインバンド ドライバから取得され、HW のカウンタは HW にプログラムされているアクセス コントロール リスト(ACL)から取得されます。 HW Matched Packets がゼロで、SW Matched Packets がゼロ以外の値という状況が発生した場合、その特定のクラスマップの HW には ACL がなく、それは正常である可能性があります。 これら 2 つのカウンタが同時にポーリングされない可能性があることにも注意が必要です。2 つのカウンタの差が大きく、トラブルシューティングを行う場合にのみカウンタ値を使用してください。

CoPP の統計情報は、HW でスイッチングされたパケットに直接関係していない可能性がありますが、スイッチ経由で送信されるパケットが CPU にパントされている場合は関連しています。 パケットのパントは、グリーニング隣接関係がある場合など、さまざまな理由で発生します。

CoPP ポリシーには次の 3 種類があることに注意してください。 デフォルト、レイヤ 2(L2)、およびレイヤ 3(L3)。 導入シナリオに基づいて適切なポリシーを選択し、監視結果に応じて CoPP ポリシーを変更します。 CoPP を微調整するため、定期的なチェックに加えて、新しいサービスやアプリケーションの導入後、およびネットワークの再設計後にも確認してください。

: カウンタをクリアするには、clear copp statistics コマンドを入力します。

ブートフラッシュ ファイル システムのヘルス チェックの実行

ブートフラッシュ ファイル システムのヘルス チェックを実行するには、system health check bootflash コマンドを入力します。

switch# system health check bootflash 
Unmount successful...
Checking any file system errors...Please be patient...
Result: bootflash filesystem has no errors
done.
Remounting bootflash ...done.
switch#

注意: テストを実行すると、ファイル システムはマウント解除され、テスト完了後に再マウントされます。 テストの実行中はファイル システムにアクセスできません。

システム コアおよびプロセス ログの収集

注意: この項で説明されているコマンドを使用する場合は、システムでプロセスのリセットまたはクラッシュが発生しておらず、コア ファイルまたはプロセス ログが生成されていないことを確認してください。

システム コアとプロセス ログを収集するには、次のコマンドを入力します。

switch# show cores
Module  Instance  Process-name     PID       Date(Year-Month-Day Time)
------  --------  ---------------  --------  -------------------------
switch#

switch# show process log
Process          PID     Normal-exit  Stack  Core   Log-create-time
---------------  ------  -----------  -----  -----  ---------------
ethpc            4217              N      N      N  Tue Jun  4 01:57:54 2013

: このプロセスの詳細については、『Cisco Nexus スイッチング プラットフォームからのコア ファイルの取得』の記事を参照してください。

関連情報



Document ID: 116699