Azure / azure-storage-fuse

A virtual file system adapter for Azure Blob storage
Other
674 stars 209 forks source link

BlobFuse mounting size not matching with Cache Data Disk #1549

Closed kalirajann closed 3 weeks ago

kalirajann commented 1 month ago

Created RHEL 8 VM with Datadisk, Storage

VM Identity assigned Storage Blob Data Owner

Data Disk Partitioned to /etc/datadiskcache

Installed Blobfuse2

cat /etc/baseConfig-cache.yaml

logging:

type: syslog

level: log_debug

components:

libfuse:

attribute-expiration-sec: 120

entry-expiration-sec: 120

negative-entry-expiration-sec: 240

disablewritebackcache: false

ignoreopenflag: false

file_cache:

path: /etc/datadiskcache

timeout-sec: 120

max-size-mb: 4096

attr_cache:

timeout-sec: 7200

azstorage:

type: adls

account-name: xxx

endpoint: https://xxx.dfs.core.windows.net/

mode: MSI

container: ingestion

Mounted - blobfuse2 mount /azurecontainer --config-file=baseConfig-cache.yaml --allow-other

/dev/sdc1 512G 3.6G 509G 1% /etc/datadiskcache

blobfuse2 4.0G 0 4.0G 0% /azurecontainer

Why reported available and consumed space by blobfuse2 which is not reflecting the size of the cache. Request help on this.

We are using the RHEL7 & BlobFuse1, It was working good. MS suggested to migrate to RHEL8 while working on a CASE#2410150040017227

syeleti-msft commented 1 month ago

Hi, In the Config you given the max-size-mb as 4096MB (i.e, 4GB) under the filecache component. Currently we show the size for the blobfuse mount as cache size (i.e.,4GB) and usage under that cache. This is the reason why you see 4.0G for the blobfuse2 mount.

why do you want to have info of the blobfuse mount same as the underlying partition?

kalirajann commented 1 month ago

Using RHEL 7 with Blobfuse1 for past 3 months, and the disk cache size matches the Blobfuse mount size. Although blobfuse mount shows as 4 GB, I assume that it can handle files larger than 4 GB (such as 100 GB) as long as there is enough space available on the cache disk. Can you please confirm?

syeleti-msft commented 1 month ago

Yes, It can handle the files larger than file cache size but It is always advised to give the right amount in the config itself. Using the file cache with more than cache size specified in the config may result in a greater number of network calls(i.e., Eviction of the files from the cache would be higher). Eventually it will reduce the performance.

vibhansa-msft commented 3 weeks ago

If you wish to fail the load of such file which goes beyond your configured size then there is a hard-limit flag for that which you can use. By default blobfuse allows you to operate on files higher than the configured size. However, the files will be eligible for deletion as the usage of your configured space will be overrun due to this oepraiton.