排查kubernetes中高磁盘占用pod

satuo20 1年前 ⋅ 324 阅读

参考

# du命令查看dokcer目录使用的空间
du -sh --max-depth 1 /var/lib/docker/

# docker system df可以看到images和container占用信息
docker system df
# 查看pod占用空间
docker ps -a --format "table {{.Size}}\t{{.Names}}"

docker 格式化输出 需要对容器查询进行格式化输出,获得我们需要的信息。

以下是常用的输出信息

#获取镜像,ID,端口号,状态
docker ps -a --format "table {{.Image}}\t{{.ID}}\t{{.Ports}}\t{{.Status}}" 
#列出正在运行的容器
docker ps -a -f  "status=running"
#列出退出的容器
docker ps -a -f  "status=exited"
#查看容器磁盘信息
docker ps -a --format "table {{.Size}}\t{{.Names}}"
#获取容器的IP
docker inspect --format='{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' $(docker ps -q)
#获取容器的mac地址
docker inspect --format='{{range .NetworkSettings.Networks}}{{.MacAddress}}{{end}}' $(docker ps -a -q)
#获取容器name
docker inspect --format='{{.Name}}' $(docker ps -aq)
docker inspect --format='{{.Name}}' $(docker ps -aq)|cut -d"/" -f2
#获取容器的Hostname
docker inspect --format '{{ .Config.Hostname }}' $(docker ps -q)
#获取hostname,ip
docker inspect --format 'Hostname:{{ .Config.Hostname }}  Name:{{.Name}} IP:{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' $(docker ps -q)
#获取容器的log path
docker inspect --format='{{.LogPath}}' `docker ps -a -q`
#获取容器的镜像
docker inspect --format='{{.Config.Image}}' `docker ps -a -q`

全部评论: 0

    我有话说: