2.3. インスタンス設定の OVS の確認


vhostuser DMA が確実に機能するようにするには、OVS-DPDK ポートを使用してインスタンスを設定し、フレーバーを使用して専用の CPU と Huge Page を有効にします。詳しくは、『オーバークラウド の高度なカスタマイズ』の「ステップ 3」および「OVS-DPDK 用インスタンスのデプロイ 」を参照してください。

インスタンス設定を確認するには、次の手順を実行します。

  1. インスタンスが CPU を固定していることを確認します。専用の CPU は、virsh を使用して特定できます。

    $ sudo virsh vcpupin 2
  2. インスタンスに使用されているエミュレータースレッドが、そのインスタンスに割り当てられている同じ vCPU で実行されていないことを確認します。

    $ sudo virsh emulatorpin 2
    注記

    Red Hat OpenStack Platform 12 以降、フレーバーでエミュレーターピンを設定することができます。Configuring emulator threads policy with Red Hat OpenStack Platform 12 を参照してください。

    以前のバージョンでは、インスタンスの電源をオンにする際に、エミュレータースレッドピニングを手動で行う必要があります。About the impact of using virsh emulatorpin in virtual environments with NFV, with and without isolcpus, and about optimal emulator thread pinning を参照してください。

  3. インスタンスが Huge Page を使用していることを確認します。これは、最適なパフォーマンスに必要です。

    $ sudo virsh numatune 1
  4. インスタンスの受信キューがポーリングモードドライバー (PMD) によって処理されていることを確認します。

    ポートとキューは、PMD 間で均等にバランスを取る必要があります。最適なのは、ネットワークアダプターと同じ NUMA ノードにある CPU がポートをサービスすることです。

    $ sudo ovs-appctl dpif-netdev/pmd-rxq-show
    
    pmd thread numa_id 0 core_id 2:
        isolated : false
        port: dpdk0               queue-id:  1    pmd usage:  0 %
        port: dpdk1               queue-id:  0    pmd usage:  0 %
        port: vhu94ccc316-ea      queue-id:  0    pmd usage:  0 %
    pmd thread numa_id 1 core_id 3:
        isolated : false
    pmd thread numa_id 0 core_id 22:
        isolated : false
        port: dpdk0               queue-id:  0    pmd usage:  0 %
        port: dpdk1               queue-id:  1    pmd usage:  0 %
        port: vhu24e6c032-db      queue-id:  0    pmd usage:  0 %
    pmd thread numa_id 1 core_id 23:
        isolated : false
  5. PMD の統計を表示します。これは、受信キューが PMD 間でどの程度バランスが取れているかを判断するのに役立ちます。詳細については、Open vSwitch のドキュメントの PMD Threads を参照してください。

    注記

    pmd-rxq-rebalance オプションが OVS 2.9.0 で追加されました。このコマンドは、最新の rxq 処理サイクル情報に基づいて PMD 間で均等にバランスを取るために、新しい PMD キュー割り当てを実行します。

    pmd-stats-show コマンドは、PMD が実行されてから、または統計が最後にクリアされてからの完全な履歴を表示します。クリアされていない場合は、ポートが設定されてデータが流れる前に統計に組み込まれます。データパス (通常はそうです) の負荷を確認するために使用されている場合は、役に立ちません。

    システムを定常状態にし、統計をクリアし、数秒待ってから統計を表示するのが最善です。これにより、データパスの正確なイメージが提供されます。

    次のコマンドを使用して、PMD の統計を表示します。

    $ sudo ovs-appctl dpif-netdev/pmd-stats-show
    
    pmd thread numa_id 0 core_id 2:
        packets received: 492207
        packet recirculations: 0
        avg. datapath passes per packet: 1.00
        emc hits: 419949
        megaflow hits: 2485
        avg. subtable lookups per megaflow hit: 1.33
        miss with success upcall: 69773
        miss with failed upcall: 0
        avg. packets per output batch: 1.00
        idle cycles: 1867450752126715 (100.00%)
        processing cycles: 5274066849 (0.00%)
        avg cycles per packet: 3794046054.19 (1867456026193564/492207)
        avg processing cycles per packet: 10715.14 (5274066849/492207)
    pmd thread numa_id 1 core_id 3:
        packets received: 0
        packet recirculations: 0
        avg. datapath passes per packet: 0.00
        emc hits: 0
        megaflow hits: 0
        avg. subtable lookups per megaflow hit: 0.00
        miss with success upcall: 0
        miss with failed upcall: 0
        avg. packets per output batch: 0.00
    pmd thread numa_id 0 core_id 22:
        packets received: 493258
        packet recirculations: 0
        avg. datapath passes per packet: 1.00
        emc hits: 419755
        megaflow hits: 3223
        avg. subtable lookups per megaflow hit: 1.49
        miss with success upcall: 70279
        miss with failed upcall: 1
        avg. packets per output batch: 1.00
        idle cycles: 1867449561100794 (100.00%)
        processing cycles: 6465180459 (0.00%)
        avg cycles per packet: 3785961963.68 (1867456026281253/493258)
        avg processing cycles per packet: 13107.10 (6465180459/493258)
    pmd thread numa_id 1 core_id 23:
        packets received: 0
        packet recirculations: 0
        avg. datapath passes per packet: 0.00
        emc hits: 0
        megaflow hits: 0
        avg. subtable lookups per megaflow hit: 0.00
        miss with success upcall: 0
        miss with failed upcall: 0
        avg. packets per output batch: 0.00
    main thread:
        packets received: 16
        packet recirculations: 0
        avg. datapath passes per packet: 1.00
        emc hits: 1
        megaflow hits: 9
        avg. subtable lookups per megaflow hit: 1.00
        miss with success upcall: 6
        miss with failed upcall: 0
        avg. packets per output batch: 1.00
  6. PMD 統計をリセットします。pmd-stats-show コマンドは、最後の pmd-stats-clear コマンド以降の PMD 統計を表示します。以前に発行された pmd-stats-clear がなかった場合は、PMD の実行が開始されてからのデータが含まれています。

    負荷がかかっているシステムを調べている場合は、PMD 統計をクリアしてから、それらを表示すると便利です。そうでない場合には、(トラフィックの流れる前)システムがロードしていないとき、統計には以前の時間からのデータが含まれる可能性があります。

    次のコマンドを使用して、PMD 統計をリセットします。

    $ sudo ovs-appctl dpif-netdev/pmd-stats-clear
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

Red Hat ドキュメントについて

Legal Notice

Theme

© 2026 Red Hat
トップに戻る