Article ID: 117355, created on Oct 18, 2013, last review on Nov 5, 2014

  • Applies to:
  • Operations Automation
  • Panels
  • Virtuozzo
  • Virtuozzo containers for Linux
  • Virtuozzo hypervisor

症状

コンテナでネットワーク接続に問題が発生しています。

  • 以下を実行するとパケットドロップが発生します。

    ping <CT_IP_Address>
  • コンテナへの接続を試みると、待ち時間が長くなります。

原因

トラフィックシェーピングが正しく構成されていません。

解決策

  1. 仮想環境のトラフィックシェーピングがノードで有効になっているか確認します。

    [root@cs09 ~]# egrep 'RATE|TRAF|BOUND' /etc/sysconfig/vz
    TRAFFIC_SHAPING="yes"
    TOTALRATE="*:1:20000"
    RATE="*:1:8"
    
    
    [root@eq010212 ~]# egrep 'RATE|TRAF|BOUND' /etc/sysconfig/vz 
    TRAFFIC_SHAPING=yes 
    TOTALRATE="bond0.2620:1:102400"
    RATE="bond0.2620:1:8"

    RATE パラメータは、仮想マシンまたはコンテナに対して保証される送信トラフィック速度を指定します。

    RATEBOUND パラメータは、仮想マシンまたはコンテナで送信トラフィック用に使用できるネットワーク帯域幅が RATE 変数に指定された帯域幅の制限を受けるかどうかを指定します。

    (上の例では、デフォルト速度は 8 kbit/s です。)

  2. シェーピングは、個別コンテナに対して有効または無効にできます。

    [root@eq010212 ~]# grep -i rate /etc/vz/conf/*.conf
    /etc/vz/conf/101.conf:#RATE="eth0:1:1024 "
    /etc/vz/conf/101.conf:RATEBOUND="no"
    /etc/vz/conf/133.conf:RATEBOUND="yes"
    /etc/vz/conf/133.conf:RATE="eth0:1:102400 "
    /etc/vz/conf/147.conf:RATE="eth0:1:1024 "
    /etc/vz/conf/147.conf:RATEBOUND="no"
    /etc/vz/conf/151.conf:RATEBOUND="yes"
    /etc/vz/conf/151.conf:RATE="eth0:1:10240 "
    /etc/vz/conf/156.conf:RATEBOUND="yes"
    /etc/vz/conf/156.conf:RATE="eth0:1:102400 "
  3. コンテナの構成に指定されたデバイスが、"TOTALRATE" パラメータと同じであることを確認してください("TOTALRATE" に特定のデバイスが含まれている場合)。

    手順 2 の例では、TOTALRATE パラメータは "bond0.2620:1:102400" であり "*:1:8" ではないため、トラフィックシェーピングが正しく機能せず、eth0 を指定して速度の設定を試みると次のエラーメッセージが表示されます。

    # vzctl set CTID --rate eth0:1:102400
    Invalid rate: Device could not be found in TOTALRATE
  4. トラフィックシェーピングが機能しているか確認するには、以下を実行します。

    [root@eq010212 ~]# tc class list dev bond0.2620
    class cbq 1: root rate 102400Kbit (bounded,isolated) prio no-transmit
    class cbq 1:2 parent 1: leaf 2: rate 102400Kbit (bounded) prio 1
    class cbq 2: root rate 102400Kbit (bounded,isolated) prio no-transmit
    class cbq 2:65 parent 2: rate 8000bit prio 1
    class cbq 2:af parent 2: rate 10240Kbit (bounded) prio 1
    class cbq 2:85 parent 2: rate 102400Kbit (bounded) prio 1
    class cbq 2:d8 parent 2: rate 1024Kbit prio 1
    class cbq 2:9c parent 2: rate 102400Kbit (bounded) prio 1
    class cbq 2:ab7 parent 2: rate 10240Kbit prio 1
    class cbq 2:bc parent 2: rate 10240Kbit (bounded) prio 1
    class cbq 2:b2 parent 2: rate 102400Kbit (bounded) prio 1
    class cbq 2:93 parent 2: rate 1024Kbit prio 1
    class cbq 2:b6 parent 2: rate 1024Kbit prio 1
    class cbq 2:97 parent 2: rate 10240Kbit (bounded) prio 1
    class cbq 2:b5 parent 2: rate 1024Kbit prio 1

    この出力結果では、コンテナ ID が HEX 形式で表示されています(65 = 101、AF = 175 など)。

  5. ネットワークの問題がトラフィックシェーピングに起因するのかを確認するために、一時的にオフにすることもできます。

    # service vz shaperoff

    オンに戻すには、以下を実行します。

    # service vz shaperon

a26b38f94253cdfbf1028d72cf3a498b 2897d76d56d2010f4e3a28f864d69223 d02f9caf3e11b191a38179103495106f e8e50b42231236b82df27684e7ec0beb 0dd5b9380c7d4884d77587f3eb0fa8ef 5356b422f65bdad1c3e9edca5d74a1ae caea8340e2d186a540518d08602aa065 614fd0b754f34d5efe9627f2057b8642 56797cefb1efc9130f7c48a7d1db0f0c

Email subscription for changes to this article