首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

一款超实用的网络实时监控工具,助你轻松掌握 Docker 容器网络状态

1. 什么是 check-docker-connection

check-docker-connection 主要用于监控 Docker 容器的网络连接情况。它可以显示指定容器的网络连接状态,包括 TCP 和 UDP 连接的数量。

用户可以通过容器 ID 或名称来指定要监控的容器,或者指定显示连接数最多的前 N 个容器。输出结果以表格形式展示,方便用户查看。

check-docker-connection 主要功能包括:

列出指定容器的网络连接状态,包括:

已建立连接(ESTABLISHED)

TIME_WAIT 状态的连接

FIN_WAIT2 状态的连接

CLOSE_WAIT 状态的连接

监听状态(LISTEN)

SYN_SENT 状态的连接

SYN_RECV 状态的连接

UDP 连接数

2. check-docker-connection 具体使用方法

环境要求

需要安装 Docker。

宿主机上必须安装有 netstat 和 nsenter 命令,以便访问容器的网络命名空间。如果没有,请自行安装,各大发行版上通常都是 net-tools 和 util-linux 包。

命令行参数

-c: 指定一个或多个容器的 ID 或名称,多个容器用逗号分隔。

-n: 显示连接数最多的前 N 个容器。

注意:-c 和 -n 参数不能同时使用。

运行 check-docker-connection

$ docker run --rm -v /var/run/docker.sock:/var/run/docker.sock --pid=host --net=host --privileged 80imike/check-docker-connection

注意事项:

check-docker-connection 需要访问 Docker socket,所以我们挂载了 /var/run/docker.sock。

我们使用 --pid=host 和 --net=host 来允许容器访问主机的进程和网络命名空间。

--privileged 标志允许容器使用 nsenter 命令。

3. check-docker-connection 使用实例

示例 1:监控单个容器

要监控名为 traefik 的容器,可以使用以下命令:

$ docker run --rm -v /var/run/docker.sock:/var/run/docker.sock --pid=host --net=host --privileged 80imike/check-docker-connection -c traefik

这将输出该容器的所有网络连接状态。

示例 2:监控多个容器

要监控多个容器,例如 traefik 和 splayer,可以使用以下命令:

$ docker run --rm -v /var/run/docker.sock:/var/run/docker.sock --pid=host --net=host --privileged 80imike/check-docker-connection -c traefik,splayer

这将显示这两个容器的网络连接状态。

示例 3:显示连接数最多的前 3 个容器

要显示连接数最多的前 3 个容器,可以使用以下命令:

$ docker run --rm -v /var/run/docker.sock:/var/run/docker.sock --pid=host --net=host --privileged 80imike/check-docker-connection -n 3

这将输出连接数最多的三个容器的网络连接状态。

通过以上示例,用户可以轻松地监控 Docker 容器的网络连接状态,帮助进行网络性能分析和故障排查。

关注 工 仲 好:IT运维大本营,v:glab-mary,参加活动,免费获取红帽RHCE官方教材

  • 发表于:
  • 原文链接https://page.om.qq.com/page/OtEhWlQKPw-mEvyxrOZ68Qmw0
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券