ドッカーコンテナの出力トラフィックにNetEm遅延を適用します。通常、実行します。ドッカーコンテナインターフェイスにNetEM WAN遅延を適用します。
# /sbin/tc qdisc add dev $INTERFACE root netem delay ${DELAY}ms
問題は、コンテナが接続されているインターフェイスについてはわかりません。
例えば、私は次のコンテナ実行している:私のホストからNetEmルールを追加している私は何をしたい
/ # ping 8.8.8.8
PING 8.8.8.8 (8.8.8.8): 56 data bytes
64 bytes from 8.8.8.8: seq=0 ttl=44 time=39.783 ms
64 bytes from 8.8.8.8: seq=1 ttl=44 time=39.694 ms
:
docker run --rm -it alpine /bin/sh
をしてから、私は8.8.8.8にpingを実行machineとping時間の変更を参照してください。
私はifconfig
を実行した場合、私は(他のコンテナが実行されているので)仮想イーサネットインターフェイスのいくつかが存在していることがわかり、私は、私が興味を持っていた容器に接続された1かわからない:
# ifconfig
veth09fa1c5 Link encap:Ethernet HWaddr 96:73:c9:15:93:b8
inet6 addr: fe80::9473:c9ff:fe15:93b8/64 Scope:Link
.....
vethf05ef93 Link encap:Ethernet HWaddr ca:ea:97:ef:cd:9d
inet6 addr: fe80::c8ea:97ff:feef:cd9d/64 Scope:Link
.....
私はこれらのインターフェースの1つにNetEmルールを適用する必要があると思います。あれは正しいですか?
netemをsepに適用する方がより明確な選択肢だと思いますvethに関するドナーネットワークを確立する。ありがとう。 – gaetano