Как узнать использование дискового пространства?

У меня есть докер Ubuntu, работающий на хосте CentOS в Google Cloud. Докер запускает приложение с весенней загрузкой, используемое для загрузки изображений в S3. На локальный диск ничего не сохраняю. Примерно каждые 2 недели у меня возникают проблемы с дисковым пространством (на устройстве не остается места). Я запускаю на хост-машине следующее:

[james@api /]$ df -h
Filesystem      Size  Used Avail Use% Mounted on
/dev/sda1       1.0T   58G  967G   6% /
devtmpfs         15G     0   15G   0% /dev
tmpfs            15G     0   15G   0% /dev/shm
tmpfs            15G   26M   15G   1% /run
tmpfs            15G     0   15G   0% /sys/fs/cgroup
tmpfs           3.0G     0  3.0G   0% /run/user/0
tmpfs           3.0G     0  3.0G   0% /run/user/1000

[james@api /]$ sudo du -hs * | sort -rh | head -5
3.3G    var
1.5G    usr
154M    boot
58M     srv
34M     etc

Я запускал то же самое в контейнере докеров:

[root@ea23811c1871 /]# df -h 
Filesystem      Size  Used Avail Use% Mounted on
overlay         1.0T   58G  966G   6% /
tmpfs            64M     0   64M   0% /dev
tmpfs            15G     0   15G   0% /sys/fs/cgroup
/dev/sda1       1.0T   58G  966G   6% /var/log
shm              64M     0   64M   0% /dev/shm
tmpfs            15G     0   15G   0% /proc/acpi
tmpfs            15G     0   15G   0% /proc/scsi
tmpfs            15G     0   15G   0% /sys/firmware

[root@ea23811c1871 /]# du -hs * | sort -rh | head -5
1.2G    usr
139M    var
2.7M    etc
36K     tmp
28K     root

Мой вопрос: как мне найти, где прячется 58G ??

Спасибо, Hanan

1
задан 17 August 2018 в 10:43
2 ответа

В хост-компьютере запустите lsof и просмотрите удаленные файлы

lsof |grep delete

Возможно, процесс не освободил удаленный файл

0
ответ дан 4 December 2019 в 03:45

Прежде всего, если это еще не сделано, настройте мониторы и оповещения об использовании дискового пространства. У Nagios / Icinga есть несколько общих плагинов, которые легко настроить, или даже простой скрипт, который предупреждает вас, когда диск заполняется, здесь может быть полезен.

Затем вы должны проверить, сколько места занимает ваш контейнер, с помощью команд докеров (посмотрите docker ps -s , docker system df или docker inspect ) - внимательно прочтите справочные страницы перед их запуском). Также необходимо учитывать пространства, занимаемые пользователем файлов конфигурации для контейнеров, контрольной точки (если используется) и файлов журнала. Обычно исследуйте / var / lib / docker / , чтобы получить представление о том, какие файлы находятся в контейнере.

0
ответ дан 4 December 2019 в 03:45

Теги

Похожие вопросы