限制Docker容器上下行带宽
前言
在某些国内云服务器商,如果服务器带宽较小或者有Docker容器会跑满服务器带宽。
持续的高上下行,可能会收到一些服务器警告,或者怀疑被攻击而被封禁。
这个时候需要限制一些流量的进出带宽,以下针对Linux环境操作。
正文
安装WonderShaper
WonderShaper是一个允许用户限制一个或多个网络适配器带宽的脚本,依赖于tc流量控制工具。
以下命令都基于root权限执行,否则请使用sudo前缀执行。
1 | 拉取仓库 |
注意一些服务器未安装tc流量控制工具,需要进行额外安装。
1 | Centos 8 |
使用WonderShaper限流
查看需要的网卡名称
这里以docker的网卡为例,当然有需要限制其他网卡同理。
1 | ip addr |
设置网卡上下行
docker0
为网卡名称,-d
为下行、-u
为上行,单位为Kbps
1 | 限制docker0网卡为2M的上下行 |
查看网卡状态
1 | wondershaper -s -a docker0 |
恢复网卡上下行限制
1 | wondershaper -c -a docker0 |
使用iftop查看限流状态
iftop是监控某个应用或网卡流量的工具。
这里只是为了方便终端查看。也有其他同类型的,比如nload、nethogs等等。
安装
这里仅以Centos为例
1 | yum install -y iftop |
使用
显示本机所有进程的进出流量
1 | iftop |
查看指定网卡的进出流量
1 | iftop -i docker0 |
显示端口信息
1 | iftop -i docker0 -P |
End
其他工具: vnstat
本环境是因为没有多余的容器,所以直接限制的docker0网卡不会影响到其他服务。
有其他单独需求,限制单个容器的虚拟网卡应该同理。
- 标题: 限制Docker容器上下行带宽
- 作者: Lkeme
- 创建于 : 2024-04-15 14:25:52
- 更新于 : 2024-05-15 18:51:35
- 链接: https://mudew.com/2024/04/15/限制Docker容器上下行带宽/
- 版权声明: 本文章采用 CC BY-NC-SA 4.0 进行许可。
评论