Траффик на windows-gui ноде

Обнаружил буквально со вчерашнего вечера, что траффик на windows-gui ноде упал практически до нуля, хотя по соседству в докере на том же IP трафик остался прежний, порядка 800Г в сутки. Как будто всё как обычно, только траффика нет. При выключении ноды в докере - всё то же самое: траффик не появляется вообще.

Единственное что по моему мнению может быть, так это разные версии: в gui версия 1.104.5, а в докере - 1.105.4

P.S. Ошибки есть только такого типа:

2024-06-26T08:19:25+03:00 ERROR piecestore download failed {“Piece ID”: “3YRZ6PNID22L62FSIBIC743T26ZT3JRMVHEZ3TXEQJI64GNLORXA”, “Satellite ID”: “12EayRS2V1kEsWESU9QMRseFhdxYxKicsiFmxrsLZHeLUtdps3S”, “Action”: “GET”, “Offset”: 0, “Size”: 2319104, “Remote Address”: “103.214.68.73:58312”, “error”: “write tcp 192.168.1.3:28967->103.214.68.73:58312: wsasend: An existing connection was forcibly closed by the remote host.”, “errorVerbose”: “write tcp 192.168.1.3:28967->103.214.68.73:58312: wsasend: An existing connection was forcibly closed by the remote host.\n\tstorj.io/drpc/drpcstream.(*Stream).rawFlushLocked:409\n\tstorj.io/drpc/drpcstream.(*Stream).MsgSend:470\n\tstorj.io/common/pb.(*drpcPiecestore_DownloadStream).Send:408\n\tstorj.io/storj/storagenode/piecestore.(*Endpoint).sendData.func1:863\n\tstorj.io/common/rpc/rpctimeout.Run.func1:22”}

Здравствуйте @semkd,
Добро пожаловать обратно!

Осталось ли свободное место на диске/dashboard для этого узла?

Приведённый пример ошибки - обычная отмена “длинного хвоста”, когда ваш узел проиграл гонку другим узлам за кусочек этого сегмента.

Да, ещё более 3Т свободного места.

По данным и диска и dashboard?
Мои узлы все на 1.104.5, но трафик они принимали, пока не осталось по 5ГБ на каждой


там где ровная линия - они были полные, где холмик - корзина почистилась немного. Но теперь они снова полные.
1 узел Windows Service, другие 2 - Docker.

я сейчас обнаружил то же самое. Не могу понять в чём причина, место на диске есть. Версия v1.104.5. Проксмокс 8, контейнер lxc, всех ресурсов хватает, обновлений не было. Есть ещё 3 ноды у которых всё норм

Свободное место и на диске, и в dashboard идентичны.
Сервис storj перезапускал. Всё тоже самое.

Может никто не загружает? Или загружает, но с geofence?
Я даже проверить не могу - узлы полные.

рядом другая нода, загружает

а что будет, если место на диске правда закончится?

Вот я всё таки нашел несовпадение: свободное место на диске 5Г всего (а мне эта куча цифр показалась с первого взгляда как 5Т), а на dashboard - 3.34T.

Тогда возникает другой вопрос: почему dashboard показывает свободное место неправильно?

В докере тоже разница около 3Т между dashboard и реально свободным местом.

В программном обеспечении узла есть “стоп-кран”, сейчас он увеличен до 5ГБ, как только узел обнаружит, что осталось меньше 5ГБ в разрешённом для использовании месте или на диске, он отправит уведомление сателлитам, что он - полный и ingress должен перестать приходить.

Вот у вас стоп-кран и сработал.
Расхождение связано с тем, что базы данных не обновлены актуальной информацией об использовании.
Вам необходимо включить used-space-filewalker, если вы его выключали (он включен по умолчанию), сохранить конфиг и перезапустить узел.
После перезапуска нужно убедиться, что у вас нет ошибок в логах связанных с базой данных или filewalker (искать error и database, error и filewalker).
Если ошибок не возникает, всё, что нужно сделать - это дождаться, когда filewalker закончит подсчёт для каждого из доверенных сателлитов. Следить можно так:

Также необходимо удалить данные не доверенных сателлитов (сами они уже не удалятся):

Если у вас есть ошибки связанные с filewalker и/или database - данные на dashboard будут некорректные.

Вот у вас стоп-кран и сработал.

А почему этот стоп-кран не сработал?
storage2.monitor.minimum-disk-space: 500.00 GB

Вам необходимо включить used-space-filewalker, если вы его выключали

В конфигурации я такого параметра не нашёл.

Потому что это - локальный мониторинг, опирающийся на то, что доступно в API (читай - в локальной БД), а не на то, что показывает система.

Запустил filewalker. Интересно, сколько времени займёт проверить 10Т диск?

Зависит. Если нету загрузок - диск может максимум 200 IOPS, на NTFS это обычно дольше. Посчитайте сколько кусочков, поделите на 100 (а может даже лучше на 50) и поймёте сколько времени это может занять. Более точной цифры вам никто не скажет.

Ещё можно попробовать найти в логах, сколько это в прошлый раз заняло и сколько было кусочков - можно попробовать спрогнозировать. Цифры для каждого сателлита наверняка разные будут.

А как в докере проверить, работает этот процесс или нет? (по аналогии с PowerShell)
В логе докера у меня вот такие ошибки от filewalker

P.S. При вычислении месячной выплаты, будет считаться, что у меня хранится 10Т или то, что показывает dashboard (5.66T)?

Если статус exit 1, это - всё. После этой ошибки он никогда не запустится сам до следующего рестарта узла. Следствие - использование не будет обновлено на dashboard.
Чинить - оптимизировать дисковую подсистему, либо кардинально менять (добавив SSD/RAM как кэш уровень, даже на Windows, но придётся использовать PowerShell). Либо - выключить Lazy mode, но тогда, правда, логов filewalker не будет и придётся следить опосредовано - по дисковой активности, по debug port, или в Resources Monitor (какая подпапка обрабатывается прямо сейчас).

Т.е. диск с узлом в докере полон ошибок? Или узел надо периодически перезапускать для того, чтобы filewalker успешно обрабатывал ошибки?

Диск может иметь ошибки, да. Стоит проверить его на ошибки.
Но тут скорее всего дело в другом - он стал слишком медленным. Например диск с NTFS надо периодически дефрагментировать и это выполняется Windows автоматически, если только вы не отключили это задание. Так же можно произвести оптимизацию NTFS:

Если у вас есть управляемый UPS, то можно включить кэш записи в параметрах диска (обе галки), если UPS нет, то наоборот - отключить обе галки, чтобы не потерять данные при отключении электричества.

Перезапуск происходит автоматически при обновлении узла (в среднем раз в две недели), так что специально перезапускать обычно не требуется, если только нет ошибок, как у вас.
Если вы произвели оптимизацию файловой системы, как описал выше - можете перезапустить узел и помониторить логи, чтобы все filewalker для всех доверенных сателлитов успешно завершились и у вас не было ошибок связанных с БД.
После этого значения на dashboard должны показывать корректное использование.

Действительно, уровень дефрагментации на диске под докером - 49%.
Вопрос, как сильно замедлится узел если я запущу сейчас дефрагментацию? Он не из старых дисков, ему чуть меньше 2 лет.