S3 external storage - excessive network traffic?



Nextcloud version (eg, 20.0.5): 24
The latest docker image using the example base apache docker-compose
Operating system and version (eg, Ubuntu 20.04): Debian 11
Apache or nginx version (eg, Apache 2.4.25): Apache
PHP version (eg, 7.4): replace me

The issue you are facing:

Elevated network traffic between Nextcloud instance and S3 server even when no file transfer or navigation is in progress.

Steps to replicate it:

Nextcloud is running on a VPS. MinIO S3 object storage server is running locally. The S3 storage is connected as external storage in Nextcloud. I’ve been watching the network traffic between the local MinIO server and the VPS. As soon as I log into the Nextcloud instance, I see almost full saturation of my upload link (35Mb/s) and significant download traffic (5-20Mb/s). This happens even if the logged-in user is not browsing the external storage. And this elevated traffic continues for several minutes after the user logs out.

Is this normal?

I’d expect the whole file index to be scanned for the first time. So if you start with a user and very few files on the S3 storage, is it the same? And do you check for changes each time, is this option enabled? See also these related topics with the hint of the “check for changes”:

I’m seeing this with a “fresh” install of both minio and nextcloud. Only one user on both services. Total file count in the single bucket is less than a dozen. But they are all 100-1000MB in size (video files). What appeared to be happening is that there was traffic as if a download (from minio → nextcloud → web client) were taking place any time the one nextcloud user was logged in to nextcloud. After logging out (and a severals minutes wait) the traffic dropped back down to virtually nothing. Could this be preview generation? I let it sit for almost a day without making any changes to files and still saw this behavior. I’ll look for the check changes option although I was hoping to also connect clients to the minio bucket directly and have nextcloud watch for those client changes.

would have been my next guess…