Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Can not mount blob to AKS cluster via Python image using blobfuse2. #1079

Closed
kumaaaah opened this issue Mar 8, 2023 · 65 comments · Fixed by #1088
Closed

Can not mount blob to AKS cluster via Python image using blobfuse2. #1079

kumaaaah opened this issue Mar 8, 2023 · 65 comments · Fixed by #1088
Assignees
Labels
Milestone

Comments

@kumaaaah
Copy link

kumaaaah commented Mar 8, 2023

Which version of blobfuse was used?

blobfuse2 version 2.0.2

Which OS distribution and version are you using?

AKS kernel version 1.23.12
Docker: FROM python:3.10.4

root@mydocker:/home# cat /proc/version
Linux version 5.4.0-1091-azure (buildd@lcy02-amd64-023) (gcc version 7.5.0 (Ubuntu 7.5.0-3ubuntu118.04)) #9618.04.1-Ubuntu SMP Tue Aug 30 19:15:32 UTC 2022

root@mydocker:/home# cat /etc/os-release
PRETTY_NAME="Debian GNU/Linux 11 (bullseye)"
NAME="Debian GNU/Linux"
VERSION_ID="11"
VERSION="11 (bullseye)"
VERSION_CODENAME=bullseye
ID=debian
HOME_URL="https://www.debian.org/"
SUPPORT_URL="https://www.debian.org/support"
BUG_REPORT_URL="https://bugs.debian.org/"

If relevant, please share your mount command.

install blobfuse2

wget https://packages.microsoft.com/config/debian/11/packages-microsoft-prod.deb
dpkg -i packages-microsoft-prod.deb
apt-get update
apt-get install libfuse3-dev fuse3 -y
apt-get install blobfuse2

mount command

blobfuse2 mount /home/blobfmount --config-file=/home/blobfuse2/config.yaml --container-name=mycontainer --log-level=log_debug --log-file-path=./bobfuse2b.log

here is config.yaml below:

Refer ./setup/baseConfig.yaml for full set of config parameters

allow-other: true

logging:
type: syslog
level: log_debug

components:

  • libfuse
  • file_cache
  • attr_cache
  • azstorage

libfuse:
attribute-expiration-sec: 120
entry-expiration-sec: 120
negative-entry-expiration-sec: 240

file_cache:
path: /home/blobfuse/tempcache
timeout-sec: 120
max-size-mb: 4096

attr_cache:
timeout-sec: 7200

azstorage:
type: block
account-name: ***
account-key: ***
endpoint:***
container: ***

What was the issue encountered?

After I ran the blobfuse2 mount command, I cannot check the files in the destination blob or create test file and check in blob.

Have you found a mitigation/solution?

Not yet.

Please share logs if available.

root@mydocker:/home/blobfmount# cat bobfuse2b.log
Wed Mar 8 06:31:11 UTC 2023 : blobfuse2[607] : LOG_CRIT [mount.go (384)]: Starting Blobfuse2 Mount : 2.0.2 on [Debian GNU/Linux 11 (bullseye)]
Wed Mar 8 06:31:11 UTC 2023 : blobfuse2[607] : LOG_CRIT [mount.go (385)]: Logging level set to : LOG_DEBUG
Wed Mar 8 06:31:11 UTC 2023 : blobfuse2[607] : LOG_TRACE [libfuse.go (220)]: Libfuse::Configure : libfuse
Wed Mar 8 06:31:11 UTC 2023 : blobfuse2[607] : LOG_INFO [libfuse.go (260)]: Libfuse::Configure : read-only false, allow-other true, default-perm 511, entry-timeout 120, attr-time 120, negative-timeout 240, ignore-open-flags: true, nonempty false
Wed Mar 8 06:31:11 UTC 2023 : blobfuse2[607] : LOG_TRACE [file_cache.go (197)]: FileCache::Configure : file_cache
Wed Mar 8 06:31:11 UTC 2023 : blobfuse2[607] : LOG_INFO [file_cache.go (272)]: FileCache::Configure : Using default eviction policy
Wed Mar 8 06:31:11 UTC 2023 : blobfuse2[607] : LOG_INFO [file_cache.go (291)]: FileCache::Configure : create-empty false, cache-timeout 120, tmp-path /home/blobfuse/tempcache, max-size-mb 4096, high-mark 80, low-mark 60
Wed Mar 8 06:31:11 UTC 2023 : blobfuse2[607] : LOG_TRACE [attr_cache.go (121)]: AttrCache::Configure : attr_cache
Wed Mar 8 06:31:11 UTC 2023 : blobfuse2[607] : LOG_INFO [attr_cache.go (145)]: AttrCache::Configure : cache-timeout 7200, symlink false, cache-on-list true
Wed Mar 8 06:31:11 UTC 2023 : blobfuse2[607] : LOG_TRACE [azstorage.go (83)]: AzStorage::Configure : azstorage
Wed Mar 8 06:31:11 UTC 2023 : blobfuse2[607] : LOG_TRACE [config.go (270)]: ParseAndValidateConfig : Parsing config
Wed Mar 8 06:31:11 UTC 2023 : blobfuse2[607] : LOG_INFO [config.go (372)]: ParseAndValidateConfig : using the following proxy address from the config file:
Wed Mar 8 06:31:11 UTC 2023 : blobfuse2[607] : LOG_INFO [config.go (376)]: ParseAndValidateConfig : sdk logging from the config file: false
Wed Mar 8 06:31:11 UTC 2023 : blobfuse2[607] : LOG_TRACE [config.go (479)]: ParseAndReadDynamicConfig : Reparsing config
Wed Mar 8 06:31:11 UTC 2023 : blobfuse2[607] : LOG_DEBUG [config.go (383)]: ParseAndValidateConfig : Getting auth type
Wed Mar 8 06:31:11 UTC 2023 : blobfuse2[607] : LOG_INFO [config.go (467)]: ParseAndValidateConfig : Account: mystorageaccount, Container: mycontainer, AccountType: BLOCK, Auth: KEY, Prefix: , Endpoint: https://mystorageaccount.blob.core.chinacloudapi.cn/, ListBlock: 0, MD5 : false false, Virtual Directory: true
Wed Mar 8 06:31:11 UTC 2023 : blobfuse2[607] : LOG_INFO [config.go (471)]: ParseAndValidateConfig : Retry Config: Retry count 5, Max Timeout 900, BackOff Time 4, Max Delay 60
Wed Mar 8 06:31:11 UTC 2023 : blobfuse2[607] : LOG_TRACE [block_blob.go (173)]: BlockBlob::SetupPipeline : Setting up
Wed Mar 8 06:31:11 UTC 2023 : blobfuse2[607] : LOG_TRACE [block_blob.go (135)]: BlockBlob::getCredential : Getting credential
Wed Mar 8 06:31:11 UTC 2023 : blobfuse2[607] : LOG_DEBUG [azauth.go (79)]: azAuth::getAzAuth : Account: mystorageaccount, AccountType: BLOCK, Protocol: https, Endpoint: https://mystorageaccount.blob.core.chinacloudapi.cn/
Wed Mar 8 06:31:11 UTC 2023 : blobfuse2[607] : LOG_TRACE [block_blob.go (260)]: BlockBlob::SetPrefixPath : path
Wed Mar 8 06:31:11 UTC 2023 : blobfuse2[607] : LOG_TRACE [block_blob.go (209)]: BlockBlob::TestPipeline : Validating
Wed Mar 8 06:31:11 UTC 2023 : blobfuse2[607] : LOG_INFO [mount.go (392)]: mount: Mounting blobfuse2 on /home/blobfmount
root@mydocker:/home/blobfmount# cd ..

I tried to do an unmount command and returned this:

root@mydocker:/home# blobfuse2 unmount all
Error: failed to list mount points [open /etc/mtab: no such file or directory]
root@mydocker:/home# blobfuse2 mount /home/blobfmount --config-file=/home/blobfuse2/config.yaml --container-name=mycontainer --log-level=log_debug --log-file-path=./bobfuse2b.log
Error: mount directory is not empty
root@mydocker:/home# rm -f ./blobfuse2/*
rm: cannot remove './blobfuse2/config.yaml': Device or resource busy
root@mydocker:/home#

@vibhansa-msft
Copy link
Member

As you have set "allow-other: true" ensure this feature is enable in /etc/fuse.conf file.
If this is FNS (non-HNS) account, ensure you have added "--virtual-directory=true" to cli options.
On this system it appears you do not have /etc/fstab, which is used by blobfuse to list and unmount. In such case you can always use "fusermount3 -u ' command to unmount the container.

@vibhansa-msft vibhansa-msft added this to the V2-2.0.3 milestone Mar 8, 2023
@vibhansa-msft vibhansa-msft self-assigned this Mar 8, 2023
@kumaaaah
Copy link
Author

kumaaaah commented Mar 8, 2023

As you have set "allow-other: true" ensure this feature is enable in /etc/fuse.conf file. If this is FNS (non-HNS) account, ensure you have added "--virtual-directory=true" to cli options. On this system it appears you do not have /etc/fstab, which is used by blobfuse to list and unmount. In such case you can always use "fusermount3 -u ' command to unmount the container.

Thank you.
Before I try re-deploy blobfuse2, I want to confirm this situation: to install blobfuse2, I get information referred to
https://docs.azure.cn/en-us/storage/blobs/blobfuse2-how-to-deploy#configure-the-microsoft-package-repository

In my case, I deployed on a Debian 11 distribution:

to Configure the Microsoft package repository.

wget https://packages.microsoft.com/config/debian/11/packages-microsoft-prod.deb
sudo dpkg -i packages-microsoft-prod.deb
sudo apt-get update
sudo apt-get install libfuse3-dev fuse3

Then I installed blobfuse2.

But in the ./docker/dockerfile the installation is as below:

Install fuse library

RUN
apt update &&
apt-get install -y ca-certificates vim rsyslog
RUN if [ "$FUSE2" = "TRUE" ] ; then apt-get install -y fuse ; else apt-get install -y fuse3 ; fi

The different is I didn't install ca-certificates vim rsyslog and fuse but fuse3
Will this be impact?

@vibhansa-msft
Copy link
Member

If you are running blobfuse on a container you can follow this.
And better to be consitent with fuse3 on container and host.
To run container use

	docker run -it --rm \
		--cap-add=SYS_ADMIN \
		--device=/dev/fuse \
		--security-opt apparmor:unconfined \
		-e AZURE_STORAGE_ACCOUNT \
		-e AZURE_STORAGE_ACCESS_KEY \
		-e AZURE_STORAGE_ACCOUNT_CONTAINER \
		<image>

@pa-mc
Copy link

pa-mc commented Mar 8, 2023

I think the AKS version is somewhat related. One of my cluster is using AKS 1.24.9, I think it cannot even use blobfuse csi driver 2+

For instance, I got an error like the following. Even though I did az aks update --enable-blob-driver -n clusterName -g rg, I suspect AKS 1.25.0 below does not have blobfuse 2.0 enabled. This is a guess, I still haven't found the relavent documentation just yet

  MountVolume.MountDevice failed for volume "pv-stpabackupsprod-blob-container"
  : rpc error: code = Internal desc = Mount failed with error: rpc error: code =
  Unknown desc = exit status 1 fuse: unknown option `--virtual-directory=true'

  no config filedone reading env vars, output: 

Also on a related issue: #1078 (I think) Even after adding --virtual-directory=true to the AKS 1.25.5 storageclass, I have a following weird behaviour.

After restarting the pod the second time that has the blob-fuse mount, the mount disappeared...

I think the problem is this GRPC error: rpc error: code = Internal desc = failed to unmount target "/var/lib/kubelet/pods/c7406bcd-1579-499b-a562-5a28ac533388/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount": remove /var/lib/kubelet/pods/c7406bcd-1579-499b-a562-5a28ac533388/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount: device or resource busy

#  After a fresh kubectl apply

I0308 20:43:54.932883    6583 utils.go:75] GRPC call: /csi.v1.Node/NodeStageVolume
I0308 20:43:54.932896    6583 utils.go:76] GRPC request: {"secrets":"***stripped***","staging_target_path":"/var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount","volume_capability":{"AccessType":{"Mount":{"mount_flags":["-o allow_other","--file-cache-timeout-in-seconds=120","--use-attr-cache=true","-o attr_timeout=120","-o entry_timeout=120","-o negative_timeout=120","--log-level=LOG_DEBUG","--cache-size-mb=1000","--virtual-directory=true"]}},"access_mode":{"mode":3}},"volume_context":{"containerName":"backups-prod","resourceGroup":"rg-backups-prod"},"volume_id":"rg-backups-prod#stpabackupsprod#backups-prod"}
I0308 20:43:54.933243    6583 blob.go:414] volumeID(rg-backups-prod#stpabackupsprod#backups-prod) authEnv: []
I0308 20:43:54.933290    6583 nodeserver.go:349] target /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount
protocol

volumeId rg-backups-prod#stpabackupsprod#backups-prod
context map[containerName:backups-prod resourceGroup:rg-backups-prod]
mountflags [-o allow_other --file-cache-timeout-in-seconds=120 --use-attr-cache=true -o attr_timeout=120 -o entry_timeout=120 -o negative_timeout=120 --log-level=LOG_DEBUG --cache-size-mb=1000 --virtual-directory=true]
mountOptions [-o allow_other --file-cache-timeout-in-seconds=120 --use-attr-cache=true -o attr_timeout=120 -o entry_timeout=120 -o negative_timeout=120 --log-level=LOG_DEBUG --cache-size-mb=1000 --virtual-directory=true --cancel-list-on-mount-seconds=10 --empty-dir-check=false --tmp-path=/mnt/rg-backups-prod#stpabackupsprod#backups-prod --container-name=backups-prod --pre-mount-validate=true --use-https=true]
args /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount -o allow_other --file-cache-timeout-in-seconds=120 --use-attr-cache=true -o attr_timeout=120 -o entry_timeout=120 -o negative_timeout=120 --log-level=LOG_DEBUG --cache-size-mb=1000 --virtual-directory=true --cancel-list-on-mount-seconds=10 --empty-dir-check=false --tmp-path=/mnt/rg-backups-prod#stpabackupsprod#backups-prod --container-name=backups-prod --pre-mount-validate=true --use-https=true
serverAddress stpabackupsprod.blob.core.windows.net
I0308 20:43:54.933314    6583 nodeserver.go:144] mouting using blobfuse proxy
I0308 20:43:54.933699    6583 nodeserver.go:158] calling BlobfuseProxy: MountAzureBlob function
I0308 20:43:55.136247    6583 nodeserver.go:397] volume(rg-backups-prod#stpabackupsprod#backups-prod) mount on "/var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount" succeeded
I0308 20:43:55.136276    6583 utils.go:82] GRPC response: {}
I0308 20:43:55.138681    6583 utils.go:75] GRPC call: /csi.v1.Node/NodePublishVolume
I0308 20:43:55.138693    6583 utils.go:76] GRPC request: {"staging_target_path":"/var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount","target_path":"/var/lib/kubelet/pods/30befd9c-d850-464f-9cb9-9ddb789ab67f/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount","volume_capability":{"AccessType":{"Mount":{"mount_flags":["-o allow_other","--file-cache-timeout-in-seconds=120","--use-attr-cache=true","-o attr_timeout=120","-o entry_timeout=120","-o negative_timeout=120","--log-level=LOG_DEBUG","--cache-size-mb=1000","--virtual-directory=true"]}},"access_mode":{"mode":3}},"volume_context":{"containerName":"backups-prod","csi.storage.k8s.io/ephemeral":"false","csi.storage.k8s.io/pod.name":"orientdbservice-58c79ffb79-ltccl","csi.storage.k8s.io/pod.namespace":"pa-data-services","csi.storage.k8s.io/pod.uid":"30befd9c-d850-464f-9cb9-9ddb789ab67f","csi.storage.k8s.io/serviceAccount.name":"default","resourceGroup":"rg-backups-prod"},"volume_id":"rg-backups-prod#stpabackupsprod#backups-prod"}
I0308 20:43:55.139102    6583 nodeserver.go:122] NodePublishVolume: volume rg-backups-prod#stpabackupsprod#backups-prod mounting /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount at /var/lib/kubelet/pods/30befd9c-d850-464f-9cb9-9ddb789ab67f/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount with mountOptions: [bind]
I0308 20:43:55.139124    6583 mount_linux.go:219] Mounting cmd (mount) with arguments ( -o bind /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount /var/lib/kubelet/pods/30befd9c-d850-464f-9cb9-9ddb789ab67f/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount)
I0308 20:43:55.140316    6583 mount_linux.go:219] Mounting cmd (mount) with arguments ( -o bind,remount /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount /var/lib/kubelet/pods/30befd9c-d850-464f-9cb9-9ddb789ab67f/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount)
I0308 20:43:55.141314    6583 nodeserver.go:138] NodePublishVolume: volume rg-backups-prod#stpabackupsprod#backups-prod mount /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount at /var/lib/kubelet/pods/30befd9c-d850-464f-9cb9-9ddb789ab67f/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount successfully
I0308 20:43:55.141325    6583 utils.go:82] GRPC response: {}



# After the first deletion of the pod, notice there is a `GRPC error: rpc error: code` due to `device or resource busy`


I0308 20:44:25.288113    6583 utils.go:75] GRPC call: /csi.v1.Node/NodePublishVolume
I0308 20:44:25.288123    6583 utils.go:76] GRPC request: {"staging_target_path":"/var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount","target_path":"/var/lib/kubelet/pods/07a6dec5-faba-451e-a9c3-f95dd627ad8a/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount","volume_capability":{"AccessType":{"Mount":{"mount_flags":["-o allow_other","--file-cache-timeout-in-seconds=120","--use-attr-cache=true","-o attr_timeout=120","-o entry_timeout=120","-o negative_timeout=120","--log-level=LOG_DEBUG","--cache-size-mb=1000","--virtual-directory=true"]}},"access_mode":{"mode":3}},"volume_context":{"containerName":"backups-prod","csi.storage.k8s.io/ephemeral":"false","csi.storage.k8s.io/pod.name":"orientdbservice-58c79ffb79-shw75","csi.storage.k8s.io/pod.namespace":"pa-data-services","csi.storage.k8s.io/pod.uid":"07a6dec5-faba-451e-a9c3-f95dd627ad8a","csi.storage.k8s.io/serviceAccount.name":"default","resourceGroup":"rg-backups-prod"},"volume_id":"rg-backups-prod#stpabackupsprod#backups-prod"}
I0308 20:44:25.288521    6583 nodeserver.go:122] NodePublishVolume: volume rg-backups-prod#stpabackupsprod#backups-prod mounting /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount at /var/lib/kubelet/pods/07a6dec5-faba-451e-a9c3-f95dd627ad8a/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount with mountOptions: [bind]
I0308 20:44:25.288538    6583 mount_linux.go:219] Mounting cmd (mount) with arguments ( -o bind /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount /var/lib/kubelet/pods/07a6dec5-faba-451e-a9c3-f95dd627ad8a/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount)
I0308 20:44:25.289794    6583 mount_linux.go:219] Mounting cmd (mount) with arguments ( -o bind,remount /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount /var/lib/kubelet/pods/07a6dec5-faba-451e-a9c3-f95dd627ad8a/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount)
I0308 20:44:25.290840    6583 nodeserver.go:138] NodePublishVolume: volume rg-backups-prod#stpabackupsprod#backups-prod mount /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount at /var/lib/kubelet/pods/07a6dec5-faba-451e-a9c3-f95dd627ad8a/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount successfully
I0308 20:44:25.290856    6583 utils.go:82] GRPC response: {}
I0308 20:44:26.495366    6583 utils.go:75] GRPC call: /csi.v1.Node/NodeUnpublishVolume
I0308 20:44:26.495384    6583 utils.go:76] GRPC request: {"target_path":"/var/lib/kubelet/pods/30befd9c-d850-464f-9cb9-9ddb789ab67f/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount","volume_id":"rg-backups-prod#stpabackupsprod#backups-prod"}
I0308 20:44:26.495443    6583 nodeserver.go:199] NodeUnpublishVolume: unmounting volume rg-backups-prod#stpabackupsprod#backups-prod on /var/lib/kubelet/pods/30befd9c-d850-464f-9cb9-9ddb789ab67f/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount
I0308 20:44:26.495461    6583 mount_helper_common.go:93] unmounting "/var/lib/kubelet/pods/30befd9c-d850-464f-9cb9-9ddb789ab67f/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount" (corruptedMount: false, mounterCanSkipMountPointChecks: true)
I0308 20:44:26.495474    6583 mount_linux.go:361] Unmounting /var/lib/kubelet/pods/30befd9c-d850-464f-9cb9-9ddb789ab67f/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount
I0308 20:44:26.496899    6583 mount_helper_common.go:150] Warning: deleting path "/var/lib/kubelet/pods/30befd9c-d850-464f-9cb9-9ddb789ab67f/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount"
E0308 20:44:26.497033    6583 utils.go:80] GRPC error: rpc error: code = Internal desc = failed to unmount target "/var/lib/kubelet/pods/30befd9c-d850-464f-9cb9-9ddb789ab67f/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount": remove /var/lib/kubelet/pods/30befd9c-d850-464f-9cb9-9ddb789ab67f/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount: device or resource busy
I0308 20:44:26.998468    6583 utils.go:75] GRPC call: /csi.v1.Node/NodeUnpublishVolume
I0308 20:44:26.998492    6583 utils.go:76] GRPC request: {"target_path":"/var/lib/kubelet/pods/30befd9c-d850-464f-9cb9-9ddb789ab67f/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount","volume_id":"rg-backups-prod#stpabackupsprod#backups-prod"}
I0308 20:44:26.998561    6583 nodeserver.go:199] NodeUnpublishVolume: unmounting volume rg-backups-prod#stpabackupsprod#backups-prod on /var/lib/kubelet/pods/30befd9c-d850-464f-9cb9-9ddb789ab67f/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount
I0308 20:44:26.998583    6583 mount_helper_common.go:93] unmounting "/var/lib/kubelet/pods/30befd9c-d850-464f-9cb9-9ddb789ab67f/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount" (corruptedMount: false, mounterCanSkipMountPointChecks: true)
I0308 20:44:26.998598    6583 mount_linux.go:361] Unmounting /var/lib/kubelet/pods/30befd9c-d850-464f-9cb9-9ddb789ab67f/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount
I0308 20:44:27.000033    6583 mount_helper_common.go:150] Warning: deleting path "/var/lib/kubelet/pods/30befd9c-d850-464f-9cb9-9ddb789ab67f/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount"
I0308 20:44:27.000108    6583 nodeserver.go:204] NodeUnpublishVolume: unmount volume rg-backups-prod#stpabackupsprod#backups-prod on /var/lib/kubelet/pods/30befd9c-d850-464f-9cb9-9ddb789ab67f/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount successfully
I0308 20:44:27.000119    6583 utils.go:82] GRPC response: {}

# After second deletion of the pod

I0308 20:45:33.367209    6583 utils.go:75] GRPC call: /csi.v1.Node/NodePublishVolume
I0308 20:45:33.367220    6583 utils.go:76] GRPC request: {"staging_target_path":"/var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount","target_path":"/var/lib/kubelet/pods/0051302b-af83-404f-b041-556a95df86c5/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount","volume_capability":{"AccessType":{"Mount":{"mount_flags":["-o allow_other","--file-cache-timeout-in-seconds=120","--use-attr-cache=true","-o attr_timeout=120","-o entry_timeout=120","-o negative_timeout=120","--log-level=LOG_DEBUG","--cache-size-mb=1000","--virtual-directory=true"]}},"access_mode":{"mode":3}},"volume_context":{"containerName":"backups-prod","csi.storage.k8s.io/ephemeral":"false","csi.storage.k8s.io/pod.name":"orientdbservice-58c79ffb79-tvgr5","csi.storage.k8s.io/pod.namespace":"pa-data-services","csi.storage.k8s.io/pod.uid":"0051302b-af83-404f-b041-556a95df86c5","csi.storage.k8s.io/serviceAccount.name":"default","resourceGroup":"rg-backups-prod"},"volume_id":"rg-backups-prod#stpabackupsprod#backups-prod"}
I0308 20:45:33.367598    6583 nodeserver.go:122] NodePublishVolume: volume rg-backups-prod#stpabackupsprod#backups-prod mounting /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount at /var/lib/kubelet/pods/0051302b-af83-404f-b041-556a95df86c5/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount with mountOptions: [bind]
I0308 20:45:33.367615    6583 mount_linux.go:219] Mounting cmd (mount) with arguments ( -o bind /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount /var/lib/kubelet/pods/0051302b-af83-404f-b041-556a95df86c5/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount)
I0308 20:45:33.368790    6583 mount_linux.go:219] Mounting cmd (mount) with arguments ( -o bind,remount /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount /var/lib/kubelet/pods/0051302b-af83-404f-b041-556a95df86c5/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount)
I0308 20:45:33.369743    6583 nodeserver.go:138] NodePublishVolume: volume rg-backups-prod#stpabackupsprod#backups-prod mount /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount at /var/lib/kubelet/pods/0051302b-af83-404f-b041-556a95df86c5/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount successfully
I0308 20:45:33.369764    6583 utils.go:82] GRPC response: {}
I0308 20:45:34.573365    6583 utils.go:75] GRPC call: /csi.v1.Node/NodeUnpublishVolume
I0308 20:45:34.573379    6583 utils.go:76] GRPC request: {"target_path":"/var/lib/kubelet/pods/07a6dec5-faba-451e-a9c3-f95dd627ad8a/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount","volume_id":"rg-backups-prod#stpabackupsprod#backups-prod"}
I0308 20:45:34.573418    6583 nodeserver.go:199] NodeUnpublishVolume: unmounting volume rg-backups-prod#stpabackupsprod#backups-prod on /var/lib/kubelet/pods/07a6dec5-faba-451e-a9c3-f95dd627ad8a/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount
I0308 20:45:34.573440    6583 mount_helper_common.go:93] unmounting "/var/lib/kubelet/pods/07a6dec5-faba-451e-a9c3-f95dd627ad8a/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount" (corruptedMount: false, mounterCanSkipMountPointChecks: true)
I0308 20:45:34.573464    6583 mount_linux.go:361] Unmounting /var/lib/kubelet/pods/07a6dec5-faba-451e-a9c3-f95dd627ad8a/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount
I0308 20:45:34.575595    6583 mount_helper_common.go:150] Warning: deleting path "/var/lib/kubelet/pods/07a6dec5-faba-451e-a9c3-f95dd627ad8a/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount"
I0308 20:45:34.575655    6583 nodeserver.go:204] NodeUnpublishVolume: unmount volume rg-backups-prod#stpabackupsprod#backups-prod on /var/lib/kubelet/pods/07a6dec5-faba-451e-a9c3-f95dd627ad8a/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount successfully
I0308 20:45:34.575666    6583 utils.go:82] GRPC response: {}

btw, this is my PV mount options

apiVersion: v1
kind: PersistentVolume
metadata:
  name: yourPV
spec:
  capacity:
    storage: 500Gi
  accessModes:
    - ReadOnlyMany
  claimRef:
    apiVersion: v1
    kind: PersistentVolumeClaim
    name: yourPVC
    namespace: pa-data-services
  # Retain allows the feature that even deleting the PVC & PV the external Azure Blob Container or Azure File Shares WILL NOT get deleted. 
  # That is quite important, because that means even somehow the ENTIRE Kubernetes cluster is gone. We still have our data.
  persistentVolumeReclaimPolicy: Retain
  storageClassName: azureblob-fuse-premium
  csi:
    # This driver, however, does not come pre-installed when creating an AKS. Also, it seems to be in preview. 
    # So there is an elaborated steps to enable and install it. 
    # See the README.md section of: ## About blob-csi-driver
    driver: blob.csi.azure.com
    readOnly: false
    # make sure this volumeid is unique in the cluster
    # `#` is not allowed in self defined volumeHandle
    volumeHandle: rg-backups-prod#stpabackupsprod#backups-prod
    volumeAttributes:
      resourceGroup: rG
      containerName: containerName
    nodeStageSecretRef:
      name: stpabackupsprod
      namespace: pa-data-services
  mountOptions:
    - '-o allow_other'
    - '--file-cache-timeout-in-seconds=120'
    - '--use-attr-cache=true'
    - '-o attr_timeout=120'
    - '-o entry_timeout=120'
    - '-o negative_timeout=120'
    - '--log-level=LOG_DEBUG'
    - '--cache-size-mb=1000'
    - '--virtual-directory=true'

@vibhansa-msft

Wait a minute... I just re-read the whole Use Azure Blob storage Container Storage Interface (CSI) driver documentation by Azure. Specifically, the following paragraph & callout box, does that mean AKS 1.25.5 NO LONGER support blobfuse but only NFS v3, i.e., you can only use azureblob-nfs-premium storageclass. In other words, your Azure Storage Account MUST have HNS & NFS v3 enabled?

Screenshot 2023-03-08 at 20 58 50

This is what the azureblob-nfs-premium storageclass looks like.

kind: StorageClass
apiVersion: storage.k8s.io/v1
metadata:
  name: azureblob-nfs-premium
  labels:
    addonmanager.kubernetes.io/mode: EnsureExists
    kubernetes.io/cluster-service: 'true'
provisioner: blob.csi.azure.com
parameters:
  protocol: nfs
  skuName: Premium_LRS
reclaimPolicy: Delete
allowVolumeExpansion: true
volumeBindingMode: Immediate

@vibhansa-msft
Copy link
Member

Blobfuse has no restriciton related to HNS, you can use it for both FNS and HNS.
For you query on "device busy" causing unmount to fail, this generally hits when you have a console which has set its path to the mount point or someone is using the mount path and in parallel you try to unmount. If you exit all your shell and unmount it will work fine. Also, there are linux commands to force unmount as well. For the AKS related query @andyzhangx can answer.

@pa-mc
Copy link

pa-mc commented Mar 9, 2023

Blobfuse has no restriciton related to HNS, you can use it for both FNS and HNS. For you query on "device busy" causing unmount to fail, this generally hits when you have a console which has set its path to the mount point or someone is using the mount path and in parallel you try to unmount. If you exit all your shell and unmount it will work fine. Also, there are linux commands to force unmount as well. For the AKS related query @andyzhangx can answer.

CC: @andyzhangx

Hm... but when I tried to mount an Azure Storage Account that does not have HNS & does not have NFS v3 enabled using storageClassName: azureblob-nfs-premium, I got the following error.

E0309 03:21:35.312356    5969 utils.go:80] GRPC error: rpc error: code = Internal desc = volume(rg-backups-prod#stpabackupsprod#backups-prod) mount "stpabackupsprod.blob.core.windows.net:/stpabackupsprod/backups-prod" on "/var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount" failed with mount failed: exit status 32
Mounting command: mount
Mounting arguments: -t nfs -o sec=sys,vers=3,nolock stpabackupsprod.blob.core.windows.net:/stpabackupsprod/backups-prod /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount
Output: mount.nfs: mounting stpabackupsprod.blob.core.windows.net:/stpabackupsprod/backups-prod failed, reason given by server: No such file or directory

But if I were to use the same storageClassName: azureblob-nfs-premium to mount an Azure Storage Account that has both HNS & NFS v3 enabled, it can mount it correctly. Also, the problem of killing the pod randomly then the mount disappeard also went away.

Just a reminder, all these are under a specific version AKS, that is AKS 1.25.5. I do not see any of these behaviours in AKS 1.24.9, which is why I suspected that AKS 1.25.5 only supports NFS v3 now. Especially it seems the Azure AKS documentation specifically called it out?

image

@andyzhangx
Copy link
Contributor

@pa-mc first error is expected since NFSv3 is not enabled in your account in the beginning.
BTW, we will update the AKS doc soon by remove that notion, currently AKS 1.25+ already supports blobfuse and NFSv3

@andyzhangx
Copy link
Contributor

btw, for HNS support, you need to set --use-adls=true in mount options if you bring your own account.

https://github.com/kubernetes-sigs/blob-csi-driver/blob/master/docs/driver-parameters.md

  • Azure DataLake storage account support
    • set isHnsEnabled: "true" in storage class parameter to create ADLS account by driver in dynamic provisioning.
    • mount option --use-adls=true must be specified to enable blobfuse access ADLS account in static provisioning.

@pa-mc
Copy link

pa-mc commented Mar 9, 2023

@pa-mc first error is expected since NFSv3 is not enabled in your account in the beginning. BTW, we will update the AKS doc soon by remove that notion, currently AKS 1.25+ already supports blobfuse and NFSv3

@andyzhangx thanks for the clarification! In my case, I am using static provisioning instead of dynamic provisioning.

A related question: How do I determine which version of blobfuse AKS is using? Or how do I force AKS to use a specific version of blobfuse?

Because when I tried to use - '--virtual-directory=true' mount option on AKS 1.24.9, I got option not supported error. But after hopping into a csi-blob-node-pod like the following. Both blobfuse binaries are there. When I'm using AKS 1.25.5 there is no problem using the - '--virtual-directory=true' mount option.

❯ kubectl exec -it csi-blob-node-lfkx9 -c blob -n kube-system -- /bin/sh
# blobfuse -v
blobfuse 1.4.5
# blobfuse2 -v
blobfuse2 version 2.0.2

@andyzhangx
Copy link
Contributor

andyzhangx commented Mar 9, 2023

@pa-mc AKS 1.25 is on Ubuntu 22.04 and it only supports blobfuse v2, and before 1.25, AKS is on Ubuntu 18.04, both blobfuse v1 & v2 are supported. I would suggest using protocol: fuse2 in sc or pv config even before AKS 1.25, then your application won't break if you upgrade to 1.25 or later verson since you are always using blobfusev2 on any aks versions.

@pa-mc
Copy link

pa-mc commented Mar 9, 2023

@andyzhangx @vibhansa-msft Sorry for the long reply below, but I think this will illustrate my specific edge case that causes blobfuse2 to break, please hear me out :)

The Scenario

We have a database (OrientDB) backup daily on an Azure blob store that does not support NFS v3 protocol, so all I can work with is Blobfuse v1 or v2.

azure blob store property Screenshot 2023-03-09 at 09 41 41

I have two cluster one is AKS 1.25.5, one is AKS 1.24.9. Both have the exact same k8s Deployment to be run. That is a statically provisioned PV volume map to the Azure Blob Store mentioned above, and it has been claimed through PVC and mounted into a k8s Deployment type with node selector and tolerations so it only attaches to a very large node_pool, so it can do daily OrientDB restore and kicking off the subsequent Data pipeline for ETL purposes.

Now here is the specific scenario, due to the limitation with OrientDB (long story... I'll spare you the details here...), for each data ETL run, we have to kill the k8s deployment type to clear out the cache. (we are not deleting the whole Deployment type, we only delete the undelrying Pods, so AKS will recover the Pods itself).

The following set of comments + csi driver logs will illustrate why I think perhaps there is a little bug in blobfuse2. Again, I could be totally wrong, but here is how I came to that logical conclusion.

Starting with AKS 1.25.5 + protocol: fuse2

Here is my PV manifest specifically using fuse2
apiVersion: v1
kind: PersistentVolume
metadata:
  name: pv-stpabackupsprod-blob-container
spec:
  capacity:
    storage: 500Gi
  accessModes:
    - ReadOnlyMany
  claimRef:
    apiVersion: v2
    kind: PersistentVolumeClaim
    name: pvc-stpabackupsprod-blob-container
    namespace: pa-data-services
  persistentVolumeReclaimPolicy: Retain
  storageClassName: azureblob-fuse-premium
  csi:
    driver: blob.csi.azure.com
    readOnly: false
    volumeHandle: rg-backups-prod#stpabackupsprod#backups-prod
    volumeAttributes:
      resourceGroup: rg-backups-prod
      storageAccount: stpabackupsprod
      containerName: backups-prod
      protocol: fuse2
    nodeStageSecretRef:
      name: stpabackupsprod
      namespace: pa-data-services
  mountOptions:
    - '-o allow_other'
    - '--file-cache-timeout-in-seconds=120'
    - '--use-attr-cache=true'
    - '-o attr_timeout=120'
    - '-o entry_timeout=120'
    - '-o negative_timeout=120'
    - '--log-level=LOG_DEBUG'
    - '--cache-size-mb=1000'
    - '--virtual-directory=true'
Here is the CSI driver log as soon as I did a `kubectl apply -f`, which is a k8s Deployment with PVC that claims a statically provisioned PV that mapping to the Azure Blob Store through Fuse2. As you can see, it properly mounted the Blob, and I can see all my files in the Pod after exec into the pod
I0309 14:15:29.733412    5808 nodeserver.go:144] mouting using blobfuse proxy
I0309 14:15:29.733831    5808 nodeserver.go:158] calling BlobfuseProxy: MountAzureBlob function
I0309 14:15:31.455256    5808 nodeserver.go:397] volume(rg-backups-prod#stpabackupsprod#backups-prod) mount on "/var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount" succeeded
I0309 14:15:31.455281    5808 utils.go:82] GRPC response: {}
I0309 14:15:31.458183    5808 utils.go:75] GRPC call: /csi.v1.Node/NodePublishVolume
I0309 14:15:31.458194    5808 utils.go:76] GRPC request: {"staging_target_path":"/var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount","target_path":"/var/lib/kubelet/pods/7114a722-9c85-4028-b2ba-18084f4f937f/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount","volume_capability":{"AccessType":{"Mount":{"mount_flags":["-o allow_other","--file-cache-timeout-in-seconds=120","--use-attr-cache=true","-o attr_timeout=120","-o entry_timeout=120","-o negative_timeout=120","--log-level=LOG_DEBUG","--cache-size-mb=1000","--virtual-directory=true"]}},"access_mode":{"mode":3}},"volume_context":{"containerName":"backups-prod","csi.storage.k8s.io/ephemeral":"false","csi.storage.k8s.io/pod.name":"orientdbservice-58c79ffb79-zgdlf","csi.storage.k8s.io/pod.namespace":"pa-data-services","csi.storage.k8s.io/pod.uid":"7114a722-9c85-4028-b2ba-18084f4f937f","csi.storage.k8s.io/serviceAccount.name":"default","protocol":"fuse2","resourceGroup":"rg-backups-prod","storageAccount":"stpabackupsprod"},"volume_id":"rg-backups-prod#stpabackupsprod#backups-prod"}
I0309 14:15:31.458562    5808 nodeserver.go:122] NodePublishVolume: volume rg-backups-prod#stpabackupsprod#backups-prod mounting /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount at /var/lib/kubelet/pods/7114a722-9c85-4028-b2ba-18084f4f937f/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount with mountOptions: [bind]
I0309 14:15:31.458627    5808 mount_linux.go:244] Detected OS without systemd
I0309 14:15:31.458634    5808 mount_linux.go:219] Mounting cmd (mount) with arguments ( -o bind /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount /var/lib/kubelet/pods/7114a722-9c85-4028-b2ba-18084f4f937f/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount)
I0309 14:15:31.459798    5808 mount_linux.go:219] Mounting cmd (mount) with arguments ( -o bind,remount /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount /var/lib/kubelet/pods/7114a722-9c85-4028-b2ba-18084f4f937f/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount)
I0309 14:15:31.460708    5808 nodeserver.go:138] NodePublishVolume: volume rg-backups-prod#stpabackupsprod#backups-prod mount /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount at /var/lib/kubelet/pods/7114a722-9c85-4028-b2ba-18084f4f937f/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount successfully
I0309 14:15:31.460721    5808 utils.go:82] GRPC response: {}
Now the first time I intentionally deleted the Pod, and AKS will automically bring up another Pod as expected. However, as you can see in the CSI driver log, there is a "device or resource busy" error during unmounting. All I did was kill the pod and AKS restarted it, there is nothing else running against that mount. Make things even more weird, again notice at the bottom of this log, it actually did sucessfully umounted the volume. However, when I hop into the restarted pod, I can still see my files from Azure blob store mounted into the Pod. (It gets better :lol:)
I0309 14:17:33.091647    5808 utils.go:75] GRPC call: /csi.v1.Node/NodePublishVolume
I0309 14:17:33.091659    5808 utils.go:76] GRPC request: {"staging_target_path":"/var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount","target_path":"/var/lib/kubelet/pods/9e42cec4-b769-4b52-bf30-31b92944be95/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount","volume_capability":{"AccessType":{"Mount":{"mount_flags":["-o allow_other","--file-cache-timeout-in-seconds=120","--use-attr-cache=true","-o attr_timeout=120","-o entry_timeout=120","-o negative_timeout=120","--log-level=LOG_DEBUG","--cache-size-mb=1000","--virtual-directory=true"]}},"access_mode":{"mode":3}},"volume_context":{"containerName":"backups-prod","csi.storage.k8s.io/ephemeral":"false","csi.storage.k8s.io/pod.name":"orientdbservice-58c79ffb79-89s4g","csi.storage.k8s.io/pod.namespace":"pa-data-services","csi.storage.k8s.io/pod.uid":"9e42cec4-b769-4b52-bf30-31b92944be95","csi.storage.k8s.io/serviceAccount.name":"default","protocol":"fuse2","resourceGroup":"rg-backups-prod","storageAccount":"stpabackupsprod"},"volume_id":"rg-backups-prod#stpabackupsprod#backups-prod"}
I0309 14:17:33.092132    5808 nodeserver.go:122] NodePublishVolume: volume rg-backups-prod#stpabackupsprod#backups-prod mounting /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount at /var/lib/kubelet/pods/9e42cec4-b769-4b52-bf30-31b92944be95/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount with mountOptions: [bind]
I0309 14:17:33.092151    5808 mount_linux.go:219] Mounting cmd (mount) with arguments ( -o bind /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount /var/lib/kubelet/pods/9e42cec4-b769-4b52-bf30-31b92944be95/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount)
I0309 14:17:33.093272    5808 mount_linux.go:219] Mounting cmd (mount) with arguments ( -o bind,remount /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount /var/lib/kubelet/pods/9e42cec4-b769-4b52-bf30-31b92944be95/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount)
I0309 14:17:33.094265    5808 nodeserver.go:138] NodePublishVolume: volume rg-backups-prod#stpabackupsprod#backups-prod mount /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount at /var/lib/kubelet/pods/9e42cec4-b769-4b52-bf30-31b92944be95/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount successfully
I0309 14:17:33.094276    5808 utils.go:82] GRPC response: {}
I0309 14:17:34.197473    5808 utils.go:75] GRPC call: /csi.v1.Node/NodeUnpublishVolume
I0309 14:17:34.197490    5808 utils.go:76] GRPC request: {"target_path":"/var/lib/kubelet/pods/7114a722-9c85-4028-b2ba-18084f4f937f/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount","volume_id":"rg-backups-prod#stpabackupsprod#backups-prod"}
I0309 14:17:34.197556    5808 nodeserver.go:199] NodeUnpublishVolume: unmounting volume rg-backups-prod#stpabackupsprod#backups-prod on /var/lib/kubelet/pods/7114a722-9c85-4028-b2ba-18084f4f937f/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount
I0309 14:17:34.197573    5808 mount_helper_common.go:93] unmounting "/var/lib/kubelet/pods/7114a722-9c85-4028-b2ba-18084f4f937f/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount" (corruptedMount: false, mounterCanSkipMountPointChecks: true)
I0309 14:17:34.197588    5808 mount_linux.go:361] Unmounting /var/lib/kubelet/pods/7114a722-9c85-4028-b2ba-18084f4f937f/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount
I0309 14:17:34.199377    5808 mount_helper_common.go:150] Warning: deleting path "/var/lib/kubelet/pods/7114a722-9c85-4028-b2ba-18084f4f937f/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount"
E0309 14:17:34.199413    5808 utils.go:80] GRPC error: rpc error: code = Internal desc = failed to unmount target "/var/lib/kubelet/pods/7114a722-9c85-4028-b2ba-18084f4f937f/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount": remove /var/lib/kubelet/pods/7114a722-9c85-4028-b2ba-18084f4f937f/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount: device or resource busy
I0309 14:17:34.700859    5808 utils.go:75] GRPC call: /csi.v1.Node/NodeUnpublishVolume
I0309 14:17:34.700876    5808 utils.go:76] GRPC request: {"target_path":"/var/lib/kubelet/pods/7114a722-9c85-4028-b2ba-18084f4f937f/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount","volume_id":"rg-backups-prod#stpabackupsprod#backups-prod"}
I0309 14:17:34.700954    5808 nodeserver.go:199] NodeUnpublishVolume: unmounting volume rg-backups-prod#stpabackupsprod#backups-prod on /var/lib/kubelet/pods/7114a722-9c85-4028-b2ba-18084f4f937f/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount
I0309 14:17:34.700972    5808 mount_helper_common.go:93] unmounting "/var/lib/kubelet/pods/7114a722-9c85-4028-b2ba-18084f4f937f/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount" (corruptedMount: false, mounterCanSkipMountPointChecks: true)
I0309 14:17:34.701023    5808 mount_linux.go:361] Unmounting /var/lib/kubelet/pods/7114a722-9c85-4028-b2ba-18084f4f937f/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount
I0309 14:17:34.702487    5808 mount_helper_common.go:150] Warning: deleting path "/var/lib/kubelet/pods/7114a722-9c85-4028-b2ba-18084f4f937f/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount"
I0309 14:17:34.702569    5808 nodeserver.go:204] NodeUnpublishVolume: unmount volume rg-backups-prod#stpabackupsprod#backups-prod on /var/lib/kubelet/pods/7114a722-9c85-4028-b2ba-18084f4f937f/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount successfully
I0309 14:17:34.702620    5808 utils.go:82] GRPC response: {}
Now I delete the pod again, you know just to mess with you, JK, I just want to see what would happen if I delete it again. The end result is after hop into the restarted Pod, I no longer can see any files except a top level two directory /mnt/stpabackupsprod/ and that is it nothing else shows up. As you can see from the log, it's because it actually tried to mount the volume through NodePublishVolume, and actually succeeded. However, then immediately called a /csi.v1.Node/NodeUnpublishVolume on its own. That does explains why I couldn't see any files, because it unmounted itself. However, I have no idea why it would unmount itself?
I0309 14:18:18.144772    5808 utils.go:75] GRPC call: /csi.v1.Node/NodePublishVolume
I0309 14:18:18.144782    5808 utils.go:76] GRPC request: {"staging_target_path":"/var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount","target_path":"/var/lib/kubelet/pods/8c5d1d6b-117e-49ad-a2db-2b0767c9684d/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount","volume_capability":{"AccessType":{"Mount":{"mount_flags":["-o allow_other","--file-cache-timeout-in-seconds=120","--use-attr-cache=true","-o attr_timeout=120","-o entry_timeout=120","-o negative_timeout=120","--log-level=LOG_DEBUG","--cache-size-mb=1000","--virtual-directory=true"]}},"access_mode":{"mode":3}},"volume_context":{"containerName":"backups-prod","csi.storage.k8s.io/ephemeral":"false","csi.storage.k8s.io/pod.name":"orientdbservice-58c79ffb79-4vzfs","csi.storage.k8s.io/pod.namespace":"pa-data-services","csi.storage.k8s.io/pod.uid":"8c5d1d6b-117e-49ad-a2db-2b0767c9684d","csi.storage.k8s.io/serviceAccount.name":"default","protocol":"fuse2","resourceGroup":"rg-backups-prod","storageAccount":"stpabackupsprod"},"volume_id":"rg-backups-prod#stpabackupsprod#backups-prod"}
I0309 14:18:18.145151    5808 nodeserver.go:122] NodePublishVolume: volume rg-backups-prod#stpabackupsprod#backups-prod mounting /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount at /var/lib/kubelet/pods/8c5d1d6b-117e-49ad-a2db-2b0767c9684d/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount with mountOptions: [bind]
I0309 14:18:18.145166    5808 mount_linux.go:219] Mounting cmd (mount) with arguments ( -o bind /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount /var/lib/kubelet/pods/8c5d1d6b-117e-49ad-a2db-2b0767c9684d/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount)
I0309 14:18:18.146333    5808 mount_linux.go:219] Mounting cmd (mount) with arguments ( -o bind,remount /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount /var/lib/kubelet/pods/8c5d1d6b-117e-49ad-a2db-2b0767c9684d/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount)
I0309 14:18:18.147256    5808 nodeserver.go:138] NodePublishVolume: volume rg-backups-prod#stpabackupsprod#backups-prod mount /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount at /var/lib/kubelet/pods/8c5d1d6b-117e-49ad-a2db-2b0767c9684d/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount successfully
I0309 14:18:18.147267    5808 utils.go:82] GRPC response: {}
I0309 14:18:19.456927    5808 utils.go:75] GRPC call: /csi.v1.Node/NodeUnpublishVolume
I0309 14:18:19.456948    5808 utils.go:76] GRPC request: {"target_path":"/var/lib/kubelet/pods/9e42cec4-b769-4b52-bf30-31b92944be95/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount","volume_id":"rg-backups-prod#stpabackupsprod#backups-prod"}
I0309 14:18:19.457044    5808 nodeserver.go:199] NodeUnpublishVolume: unmounting volume rg-backups-prod#stpabackupsprod#backups-prod on /var/lib/kubelet/pods/9e42cec4-b769-4b52-bf30-31b92944be95/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount
I0309 14:18:19.457136    5808 mount_helper_common.go:93] unmounting "/var/lib/kubelet/pods/9e42cec4-b769-4b52-bf30-31b92944be95/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount" (corruptedMount: false, mounterCanSkipMountPointChecks: true)
I0309 14:18:19.457276    5808 mount_linux.go:361] Unmounting /var/lib/kubelet/pods/9e42cec4-b769-4b52-bf30-31b92944be95/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount
I0309 14:18:19.462202    5808 mount_helper_common.go:150] Warning: deleting path "/var/lib/kubelet/pods/9e42cec4-b769-4b52-bf30-31b92944be95/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount"
I0309 14:18:19.462282    5808 nodeserver.go:204] NodeUnpublishVolume: unmount volume rg-backups-prod#stpabackupsprod#backups-prod on /var/lib/kubelet/pods/9e42cec4-b769-4b52-bf30-31b92944be95/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount successfully
I0309 14:18:19.462296    5808 utils.go:82] GRPC response: {}

Now let's look at the AKS 1.24.9 + protocol: fuse2

Here is my PV manifest specifically using fuse2, it's the exact same manifest when I was testing with AKS 1.25.5 + protocol: fuse2
apiVersion: v1
kind: PersistentVolume
metadata:
  name: pv-stpabackupsprod-blob-container
spec:
  capacity:
    storage: 500Gi
  accessModes:
    - ReadOnlyMany
  claimRef:
    apiVersion: v2
    kind: PersistentVolumeClaim
    name: pvc-stpabackupsprod-blob-container
    namespace: pa-data-services
  persistentVolumeReclaimPolicy: Retain
  storageClassName: azureblob-fuse-premium
  csi:
    driver: blob.csi.azure.com
    readOnly: false
    volumeHandle: rg-backups-prod#stpabackupsprod#backups-prod
    volumeAttributes:
      resourceGroup: rg-backups-prod
      storageAccount: stpabackupsprod
      containerName: backups-prod
      protocol: fuse2
    nodeStageSecretRef:
      name: stpabackupsprod
      namespace: pa-data-services
  mountOptions:
    - '-o allow_other'
    - '--file-cache-timeout-in-seconds=120'
    - '--use-attr-cache=true'
    - '-o attr_timeout=120'
    - '-o entry_timeout=120'
    - '-o negative_timeout=120'
    - '--log-level=LOG_DEBUG'
    - '--cache-size-mb=1000'
    - '--virtual-directory=true'
Then I ran the exact same experiments. kubectl apply for the first, then delete once, twice, and I even deleted a third time. The result is after the second deletion, all the mounted files disappeared. You can see the super long CSI driver log in the expansion.
❯ kubectl logs csi-blob-node-c6bcj -c blob -n kube-system -f
I0309 15:20:06.037854    7519 main.go:117] set up prometheus server on [::]:29635
I0309 15:20:06.038040    7519 blob.go:235]
DRIVER INFORMATION:
-------------------
Build Date: "2023-02-24T09:16:45Z"
Compiler: gc
Driver Name: blob.csi.azure.com
Driver Version: v1.19.1
Git Commit: 0aa1d0bc7ebcedf76297fd65b35c56f68b31b27a
Go Version: go1.19.1
Platform: linux/amd64

Streaming logs below:
I0309 15:20:06.038054    7519 blob.go:238] driver userAgent: blob.csi.azure.com/v1.19.1 AKS
I0309 15:20:06.038137    7519 azure.go:73] set QPS(25.000000) and QPS Burst(50) for driver kubeClient
I0309 15:20:06.038380    7519 azure.go:87] reading cloud config from secret kube-system/azure-cloud-provider
I0309 15:20:06.065386    7519 azure.go:94] InitializeCloudFromSecret: failed to get cloud config from secret kube-system/azure-cloud-provider: failed to get secret kube-system/azure-cloud-provider: secrets "azure-cloud-provider" not found
I0309 15:20:06.065405    7519 azure.go:99] could not read cloud config from secret kube-system/azure-cloud-provider
I0309 15:20:06.065411    7519 azure.go:102] AZURE_CREDENTIAL_FILE env var set as /etc/kubernetes/azure.json
I0309 15:20:06.065435    7519 azure.go:113] read cloud config from file: /etc/kubernetes/azure.json successfully
I0309 15:20:06.065944    7519 azure_auth.go:245] Using AzurePublicCloud environment
I0309 15:20:06.065963    7519 azure_auth.go:96] azure: using managed identity extension to retrieve access token
I0309 15:20:06.065969    7519 azure_auth.go:102] azure: using User Assigned MSI ID to retrieve access token
I0309 15:20:06.066004    7519 azure_auth.go:113] azure: User Assigned MSI ID is client ID
I0309 15:20:06.066051    7519 azure.go:775] Azure cloudprovider using try backoff: retries=6, exponent=1.500000, duration=5, jitter=1.000000
I0309 15:20:06.066086    7519 azure_interfaceclient.go:74] Azure InterfacesClient (read ops) using rate limit config: QPS=10, bucket=100
I0309 15:20:06.066098    7519 azure_interfaceclient.go:77] Azure InterfacesClient (write ops) using rate limit config: QPS=10, bucket=100
I0309 15:20:06.066112    7519 azure_vmsizeclient.go:68] Azure VirtualMachineSizesClient (read ops) using rate limit config: QPS=10, bucket=100
I0309 15:20:06.066124    7519 azure_vmsizeclient.go:71] Azure VirtualMachineSizesClient (write ops) using rate limit config: QPS=10, bucket=100
I0309 15:20:06.066136    7519 azure_snapshotclient.go:70] Azure SnapshotClient (read ops) using rate limit config: QPS=10, bucket=100
I0309 15:20:06.066143    7519 azure_snapshotclient.go:73] Azure SnapshotClient (write ops) using rate limit config: QPS=10, bucket=100
I0309 15:20:06.066153    7519 azure_storageaccountclient.go:70] Azure StorageAccountClient (read ops) using rate limit config: QPS=10, bucket=100
I0309 15:20:06.066157    7519 azure_storageaccountclient.go:73] Azure StorageAccountClient (write ops) using rate limit config: QPS=10, bucket=100
I0309 15:20:06.066165    7519 azure_diskclient.go:68] Azure DisksClient using API version: 2022-03-02
I0309 15:20:06.066173    7519 azure_diskclient.go:73] Azure DisksClient (read ops) using rate limit config: QPS=10, bucket=100
I0309 15:20:06.066181    7519 azure_diskclient.go:76] Azure DisksClient (write ops) using rate limit config: QPS=10, bucket=100
I0309 15:20:06.066191    7519 azure_vmclient.go:70] Azure VirtualMachine client (read ops) using rate limit config: QPS=10, bucket=100
I0309 15:20:06.066206    7519 azure_vmclient.go:73] Azure VirtualMachine client (write ops) using rate limit config: QPS=10, bucket=100
I0309 15:20:06.066215    7519 azure_vmssclient.go:70] Azure VirtualMachineScaleSetClient (read ops) using rate limit config: QPS=10, bucket=100
I0309 15:20:06.066220    7519 azure_vmssclient.go:73] Azure VirtualMachineScaleSetClient (write ops) using rate limit config: QPS=10, bucket=100
I0309 15:20:06.066228    7519 azure_vmssvmclient.go:75] Azure vmssVM client (read ops) using rate limit config: QPS=10, bucket=100
I0309 15:20:06.066233    7519 azure_vmssvmclient.go:78] Azure vmssVM client (write ops) using rate limit config: QPS=10, bucket=100
I0309 15:20:06.066245    7519 azure_routeclient.go:69] Azure RoutesClient (read ops) using rate limit config: QPS=10, bucket=100
I0309 15:20:06.066256    7519 azure_routeclient.go:72] Azure RoutesClient (write ops) using rate limit config: QPS=10, bucket=100
I0309 15:20:06.066264    7519 azure_subnetclient.go:70] Azure SubnetsClient (read ops) using rate limit config: QPS=10, bucket=100
I0309 15:20:06.066268    7519 azure_subnetclient.go:73] Azure SubnetsClient (write ops) using rate limit config: QPS=10, bucket=100
I0309 15:20:06.066277    7519 azure_routetableclient.go:69] Azure RouteTablesClient (read ops) using rate limit config: QPS=10, bucket=100
I0309 15:20:06.066289    7519 azure_routetableclient.go:72] Azure RouteTablesClient (write ops) using rate limit config: QPS=10, bucket=100
I0309 15:20:06.066298    7519 azure_loadbalancerclient.go:70] Azure LoadBalancersClient (read ops) using rate limit config: QPS=10, bucket=100
I0309 15:20:06.066306    7519 azure_loadbalancerclient.go:73] Azure LoadBalancersClient (write ops) using rate limit config: QPS=10, bucket=100
I0309 15:20:06.066314    7519 azure_securitygroupclient.go:70] Azure SecurityGroupsClient (read ops) using rate limit config: QPS=10, bucket=100
I0309 15:20:06.066318    7519 azure_securitygroupclient.go:73] Azure SecurityGroupsClient (write ops) using rate limit config: QPS=10, bucket=100
I0309 15:20:06.066331    7519 azure_publicipclient.go:74] Azure PublicIPAddressesClient (read ops) using rate limit config: QPS=10, bucket=100
I0309 15:20:06.066335    7519 azure_publicipclient.go:77] Azure PublicIPAddressesClient (write ops) using rate limit config: QPS=10, bucket=100
I0309 15:20:06.066356    7519 azure_blobclient.go:67] Azure BlobClient using API version: 2021-09-01
I0309 15:20:06.066370    7519 azure_vmasclient.go:70] Azure AvailabilitySetsClient (read ops) using rate limit config: QPS=10, bucket=100
I0309 15:20:06.066375    7519 azure_vmasclient.go:73] Azure AvailabilitySetsClient  (write ops) using rate limit config: QPS=10, bucket=100
I0309 15:20:06.066426    7519 azure.go:1006] attach/detach disk operation rate limit QPS: 6.000000, Bucket: 10
I0309 15:20:06.066440    7519 azure.go:149] starting node server on node(aks-dbcluster-41138153-vmss00001e)
I0309 15:20:06.066451    7519 blob.go:243] cloud: AzurePublicCloud, location: canadacentral, rg: pa-data-prod-node-rg, VnetName: aks-vnet-30598412, VnetResourceGroup: , SubnetName: aks-subnet
I0309 15:20:06.068152    7519 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0309 15:20:06.068194    7519 driver.go:80] Enabling controller service capability: CREATE_DELETE_VOLUME
I0309 15:20:06.068202    7519 driver.go:80] Enabling controller service capability: EXPAND_VOLUME
I0309 15:20:06.068204    7519 driver.go:80] Enabling controller service capability: SINGLE_NODE_MULTI_WRITER
I0309 15:20:06.068208    7519 driver.go:99] Enabling volume access mode: SINGLE_NODE_WRITER
I0309 15:20:06.068214    7519 driver.go:99] Enabling volume access mode: SINGLE_NODE_READER_ONLY
I0309 15:20:06.068216    7519 driver.go:99] Enabling volume access mode: SINGLE_NODE_SINGLE_WRITER
I0309 15:20:06.068219    7519 driver.go:99] Enabling volume access mode: SINGLE_NODE_MULTI_WRITER
I0309 15:20:06.068221    7519 driver.go:99] Enabling volume access mode: MULTI_NODE_READER_ONLY
I0309 15:20:06.068227    7519 driver.go:99] Enabling volume access mode: MULTI_NODE_SINGLE_WRITER
I0309 15:20:06.068229    7519 driver.go:99] Enabling volume access mode: MULTI_NODE_MULTI_WRITER
I0309 15:20:06.068231    7519 driver.go:90] Enabling node service capability: STAGE_UNSTAGE_VOLUME
I0309 15:20:06.068234    7519 driver.go:90] Enabling node service capability: SINGLE_NODE_MULTI_WRITER
I0309 15:20:06.068359    7519 server.go:114] Listening for connections on address: &net.UnixAddr{Name:"//csi/csi.sock", Net:"unix"}
I0309 15:20:06.748790    7519 utils.go:75] GRPC call: /csi.v1.Identity/GetPluginInfo
I0309 15:20:06.748806    7519 utils.go:76] GRPC request: {}
I0309 15:20:06.750264    7519 utils.go:82] GRPC response: {"name":"blob.csi.azure.com","vendor_version":"v1.19.1"}
I0309 15:20:06.885857    7519 utils.go:75] GRPC call: /csi.v1.Identity/GetPluginInfo
I0309 15:20:06.885869    7519 utils.go:76] GRPC request: {}
I0309 15:20:06.885912    7519 utils.go:82] GRPC response: {"name":"blob.csi.azure.com","vendor_version":"v1.19.1"}
I0309 15:20:07.561743    7519 utils.go:75] GRPC call: /csi.v1.Node/NodeGetInfo
I0309 15:20:07.561758    7519 utils.go:76] GRPC request: {}
I0309 15:20:07.561803    7519 utils.go:82] GRPC response: {"node_id":"aks-dbcluster-41138153-vmss00001e"}
I0309 15:20:44.094573    7519 utils.go:75] GRPC call: /csi.v1.Node/NodeStageVolume
I0309 15:20:44.094588    7519 utils.go:76] GRPC request: {"secrets":"***stripped***","staging_target_path":"/var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount","volume_capability":{"AccessType":{"Mount":{"mount_flags":["-o allow_other","--file-cache-timeout-in-seconds=120","--use-attr-cache=true","-o attr_timeout=120","-o entry_timeout=120","-o negative_timeout=120","--log-level=LOG_DEBUG","--cache-size-mb=1000","--virtual-directory=true"]}},"access_mode":{"mode":3}},"volume_context":{"containerName":"backups-prod","protocol":"fuse2","resourceGroup":"rg-backups-prod","storageAccount":"stpabackupsprod"},"volume_id":"rg-backups-prod#stpabackupsprod#backups-prod"}
I0309 15:20:44.095063    7519 blob.go:414] volumeID(rg-backups-prod#stpabackupsprod#backups-prod) authEnv: []
I0309 15:20:44.095103    7519 nodeserver.go:349] target /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount
protocol fuse2

volumeId rg-backups-prod#stpabackupsprod#backups-prod
context map[containerName:backups-prod protocol:fuse2 resourceGroup:rg-backups-prod storageAccount:stpabackupsprod]
mountflags [-o allow_other --file-cache-timeout-in-seconds=120 --use-attr-cache=true -o attr_timeout=120 -o entry_timeout=120 -o negative_timeout=120 --log-level=LOG_DEBUG --cache-size-mb=1000 --virtual-directory=true]
mountOptions [-o allow_other --file-cache-timeout-in-seconds=120 --use-attr-cache=true -o attr_timeout=120 -o entry_timeout=120 -o negative_timeout=120 --log-level=LOG_DEBUG --cache-size-mb=1000 --virtual-directory=true --pre-mount-validate=true --use-https=true --cancel-list-on-mount-seconds=10 --empty-dir-check=false --tmp-path=/mnt/rg-backups-prod#stpabackupsprod#backups-prod --container-name=backups-prod]
args /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount -o allow_other --file-cache-timeout-in-seconds=120 --use-attr-cache=true -o attr_timeout=120 -o entry_timeout=120 -o negative_timeout=120 --log-level=LOG_DEBUG --cache-size-mb=1000 --virtual-directory=true --pre-mount-validate=true --use-https=true --cancel-list-on-mount-seconds=10 --empty-dir-check=false --tmp-path=/mnt/rg-backups-prod#stpabackupsprod#backups-prod --container-name=backups-prod
serverAddress stpabackupsprod.blob.core.windows.net
I0309 15:20:44.095140    7519 nodeserver.go:144] mouting using blobfuse proxy
I0309 15:20:44.095679    7519 nodeserver.go:158] calling BlobfuseProxy: MountAzureBlob function
I0309 15:20:44.918031    7519 nodeserver.go:397] volume(rg-backups-prod#stpabackupsprod#backups-prod) mount on "/var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount" succeeded
I0309 15:20:44.918063    7519 utils.go:82] GRPC response: {}
I0309 15:20:44.921339    7519 utils.go:75] GRPC call: /csi.v1.Node/NodePublishVolume
I0309 15:20:44.921351    7519 utils.go:76] GRPC request: {"staging_target_path":"/var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount","target_path":"/var/lib/kubelet/pods/f851a9d1-52bc-4537-bbe7-5eb5c8a72623/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount","volume_capability":{"AccessType":{"Mount":{"mount_flags":["-o allow_other","--file-cache-timeout-in-seconds=120","--use-attr-cache=true","-o attr_timeout=120","-o entry_timeout=120","-o negative_timeout=120","--log-level=LOG_DEBUG","--cache-size-mb=1000","--virtual-directory=true"]}},"access_mode":{"mode":3}},"volume_context":{"containerName":"backups-prod","csi.storage.k8s.io/ephemeral":"false","csi.storage.k8s.io/pod.name":"orientdbservice-57b7898756-s59wf","csi.storage.k8s.io/pod.namespace":"pa-data-services","csi.storage.k8s.io/pod.uid":"f851a9d1-52bc-4537-bbe7-5eb5c8a72623","csi.storage.k8s.io/serviceAccount.name":"default","protocol":"fuse2","resourceGroup":"rg-backups-prod","storageAccount":"stpabackupsprod"},"volume_id":"rg-backups-prod#stpabackupsprod#backups-prod"}
I0309 15:20:44.921778    7519 nodeserver.go:122] NodePublishVolume: volume rg-backups-prod#stpabackupsprod#backups-prod mounting /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount at /var/lib/kubelet/pods/f851a9d1-52bc-4537-bbe7-5eb5c8a72623/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount with mountOptions: [bind]
I0309 15:20:44.921840    7519 mount_linux.go:244] Detected OS without systemd
I0309 15:20:44.921848    7519 mount_linux.go:219] Mounting cmd (mount) with arguments ( -o bind /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount /var/lib/kubelet/pods/f851a9d1-52bc-4537-bbe7-5eb5c8a72623/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount)
I0309 15:20:44.923250    7519 mount_linux.go:219] Mounting cmd (mount) with arguments ( -o bind,remount /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount /var/lib/kubelet/pods/f851a9d1-52bc-4537-bbe7-5eb5c8a72623/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount)
I0309 15:20:44.924352    7519 nodeserver.go:138] NodePublishVolume: volume rg-backups-prod#stpabackupsprod#backups-prod mount /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount at /var/lib/kubelet/pods/f851a9d1-52bc-4537-bbe7-5eb5c8a72623/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount successfully
I0309 15:20:44.924364    7519 utils.go:82] GRPC response: {}

# first delete

I0309 15:22:52.890790    7519 utils.go:75] GRPC call: /csi.v1.Node/NodePublishVolume
I0309 15:22:52.890801    7519 utils.go:76] GRPC request: {"staging_target_path":"/var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount","target_path":"/var/lib/kubelet/pods/148f2d31-08ed-4af0-85b9-880ecf31d661/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount","volume_capability":{"AccessType":{"Mount":{"mount_flags":["-o allow_other","--file-cache-timeout-in-seconds=120","--use-attr-cache=true","-o attr_timeout=120","-o entry_timeout=120","-o negative_timeout=120","--log-level=LOG_DEBUG","--cache-size-mb=1000","--virtual-directory=true"]}},"access_mode":{"mode":3}},"volume_context":{"containerName":"backups-prod","csi.storage.k8s.io/ephemeral":"false","csi.storage.k8s.io/pod.name":"orientdbservice-57b7898756-7x9c8","csi.storage.k8s.io/pod.namespace":"pa-data-services","csi.storage.k8s.io/pod.uid":"148f2d31-08ed-4af0-85b9-880ecf31d661","csi.storage.k8s.io/serviceAccount.name":"default","protocol":"fuse2","resourceGroup":"rg-backups-prod","storageAccount":"stpabackupsprod"},"volume_id":"rg-backups-prod#stpabackupsprod#backups-prod"}
I0309 15:22:52.891219    7519 nodeserver.go:122] NodePublishVolume: volume rg-backups-prod#stpabackupsprod#backups-prod mounting /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount at /var/lib/kubelet/pods/148f2d31-08ed-4af0-85b9-880ecf31d661/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount with mountOptions: [bind]
I0309 15:22:52.891247    7519 mount_linux.go:219] Mounting cmd (mount) with arguments ( -o bind /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount /var/lib/kubelet/pods/148f2d31-08ed-4af0-85b9-880ecf31d661/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount)
I0309 15:22:52.892519    7519 mount_linux.go:219] Mounting cmd (mount) with arguments ( -o bind,remount /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount /var/lib/kubelet/pods/148f2d31-08ed-4af0-85b9-880ecf31d661/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount)
I0309 15:22:52.895995    7519 nodeserver.go:138] NodePublishVolume: volume rg-backups-prod#stpabackupsprod#backups-prod mount /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount at /var/lib/kubelet/pods/148f2d31-08ed-4af0-85b9-880ecf31d661/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount successfully
I0309 15:22:52.896008    7519 utils.go:82] GRPC response: {}
I0309 15:22:53.995108    7519 utils.go:75] GRPC call: /csi.v1.Node/NodeUnpublishVolume
I0309 15:22:53.995126    7519 utils.go:76] GRPC request: {"target_path":"/var/lib/kubelet/pods/f851a9d1-52bc-4537-bbe7-5eb5c8a72623/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount","volume_id":"rg-backups-prod#stpabackupsprod#backups-prod"}
I0309 15:22:53.995189    7519 nodeserver.go:199] NodeUnpublishVolume: unmounting volume rg-backups-prod#stpabackupsprod#backups-prod on /var/lib/kubelet/pods/f851a9d1-52bc-4537-bbe7-5eb5c8a72623/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount
I0309 15:22:53.995206    7519 mount_helper_common.go:93] unmounting "/var/lib/kubelet/pods/f851a9d1-52bc-4537-bbe7-5eb5c8a72623/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount" (corruptedMount: false, mounterCanSkipMountPointChecks: true)
I0309 15:22:53.995229    7519 mount_linux.go:361] Unmounting /var/lib/kubelet/pods/f851a9d1-52bc-4537-bbe7-5eb5c8a72623/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount
I0309 15:22:53.996893    7519 mount_helper_common.go:150] Warning: deleting path "/var/lib/kubelet/pods/f851a9d1-52bc-4537-bbe7-5eb5c8a72623/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount"
E0309 15:22:53.997016    7519 utils.go:80] GRPC error: rpc error: code = Internal desc = failed to unmount target "/var/lib/kubelet/pods/f851a9d1-52bc-4537-bbe7-5eb5c8a72623/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount": remove /var/lib/kubelet/pods/f851a9d1-52bc-4537-bbe7-5eb5c8a72623/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount: device or resource busy
I0309 15:22:54.499087    7519 utils.go:75] GRPC call: /csi.v1.Node/NodeUnpublishVolume
I0309 15:22:54.499102    7519 utils.go:76] GRPC request: {"target_path":"/var/lib/kubelet/pods/f851a9d1-52bc-4537-bbe7-5eb5c8a72623/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount","volume_id":"rg-backups-prod#stpabackupsprod#backups-prod"}
I0309 15:22:54.499157    7519 nodeserver.go:199] NodeUnpublishVolume: unmounting volume rg-backups-prod#stpabackupsprod#backups-prod on /var/lib/kubelet/pods/f851a9d1-52bc-4537-bbe7-5eb5c8a72623/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount
I0309 15:22:54.499180    7519 mount_helper_common.go:93] unmounting "/var/lib/kubelet/pods/f851a9d1-52bc-4537-bbe7-5eb5c8a72623/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount" (corruptedMount: false, mounterCanSkipMountPointChecks: true)
I0309 15:22:54.499190    7519 mount_linux.go:361] Unmounting /var/lib/kubelet/pods/f851a9d1-52bc-4537-bbe7-5eb5c8a72623/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount
I0309 15:22:54.500513    7519 mount_helper_common.go:150] Warning: deleting path "/var/lib/kubelet/pods/f851a9d1-52bc-4537-bbe7-5eb5c8a72623/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount"
I0309 15:22:54.500584    7519 nodeserver.go:204] NodeUnpublishVolume: unmount volume rg-backups-prod#stpabackupsprod#backups-prod on /var/lib/kubelet/pods/f851a9d1-52bc-4537-bbe7-5eb5c8a72623/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount successfully
I0309 15:22:54.500592    7519 utils.go:82] GRPC response: {}

# second delete

I0309 15:27:44.061632    7519 utils.go:75] GRPC call: /csi.v1.Node/NodePublishVolume
I0309 15:27:44.061653    7519 utils.go:76] GRPC request: {"staging_target_path":"/var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount","target_path":"/var/lib/kubelet/pods/42c84958-666e-467c-b86e-a7fcd70e3a26/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount","volume_capability":{"AccessType":{"Mount":{"mount_flags":["-o allow_other","--file-cache-timeout-in-seconds=120","--use-attr-cache=true","-o attr_timeout=120","-o entry_timeout=120","-o negative_timeout=120","--log-level=LOG_DEBUG","--cache-size-mb=1000","--virtual-directory=true"]}},"access_mode":{"mode":3}},"volume_context":{"containerName":"backups-prod","csi.storage.k8s.io/ephemeral":"false","csi.storage.k8s.io/pod.name":"orientdbservice-57b7898756-bmggl","csi.storage.k8s.io/pod.namespace":"pa-data-services","csi.storage.k8s.io/pod.uid":"42c84958-666e-467c-b86e-a7fcd70e3a26","csi.storage.k8s.io/serviceAccount.name":"default","protocol":"fuse2","resourceGroup":"rg-backups-prod","storageAccount":"stpabackupsprod"},"volume_id":"rg-backups-prod#stpabackupsprod#backups-prod"}
I0309 15:27:44.062199    7519 nodeserver.go:122] NodePublishVolume: volume rg-backups-prod#stpabackupsprod#backups-prod mounting /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount at /var/lib/kubelet/pods/42c84958-666e-467c-b86e-a7fcd70e3a26/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount with mountOptions: [bind]
I0309 15:27:44.062282    7519 mount_linux.go:219] Mounting cmd (mount) with arguments ( -o bind /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount /var/lib/kubelet/pods/42c84958-666e-467c-b86e-a7fcd70e3a26/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount)
I0309 15:27:44.063724    7519 mount_linux.go:219] Mounting cmd (mount) with arguments ( -o bind,remount /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount /var/lib/kubelet/pods/42c84958-666e-467c-b86e-a7fcd70e3a26/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount)
I0309 15:27:44.065165    7519 nodeserver.go:138] NodePublishVolume: volume rg-backups-prod#stpabackupsprod#backups-prod mount /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount at /var/lib/kubelet/pods/42c84958-666e-467c-b86e-a7fcd70e3a26/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount successfully
I0309 15:27:44.065183    7519 utils.go:82] GRPC response: {}
I0309 15:27:45.268586    7519 utils.go:75] GRPC call: /csi.v1.Node/NodeUnpublishVolume
I0309 15:27:45.268602    7519 utils.go:76] GRPC request: {"target_path":"/var/lib/kubelet/pods/148f2d31-08ed-4af0-85b9-880ecf31d661/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount","volume_id":"rg-backups-prod#stpabackupsprod#backups-prod"}
I0309 15:27:45.268656    7519 nodeserver.go:199] NodeUnpublishVolume: unmounting volume rg-backups-prod#stpabackupsprod#backups-prod on /var/lib/kubelet/pods/148f2d31-08ed-4af0-85b9-880ecf31d661/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount
I0309 15:27:45.268782    7519 mount_helper_common.go:93] unmounting "/var/lib/kubelet/pods/148f2d31-08ed-4af0-85b9-880ecf31d661/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount" (corruptedMount: false, mounterCanSkipMountPointChecks: true)
I0309 15:27:45.268792    7519 mount_linux.go:361] Unmounting /var/lib/kubelet/pods/148f2d31-08ed-4af0-85b9-880ecf31d661/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount
I0309 15:27:45.271301    7519 mount_helper_common.go:150] Warning: deleting path "/var/lib/kubelet/pods/148f2d31-08ed-4af0-85b9-880ecf31d661/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount"
I0309 15:27:45.271358    7519 nodeserver.go:204] NodeUnpublishVolume: unmount volume rg-backups-prod#stpabackupsprod#backups-prod on /var/lib/kubelet/pods/148f2d31-08ed-4af0-85b9-880ecf31d661/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount successfully
I0309 15:27:45.271367    7519 utils.go:82] GRPC response: {}

# third delete

I0309 15:30:31.007299    7519 utils.go:75] GRPC call: /csi.v1.Node/NodePublishVolume
I0309 15:30:31.007317    7519 utils.go:76] GRPC request: {"staging_target_path":"/var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount","target_path":"/var/lib/kubelet/pods/a6cd402d-c114-4e54-8146-f22f901891f4/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount","volume_capability":{"AccessType":{"Mount":{"mount_flags":["-o allow_other","--file-cache-timeout-in-seconds=120","--use-attr-cache=true","-o attr_timeout=120","-o entry_timeout=120","-o negative_timeout=120","--log-level=LOG_DEBUG","--cache-size-mb=1000","--virtual-directory=true"]}},"access_mode":{"mode":3}},"volume_context":{"containerName":"backups-prod","csi.storage.k8s.io/ephemeral":"false","csi.storage.k8s.io/pod.name":"orientdbservice-57b7898756-bvk7v","csi.storage.k8s.io/pod.namespace":"pa-data-services","csi.storage.k8s.io/pod.uid":"a6cd402d-c114-4e54-8146-f22f901891f4","csi.storage.k8s.io/serviceAccount.name":"default","protocol":"fuse2","resourceGroup":"rg-backups-prod","storageAccount":"stpabackupsprod"},"volume_id":"rg-backups-prod#stpabackupsprod#backups-prod"}
I0309 15:30:31.007809    7519 nodeserver.go:122] NodePublishVolume: volume rg-backups-prod#stpabackupsprod#backups-prod mounting /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount at /var/lib/kubelet/pods/a6cd402d-c114-4e54-8146-f22f901891f4/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount with mountOptions: [bind]
I0309 15:30:31.007833    7519 mount_linux.go:219] Mounting cmd (mount) with arguments ( -o bind /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount /var/lib/kubelet/pods/a6cd402d-c114-4e54-8146-f22f901891f4/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount)
I0309 15:30:31.008967    7519 mount_linux.go:219] Mounting cmd (mount) with arguments ( -o bind,remount /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount /var/lib/kubelet/pods/a6cd402d-c114-4e54-8146-f22f901891f4/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount)
I0309 15:30:31.009903    7519 nodeserver.go:138] NodePublishVolume: volume rg-backups-prod#stpabackupsprod#backups-prod mount /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount at /var/lib/kubelet/pods/a6cd402d-c114-4e54-8146-f22f901891f4/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount successfully
I0309 15:30:31.009925    7519 utils.go:82] GRPC response: {}
I0309 15:30:32.113707    7519 utils.go:75] GRPC call: /csi.v1.Node/NodeUnpublishVolume
I0309 15:30:32.113727    7519 utils.go:76] GRPC request: {"target_path":"/var/lib/kubelet/pods/42c84958-666e-467c-b86e-a7fcd70e3a26/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount","volume_id":"rg-backups-prod#stpabackupsprod#backups-prod"}
I0309 15:30:32.113772    7519 nodeserver.go:199] NodeUnpublishVolume: unmounting volume rg-backups-prod#stpabackupsprod#backups-prod on /var/lib/kubelet/pods/42c84958-666e-467c-b86e-a7fcd70e3a26/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount
I0309 15:30:32.113794    7519 mount_helper_common.go:93] unmounting "/var/lib/kubelet/pods/42c84958-666e-467c-b86e-a7fcd70e3a26/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount" (corruptedMount: false, mounterCanSkipMountPointChecks: true)
I0309 15:30:32.113810    7519 mount_linux.go:361] Unmounting /var/lib/kubelet/pods/42c84958-666e-467c-b86e-a7fcd70e3a26/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount
I0309 15:30:32.115457    7519 mount_helper_common.go:150] Warning: deleting path "/var/lib/kubelet/pods/42c84958-666e-467c-b86e-a7fcd70e3a26/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount"
I0309 15:30:32.115507    7519 nodeserver.go:204] NodeUnpublishVolume: unmount volume rg-backups-prod#stpabackupsprod#backups-prod on /var/lib/kubelet/pods/42c84958-666e-467c-b86e-a7fcd70e3a26/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount successfully
I0309 15:30:32.115515    7519 utils.go:82] GRPC response: {}
Notice this CSI driver log below. Because when switching to the next experiment of using `AKS 1.24.9` + `protocol: fuse1` w/o `--virtual-directory` I need to delete the exsiting deployments as well as PV. CSI driver logs showed the following error.
I0309 15:33:31.318875    7519 utils.go:75] GRPC call: /csi.v1.Node/NodeUnpublishVolume
I0309 15:33:31.318895    7519 utils.go:76] GRPC request: {"target_path":"/var/lib/kubelet/pods/a6cd402d-c114-4e54-8146-f22f901891f4/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount","volume_id":"rg-backups-prod#stpabackupsprod#backups-prod"}
I0309 15:33:31.318943    7519 nodeserver.go:199] NodeUnpublishVolume: unmounting volume rg-backups-prod#stpabackupsprod#backups-prod on /var/lib/kubelet/pods/a6cd402d-c114-4e54-8146-f22f901891f4/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount
I0309 15:33:31.318962    7519 mount_helper_common.go:93] unmounting "/var/lib/kubelet/pods/a6cd402d-c114-4e54-8146-f22f901891f4/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount" (corruptedMount: false, mounterCanSkipMountPointChecks: true)
I0309 15:33:31.318980    7519 mount_linux.go:361] Unmounting /var/lib/kubelet/pods/a6cd402d-c114-4e54-8146-f22f901891f4/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount
I0309 15:33:31.320580    7519 mount_helper_common.go:150] Warning: deleting path "/var/lib/kubelet/pods/a6cd402d-c114-4e54-8146-f22f901891f4/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount"
I0309 15:33:31.320623    7519 nodeserver.go:204] NodeUnpublishVolume: unmount volume rg-backups-prod#stpabackupsprod#backups-prod on /var/lib/kubelet/pods/a6cd402d-c114-4e54-8146-f22f901891f4/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount successfully
I0309 15:33:31.320632    7519 utils.go:82] GRPC response: {}
I0309 15:33:31.421623    7519 utils.go:75] GRPC call: /csi.v1.Node/NodeUnstageVolume
I0309 15:33:31.421637    7519 utils.go:76] GRPC request: {"staging_target_path":"/var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount","volume_id":"rg-backups-prod#stpabackupsprod#backups-prod"}
I0309 15:33:31.421692    7519 nodeserver.go:418] NodeUnstageVolume: volume rg-backups-prod#stpabackupsprod#backups-prod unmounting on /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount
I0309 15:33:31.421709    7519 mount_helper_common.go:93] unmounting "/var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount" (corruptedMount: false, mounterCanSkipMountPointChecks: true)
I0309 15:33:31.421715    7519 mount_linux.go:361] Unmounting /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount
I0309 15:33:31.422944    7519 mount_linux.go:374] ignoring 'not mounted' error for /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount
I0309 15:33:31.422958    7519 mount_helper_common.go:150] Warning: deleting path "/var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount"
I0309 15:33:31.423015    7519 nodeserver.go:423] NodeUnstageVolume: volume rg-backups-prod#stpabackupsprod#backups-prod unmount on /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount successfully
I0309 15:33:31.423031    7519 utils.go:82] GRPC response: {}

Finally, let's look at the AKS 1.24.9 + protocol: fuse1 w/o --virtual-directory mounting option.

TL;DR: First of all, why w/o --virtual-directory because fuse1 does not support that mounting option, so I have to use fuse1. But this combination of AKS 1.24.9 + protocol: fuse1 w/o --virtual-directory does not have the issue of repeatedly deleting pods and restarting pods automatically by AKS. After numerous times, I can still see all my mounted Azure Blob files.

Here is my PV manifest specifically using fuse1 w/o --virtual-directory mounting option
apiVersion: v1
kind: PersistentVolume
metadata:
  name: pv-stpabackupsprod-blob-container
spec:
  capacity:
    storage: 500Gi
  accessModes:
    - ReadOnlyMany
  claimRef:
    apiVersion: v2
    kind: PersistentVolumeClaim
    name: pvc-stpabackupsprod-blob-container
    namespace: pa-data-services
  persistentVolumeReclaimPolicy: Retain
  storageClassName: azureblob-fuse-premium
  csi:
    driver: blob.csi.azure.com
    readOnly: false
    volumeHandle: rg-backups-prod#stpabackupsprod#backups-prod
    volumeAttributes:
      resourceGroup: rg-backups-prod
      storageAccount: stpabackupsprod
      containerName: backups-prod
      protocol: fuse1
    nodeStageSecretRef:
      name: stpabackupsprod
      namespace: pa-data-services
  mountOptions:
    - '-o allow_other'
    - '--file-cache-timeout-in-seconds=120'
    - '--use-attr-cache=true'
    - '-o attr_timeout=120'
    - '-o entry_timeout=120'
    - '-o negative_timeout=120'
    - '--log-level=LOG_DEBUG'
    - '--cache-size-mb=1000'
As you can see from the following super long CSI driver log. With the combination of `AKS 1.24.9` + `protocol: fuse1` w/o `--virtual-directory`, no matter how many times I restarted the pod, there are no GRPC error regarding device or resource busy, and I can still see all my mounted Azure Blob files after each time I hop into the restarted pod. Even though, it does work in my favour with this combination. However, I'm still baffled of how could it be. Because each restart of the pod, you can see in the log, it did /csi.v1.Node/NodePublishVolume and immediately /csi.v1.Node/NodeUnpublishVolume, yet somehow all the mounted files are still there...
# `AKS 1.24.9` + `protocol: fuse1` w/o `--virtual-directory`, first kubectl apply to deploy everything

I0309 15:43:25.409785    7519 utils.go:75] GRPC call: /csi.v1.Node/NodeStageVolume
I0309 15:43:25.409811    7519 utils.go:76] GRPC request: {"secrets":"***stripped***","staging_target_path":"/var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount","volume_capability":{"AccessType":{"Mount":{"mount_flags":["-o allow_other","--file-cache-timeout-in-seconds=120","--use-attr-cache=true","-o attr_timeout=120","-o entry_timeout=120","-o negative_timeout=120","--log-level=LOG_DEBUG","--cache-size-mb=1000"]}},"access_mode":{"mode":3}},"volume_context":{"containerName":"backups-prod","protocol":"fuse1","resourceGroup":"rg-backups-prod","storageAccount":"stpabackupsprod"},"volume_id":"rg-backups-prod#stpabackupsprod#backups-prod"}
I0309 15:43:25.410196    7519 blob.go:414] volumeID(rg-backups-prod#stpabackupsprod#backups-prod) authEnv: []
I0309 15:43:25.410248    7519 nodeserver.go:349] target /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount
protocol fuse1

volumeId rg-backups-prod#stpabackupsprod#backups-prod
context map[containerName:backups-prod protocol:fuse1 resourceGroup:rg-backups-prod storageAccount:stpabackupsprod]
mountflags [-o allow_other --file-cache-timeout-in-seconds=120 --use-attr-cache=true -o attr_timeout=120 -o entry_timeout=120 -o negative_timeout=120 --log-level=LOG_DEBUG --cache-size-mb=1000]
mountOptions [-o allow_other --file-cache-timeout-in-seconds=120 --use-attr-cache=true -o attr_timeout=120 -o entry_timeout=120 -o negative_timeout=120 --log-level=LOG_DEBUG --cache-size-mb=1000 --empty-dir-check=false --tmp-path=/mnt/rg-backups-prod#stpabackupsprod#backups-prod --container-name=backups-prod --pre-mount-validate=true --use-https=true --cancel-list-on-mount-seconds=10]
args /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount -o allow_other --file-cache-timeout-in-seconds=120 --use-attr-cache=true -o attr_timeout=120 -o entry_timeout=120 -o negative_timeout=120 --log-level=LOG_DEBUG --cache-size-mb=1000 --empty-dir-check=false --tmp-path=/mnt/rg-backups-prod#stpabackupsprod#backups-prod --container-name=backups-prod --pre-mount-validate=true --use-https=true --cancel-list-on-mount-seconds=10
serverAddress stpabackupsprod.blob.core.windows.net
I0309 15:43:25.410276    7519 nodeserver.go:144] mouting using blobfuse proxy
I0309 15:43:25.410704    7519 nodeserver.go:158] calling BlobfuseProxy: MountAzureBlob function
I0309 15:43:25.560621    7519 nodeserver.go:397] volume(rg-backups-prod#stpabackupsprod#backups-prod) mount on "/var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount" succeeded
I0309 15:43:25.560664    7519 utils.go:82] GRPC response: {}
I0309 15:43:25.562860    7519 utils.go:75] GRPC call: /csi.v1.Node/NodePublishVolume
I0309 15:43:25.562871    7519 utils.go:76] GRPC request: {"staging_target_path":"/var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount","target_path":"/var/lib/kubelet/pods/ed8ddd8d-cfef-4f9a-b792-6437d87a6906/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount","volume_capability":{"AccessType":{"Mount":{"mount_flags":["-o allow_other","--file-cache-timeout-in-seconds=120","--use-attr-cache=true","-o attr_timeout=120","-o entry_timeout=120","-o negative_timeout=120","--log-level=LOG_DEBUG","--cache-size-mb=1000"]}},"access_mode":{"mode":3}},"volume_context":{"containerName":"backups-prod","csi.storage.k8s.io/ephemeral":"false","csi.storage.k8s.io/pod.name":"orientdbservice-57b7898756-p6bsj","csi.storage.k8s.io/pod.namespace":"pa-data-services","csi.storage.k8s.io/pod.uid":"ed8ddd8d-cfef-4f9a-b792-6437d87a6906","csi.storage.k8s.io/serviceAccount.name":"default","protocol":"fuse1","resourceGroup":"rg-backups-prod","storageAccount":"stpabackupsprod"},"volume_id":"rg-backups-prod#stpabackupsprod#backups-prod"}
I0309 15:43:25.563275    7519 nodeserver.go:122] NodePublishVolume: volume rg-backups-prod#stpabackupsprod#backups-prod mounting /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount at /var/lib/kubelet/pods/ed8ddd8d-cfef-4f9a-b792-6437d87a6906/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount with mountOptions: [bind]
I0309 15:43:25.563293    7519 mount_linux.go:219] Mounting cmd (mount) with arguments ( -o bind /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount /var/lib/kubelet/pods/ed8ddd8d-cfef-4f9a-b792-6437d87a6906/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount)
I0309 15:43:25.564445    7519 mount_linux.go:219] Mounting cmd (mount) with arguments ( -o bind,remount /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount /var/lib/kubelet/pods/ed8ddd8d-cfef-4f9a-b792-6437d87a6906/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount)
I0309 15:43:25.565278    7519 nodeserver.go:138] NodePublishVolume: volume rg-backups-prod#stpabackupsprod#backups-prod mount /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount at /var/lib/kubelet/pods/ed8ddd8d-cfef-4f9a-b792-6437d87a6906/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount successfully
I0309 15:43:25.565293    7519 utils.go:82] GRPC response: {}

# first delete the pod
I0309 15:44:57.047764    7519 utils.go:75] GRPC call: /csi.v1.Node/NodePublishVolume
I0309 15:44:57.047777    7519 utils.go:76] GRPC request: {"staging_target_path":"/var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount","target_path":"/var/lib/kubelet/pods/ebbae26d-92d8-4302-a9aa-ba76bdd89d97/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount","volume_capability":{"AccessType":{"Mount":{"mount_flags":["-o allow_other","--file-cache-timeout-in-seconds=120","--use-attr-cache=true","-o attr_timeout=120","-o entry_timeout=120","-o negative_timeout=120","--log-level=LOG_DEBUG","--cache-size-mb=1000"]}},"access_mode":{"mode":3}},"volume_context":{"containerName":"backups-prod","csi.storage.k8s.io/ephemeral":"false","csi.storage.k8s.io/pod.name":"orientdbservice-57b7898756-sc6tf","csi.storage.k8s.io/pod.namespace":"pa-data-services","csi.storage.k8s.io/pod.uid":"ebbae26d-92d8-4302-a9aa-ba76bdd89d97","csi.storage.k8s.io/serviceAccount.name":"default","protocol":"fuse1","resourceGroup":"rg-backups-prod","storageAccount":"stpabackupsprod"},"volume_id":"rg-backups-prod#stpabackupsprod#backups-prod"}
I0309 15:44:57.048103    7519 nodeserver.go:122] NodePublishVolume: volume rg-backups-prod#stpabackupsprod#backups-prod mounting /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount at /var/lib/kubelet/pods/ebbae26d-92d8-4302-a9aa-ba76bdd89d97/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount with mountOptions: [bind]
I0309 15:44:57.048119    7519 mount_linux.go:219] Mounting cmd (mount) with arguments ( -o bind /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount /var/lib/kubelet/pods/ebbae26d-92d8-4302-a9aa-ba76bdd89d97/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount)
I0309 15:44:57.049299    7519 mount_linux.go:219] Mounting cmd (mount) with arguments ( -o bind,remount /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount /var/lib/kubelet/pods/ebbae26d-92d8-4302-a9aa-ba76bdd89d97/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount)
I0309 15:44:57.050255    7519 nodeserver.go:138] NodePublishVolume: volume rg-backups-prod#stpabackupsprod#backups-prod mount /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount at /var/lib/kubelet/pods/ebbae26d-92d8-4302-a9aa-ba76bdd89d97/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount successfully
I0309 15:44:57.050268    7519 utils.go:82] GRPC response: {}
I0309 15:44:58.154258    7519 utils.go:75] GRPC call: /csi.v1.Node/NodeUnpublishVolume
I0309 15:44:58.154331    7519 utils.go:76] GRPC request: {"target_path":"/var/lib/kubelet/pods/ed8ddd8d-cfef-4f9a-b792-6437d87a6906/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount","volume_id":"rg-backups-prod#stpabackupsprod#backups-prod"}
I0309 15:44:58.154420    7519 nodeserver.go:199] NodeUnpublishVolume: unmounting volume rg-backups-prod#stpabackupsprod#backups-prod on /var/lib/kubelet/pods/ed8ddd8d-cfef-4f9a-b792-6437d87a6906/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount
I0309 15:44:58.154437    7519 mount_helper_common.go:93] unmounting "/var/lib/kubelet/pods/ed8ddd8d-cfef-4f9a-b792-6437d87a6906/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount" (corruptedMount: false, mounterCanSkipMountPointChecks: true)
I0309 15:44:58.154515    7519 mount_linux.go:361] Unmounting /var/lib/kubelet/pods/ed8ddd8d-cfef-4f9a-b792-6437d87a6906/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount
I0309 15:44:58.160779    7519 mount_helper_common.go:150] Warning: deleting path "/var/lib/kubelet/pods/ed8ddd8d-cfef-4f9a-b792-6437d87a6906/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount"
I0309 15:44:58.160844    7519 nodeserver.go:204] NodeUnpublishVolume: unmount volume rg-backups-prod#stpabackupsprod#backups-prod on /var/lib/kubelet/pods/ed8ddd8d-cfef-4f9a-b792-6437d87a6906/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount successfully
I0309 15:44:58.160859    7519 utils.go:82] GRPC response: {}


# second delete the pod
I0309 15:46:10.933244    7519 utils.go:75] GRPC call: /csi.v1.Node/NodePublishVolume
I0309 15:46:10.933259    7519 utils.go:76] GRPC request: {"staging_target_path":"/var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount","target_path":"/var/lib/kubelet/pods/c8449d93-a063-40ee-be86-cf852b85a757/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount","volume_capability":{"AccessType":{"Mount":{"mount_flags":["-o allow_other","--file-cache-timeout-in-seconds=120","--use-attr-cache=true","-o attr_timeout=120","-o entry_timeout=120","-o negative_timeout=120","--log-level=LOG_DEBUG","--cache-size-mb=1000"]}},"access_mode":{"mode":3}},"volume_context":{"containerName":"backups-prod","csi.storage.k8s.io/ephemeral":"false","csi.storage.k8s.io/pod.name":"orientdbservice-57b7898756-fzsdj","csi.storage.k8s.io/pod.namespace":"pa-data-services","csi.storage.k8s.io/pod.uid":"c8449d93-a063-40ee-be86-cf852b85a757","csi.storage.k8s.io/serviceAccount.name":"default","protocol":"fuse1","resourceGroup":"rg-backups-prod","storageAccount":"stpabackupsprod"},"volume_id":"rg-backups-prod#stpabackupsprod#backups-prod"}
I0309 15:46:10.933773    7519 nodeserver.go:122] NodePublishVolume: volume rg-backups-prod#stpabackupsprod#backups-prod mounting /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount at /var/lib/kubelet/pods/c8449d93-a063-40ee-be86-cf852b85a757/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount with mountOptions: [bind]
I0309 15:46:10.933796    7519 mount_linux.go:219] Mounting cmd (mount) with arguments ( -o bind /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount /var/lib/kubelet/pods/c8449d93-a063-40ee-be86-cf852b85a757/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount)
I0309 15:46:10.935319    7519 mount_linux.go:219] Mounting cmd (mount) with arguments ( -o bind,remount /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount /var/lib/kubelet/pods/c8449d93-a063-40ee-be86-cf852b85a757/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount)
I0309 15:46:10.938543    7519 nodeserver.go:138] NodePublishVolume: volume rg-backups-prod#stpabackupsprod#backups-prod mount /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount at /var/lib/kubelet/pods/c8449d93-a063-40ee-be86-cf852b85a757/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount successfully
I0309 15:46:10.938567    7519 utils.go:82] GRPC response: {}
I0309 15:46:11.937312    7519 utils.go:75] GRPC call: /csi.v1.Node/NodeUnpublishVolume
I0309 15:46:11.937356    7519 utils.go:76] GRPC request: {"target_path":"/var/lib/kubelet/pods/ebbae26d-92d8-4302-a9aa-ba76bdd89d97/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount","volume_id":"rg-backups-prod#stpabackupsprod#backups-prod"}
I0309 15:46:11.937413    7519 nodeserver.go:199] NodeUnpublishVolume: unmounting volume rg-backups-prod#stpabackupsprod#backups-prod on /var/lib/kubelet/pods/ebbae26d-92d8-4302-a9aa-ba76bdd89d97/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount
I0309 15:46:11.937430    7519 mount_helper_common.go:93] unmounting "/var/lib/kubelet/pods/ebbae26d-92d8-4302-a9aa-ba76bdd89d97/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount" (corruptedMount: false, mounterCanSkipMountPointChecks: true)
I0309 15:46:11.937537    7519 mount_linux.go:361] Unmounting /var/lib/kubelet/pods/ebbae26d-92d8-4302-a9aa-ba76bdd89d97/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount
I0309 15:46:11.939411    7519 mount_helper_common.go:150] Warning: deleting path "/var/lib/kubelet/pods/ebbae26d-92d8-4302-a9aa-ba76bdd89d97/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount"
I0309 15:46:11.939494    7519 nodeserver.go:204] NodeUnpublishVolume: unmount volume rg-backups-prod#stpabackupsprod#backups-prod on /var/lib/kubelet/pods/ebbae26d-92d8-4302-a9aa-ba76bdd89d97/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount successfully
I0309 15:46:11.939513    7519 utils.go:82] GRPC response: {}


# third delete the pod
I0309 15:46:52.563104    7519 utils.go:75] GRPC call: /csi.v1.Node/NodePublishVolume
I0309 15:46:52.563221    7519 utils.go:76] GRPC request: {"staging_target_path":"/var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount","target_path":"/var/lib/kubelet/pods/321b6ad1-d572-4bce-bfbb-1d944cbffe0a/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount","volume_capability":{"AccessType":{"Mount":{"mount_flags":["-o allow_other","--file-cache-timeout-in-seconds=120","--use-attr-cache=true","-o attr_timeout=120","-o entry_timeout=120","-o negative_timeout=120","--log-level=LOG_DEBUG","--cache-size-mb=1000"]}},"access_mode":{"mode":3}},"volume_context":{"containerName":"backups-prod","csi.storage.k8s.io/ephemeral":"false","csi.storage.k8s.io/pod.name":"orientdbservice-57b7898756-fc7tv","csi.storage.k8s.io/pod.namespace":"pa-data-services","csi.storage.k8s.io/pod.uid":"321b6ad1-d572-4bce-bfbb-1d944cbffe0a","csi.storage.k8s.io/serviceAccount.name":"default","protocol":"fuse1","resourceGroup":"rg-backups-prod","storageAccount":"stpabackupsprod"},"volume_id":"rg-backups-prod#stpabackupsprod#backups-prod"}
I0309 15:46:52.563624    7519 nodeserver.go:122] NodePublishVolume: volume rg-backups-prod#stpabackupsprod#backups-prod mounting /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount at /var/lib/kubelet/pods/321b6ad1-d572-4bce-bfbb-1d944cbffe0a/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount with mountOptions: [bind]
I0309 15:46:52.563646    7519 mount_linux.go:219] Mounting cmd (mount) with arguments ( -o bind /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount /var/lib/kubelet/pods/321b6ad1-d572-4bce-bfbb-1d944cbffe0a/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount)
I0309 15:46:52.564890    7519 mount_linux.go:219] Mounting cmd (mount) with arguments ( -o bind,remount /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount /var/lib/kubelet/pods/321b6ad1-d572-4bce-bfbb-1d944cbffe0a/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount)
I0309 15:46:52.565967    7519 nodeserver.go:138] NodePublishVolume: volume rg-backups-prod#stpabackupsprod#backups-prod mount /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount at /var/lib/kubelet/pods/321b6ad1-d572-4bce-bfbb-1d944cbffe0a/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount successfully
I0309 15:46:52.565979    7519 utils.go:82] GRPC response: {}
I0309 15:46:54.072091    7519 utils.go:75] GRPC call: /csi.v1.Node/NodeUnpublishVolume
I0309 15:46:54.072111    7519 utils.go:76] GRPC request: {"target_path":"/var/lib/kubelet/pods/c8449d93-a063-40ee-be86-cf852b85a757/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount","volume_id":"rg-backups-prod#stpabackupsprod#backups-prod"}
I0309 15:46:54.072183    7519 nodeserver.go:199] NodeUnpublishVolume: unmounting volume rg-backups-prod#stpabackupsprod#backups-prod on /var/lib/kubelet/pods/c8449d93-a063-40ee-be86-cf852b85a757/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount
I0309 15:46:54.072206    7519 mount_helper_common.go:93] unmounting "/var/lib/kubelet/pods/c8449d93-a063-40ee-be86-cf852b85a757/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount" (corruptedMount: false, mounterCanSkipMountPointChecks: true)
I0309 15:46:54.072218    7519 mount_linux.go:361] Unmounting /var/lib/kubelet/pods/c8449d93-a063-40ee-be86-cf852b85a757/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount
I0309 15:46:54.073995    7519 mount_helper_common.go:150] Warning: deleting path "/var/lib/kubelet/pods/c8449d93-a063-40ee-be86-cf852b85a757/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount"
I0309 15:46:54.074041    7519 nodeserver.go:204] NodeUnpublishVolume: unmount volume rg-backups-prod#stpabackupsprod#backups-prod on /var/lib/kubelet/pods/c8449d93-a063-40ee-be86-cf852b85a757/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount successfully
I0309 15:46:54.074049    7519 utils.go:82] GRPC response: {}

# fourth delete the pod
I0309 15:47:53.507079    7519 utils.go:75] GRPC call: /csi.v1.Node/NodePublishVolume
I0309 15:47:53.507093    7519 utils.go:76] GRPC request: {"staging_target_path":"/var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount","target_path":"/var/lib/kubelet/pods/716e45d3-e7d6-44d8-930e-6ec629be3692/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount","volume_capability":{"AccessType":{"Mount":{"mount_flags":["-o allow_other","--file-cache-timeout-in-seconds=120","--use-attr-cache=true","-o attr_timeout=120","-o entry_timeout=120","-o negative_timeout=120","--log-level=LOG_DEBUG","--cache-size-mb=1000"]}},"access_mode":{"mode":3}},"volume_context":{"containerName":"backups-prod","csi.storage.k8s.io/ephemeral":"false","csi.storage.k8s.io/pod.name":"orientdbservice-57b7898756-m4fnv","csi.storage.k8s.io/pod.namespace":"pa-data-services","csi.storage.k8s.io/pod.uid":"716e45d3-e7d6-44d8-930e-6ec629be3692","csi.storage.k8s.io/serviceAccount.name":"default","protocol":"fuse1","resourceGroup":"rg-backups-prod","storageAccount":"stpabackupsprod"},"volume_id":"rg-backups-prod#stpabackupsprod#backups-prod"}
I0309 15:47:53.507587    7519 nodeserver.go:122] NodePublishVolume: volume rg-backups-prod#stpabackupsprod#backups-prod mounting /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount at /var/lib/kubelet/pods/716e45d3-e7d6-44d8-930e-6ec629be3692/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount with mountOptions: [bind]
I0309 15:47:53.507605    7519 mount_linux.go:219] Mounting cmd (mount) with arguments ( -o bind /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount /var/lib/kubelet/pods/716e45d3-e7d6-44d8-930e-6ec629be3692/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount)
I0309 15:47:53.508790    7519 mount_linux.go:219] Mounting cmd (mount) with arguments ( -o bind,remount /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount /var/lib/kubelet/pods/716e45d3-e7d6-44d8-930e-6ec629be3692/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount)
I0309 15:47:53.509754    7519 nodeserver.go:138] NodePublishVolume: volume rg-backups-prod#stpabackupsprod#backups-prod mount /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount at /var/lib/kubelet/pods/716e45d3-e7d6-44d8-930e-6ec629be3692/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount successfully
I0309 15:47:53.509771    7519 utils.go:82] GRPC response: {}
I0309 15:47:54.813768    7519 utils.go:75] GRPC call: /csi.v1.Node/NodeUnpublishVolume
I0309 15:47:54.813789    7519 utils.go:76] GRPC request: {"target_path":"/var/lib/kubelet/pods/321b6ad1-d572-4bce-bfbb-1d944cbffe0a/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount","volume_id":"rg-backups-prod#stpabackupsprod#backups-prod"}
I0309 15:47:54.813871    7519 nodeserver.go:199] NodeUnpublishVolume: unmounting volume rg-backups-prod#stpabackupsprod#backups-prod on /var/lib/kubelet/pods/321b6ad1-d572-4bce-bfbb-1d944cbffe0a/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount
I0309 15:47:54.813900    7519 mount_helper_common.go:93] unmounting "/var/lib/kubelet/pods/321b6ad1-d572-4bce-bfbb-1d944cbffe0a/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount" (corruptedMount: false, mounterCanSkipMountPointChecks: true)
I0309 15:47:54.813921    7519 mount_linux.go:361] Unmounting /var/lib/kubelet/pods/321b6ad1-d572-4bce-bfbb-1d944cbffe0a/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount
I0309 15:47:54.821260    7519 mount_helper_common.go:150] Warning: deleting path "/var/lib/kubelet/pods/321b6ad1-d572-4bce-bfbb-1d944cbffe0a/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount"
I0309 15:47:54.821328    7519 nodeserver.go:204] NodeUnpublishVolume: unmount volume rg-backups-prod#stpabackupsprod#backups-prod on /var/lib/kubelet/pods/321b6ad1-d572-4bce-bfbb-1d944cbffe0a/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount successfully
I0309 15:47:54.821348    7519 utils.go:82] GRPC response: {}

I'm sorry about this super long posts, but this is the best way I could think of to asynchronously communicate this issue to you guys. :)

P.S.1: According to this repo, it seems that blobfuse2 (2.0.2) is not in the compatibility table just yet?

❯ kubectl exec -it csi-blob-node-t8dt8 -c blob -n kube-system -- /bin/sh
# blobfuse2 -v
blobfuse2 version 2.0.2
# blobfuse -v
blobfuse 1.4.5

P.S.2: Here is how I'm coping with my edge case right now, which is to use a combination of AKS 1.25.5 + NFSv3, assuming your Azure blob store has HNS & NFSv3 enabled.

This is my NFSv3 SC manifest
apiVersion: v1
kind: PersistentVolume
metadata:
  name: pv-stpabackupsprod-blob-container
spec:
  capacity:
    storage: 500Gi
  accessModes:
    - ReadOnlyMany
  claimRef:
    apiVersion: v1
    kind: PersistentVolumeClaim
    name: pvc-stpabackupsprod-blob-container
    namespace: pa-data-services
  persistentVolumeReclaimPolicy: Retain
  storageClassName: azureblob-nfs-premium
  csi:
    driver: blob.csi.azure.com
    readOnly: false
    volumeHandle: devtest-datalake#nfssyncstpabackupsprod#sync-backups-prod
    volumeAttributes:
      resourceGroup: devtest-datalake
      storageAccount: nfssyncstpabackupsprod
      containerName: sync-backups-prod
      protocol: nfs
As you can see from the CSI logs below, after using NFSv3, I can restart pods as I wish w/o getting any resource busy error, and I can still find all the mounted files from Azure blob in the restarted Pods
# AKS 1.25.5 with NFSv3, first refresh kubectl apply 


I0309 20:00:01.253555    6234 utils.go:82] GRPC response: {}
I0309 20:03:19.527811    6234 utils.go:75] GRPC call: /csi.v1.Node/NodeStageVolume
I0309 20:03:19.527822    6234 utils.go:76] GRPC request: {"staging_target_path":"/var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/40d24c216b1da97a64a7ec1a32b5019a13c40b0172ad3fa7a0af09e4bb96c5a8/globalmount","volume_capability":{"AccessType":{"Mount":{}},"access_mode":{"mode":3}},"volume_context":{"containerName":"sync-backups-prod","protocol":"nfs","resourceGroup":"devtest-datalake","storageAccount":"nfssyncstpabackupsprod"},"volume_id":"devtest-datalake#nfssyncstpabackupsprod#sync-backups-prod"}
I0309 20:03:19.528099    6234 blob.go:414] volumeID(devtest-datalake#nfssyncstpabackupsprod#sync-backups-prod) authEnv: []
I0309 20:03:19.528112    6234 nodeserver.go:307] target /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/40d24c216b1da97a64a7ec1a32b5019a13c40b0172ad3fa7a0af09e4bb96c5a8/globalmount
protocol nfs

volumeId devtest-datalake#nfssyncstpabackupsprod#sync-backups-prod
context map[containerName:sync-backups-prod protocol:nfs resourceGroup:devtest-datalake storageAccount:nfssyncstpabackupsprod]
mountflags []
serverAddress nfssyncstpabackupsprod.blob.core.windows.net
I0309 20:03:19.528136    6234 mount_linux.go:219] Mounting cmd (mount) with arguments (-t nfs -o sec=sys,vers=3,nolock nfssyncstpabackupsprod.blob.core.windows.net:/nfssyncstpabackupsprod/sync-backups-prod /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/40d24c216b1da97a64a7ec1a32b5019a13c40b0172ad3fa7a0af09e4bb96c5a8/globalmount)
I0309 20:03:22.730449    6234 blob.go:849] chmod targetPath(/var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/40d24c216b1da97a64a7ec1a32b5019a13c40b0172ad3fa7a0af09e4bb96c5a8/globalmount, mode:020000000750) with permissions(0777)
I0309 20:03:22.789215    6234 nodeserver.go:326] volume(devtest-datalake#nfssyncstpabackupsprod#sync-backups-prod) mount nfssyncstpabackupsprod.blob.core.windows.net:/nfssyncstpabackupsprod/sync-backups-prod on /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/40d24c216b1da97a64a7ec1a32b5019a13c40b0172ad3fa7a0af09e4bb96c5a8/globalmount succeeded
I0309 20:03:22.789238    6234 utils.go:82] GRPC response: {}
I0309 20:03:22.791480    6234 utils.go:75] GRPC call: /csi.v1.Node/NodePublishVolume
I0309 20:03:22.791489    6234 utils.go:76] GRPC request: {"staging_target_path":"/var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/40d24c216b1da97a64a7ec1a32b5019a13c40b0172ad3fa7a0af09e4bb96c5a8/globalmount","target_path":"/var/lib/kubelet/pods/34b1a864-7082-481e-8758-1544849cf9b4/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount","volume_capability":{"AccessType":{"Mount":{}},"access_mode":{"mode":3}},"volume_context":{"containerName":"sync-backups-prod","csi.storage.k8s.io/ephemeral":"false","csi.storage.k8s.io/pod.name":"orientdbservice-58c79ffb79-6x6kw","csi.storage.k8s.io/pod.namespace":"pa-data-services","csi.storage.k8s.io/pod.uid":"34b1a864-7082-481e-8758-1544849cf9b4","csi.storage.k8s.io/serviceAccount.name":"default","protocol":"nfs","resourceGroup":"devtest-datalake","storageAccount":"nfssyncstpabackupsprod"},"volume_id":"devtest-datalake#nfssyncstpabackupsprod#sync-backups-prod"}
I0309 20:03:22.791825    6234 nodeserver.go:122] NodePublishVolume: volume devtest-datalake#nfssyncstpabackupsprod#sync-backups-prod mounting /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/40d24c216b1da97a64a7ec1a32b5019a13c40b0172ad3fa7a0af09e4bb96c5a8/globalmount at /var/lib/kubelet/pods/34b1a864-7082-481e-8758-1544849cf9b4/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount with mountOptions: [bind]
I0309 20:03:22.791848    6234 mount_linux.go:219] Mounting cmd (mount) with arguments ( -o bind /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/40d24c216b1da97a64a7ec1a32b5019a13c40b0172ad3fa7a0af09e4bb96c5a8/globalmount /var/lib/kubelet/pods/34b1a864-7082-481e-8758-1544849cf9b4/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount)
I0309 20:03:22.792865    6234 mount_linux.go:219] Mounting cmd (mount) with arguments ( -o bind,remount /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/40d24c216b1da97a64a7ec1a32b5019a13c40b0172ad3fa7a0af09e4bb96c5a8/globalmount /var/lib/kubelet/pods/34b1a864-7082-481e-8758-1544849cf9b4/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount)
I0309 20:03:22.793722    6234 nodeserver.go:138] NodePublishVolume: volume devtest-datalake#nfssyncstpabackupsprod#sync-backups-prod mount /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/40d24c216b1da97a64a7ec1a32b5019a13c40b0172ad3fa7a0af09e4bb96c5a8/globalmount at /var/lib/kubelet/pods/34b1a864-7082-481e-8758-1544849cf9b4/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount successfully
I0309 20:03:22.793731    6234 utils.go:82] GRPC response: {}

# first deletion of the pod
I0309 20:04:26.595322    6234 utils.go:75] GRPC call: /csi.v1.Node/NodePublishVolume
I0309 20:04:26.595333    6234 utils.go:76] GRPC request: {"staging_target_path":"/var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/40d24c216b1da97a64a7ec1a32b5019a13c40b0172ad3fa7a0af09e4bb96c5a8/globalmount","target_path":"/var/lib/kubelet/pods/843ec654-26ad-47d2-a725-9bb64c30740b/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount","volume_capability":{"AccessType":{"Mount":{}},"access_mode":{"mode":3}},"volume_context":{"containerName":"sync-backups-prod","csi.storage.k8s.io/ephemeral":"false","csi.storage.k8s.io/pod.name":"orientdbservice-58c79ffb79-z4gpk","csi.storage.k8s.io/pod.namespace":"pa-data-services","csi.storage.k8s.io/pod.uid":"843ec654-26ad-47d2-a725-9bb64c30740b","csi.storage.k8s.io/serviceAccount.name":"default","protocol":"nfs","resourceGroup":"devtest-datalake","storageAccount":"nfssyncstpabackupsprod"},"volume_id":"devtest-datalake#nfssyncstpabackupsprod#sync-backups-prod"}
I0309 20:04:26.595691    6234 nodeserver.go:122] NodePublishVolume: volume devtest-datalake#nfssyncstpabackupsprod#sync-backups-prod mounting /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/40d24c216b1da97a64a7ec1a32b5019a13c40b0172ad3fa7a0af09e4bb96c5a8/globalmount at /var/lib/kubelet/pods/843ec654-26ad-47d2-a725-9bb64c30740b/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount with mountOptions: [bind]
I0309 20:04:26.595714    6234 mount_linux.go:219] Mounting cmd (mount) with arguments ( -o bind /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/40d24c216b1da97a64a7ec1a32b5019a13c40b0172ad3fa7a0af09e4bb96c5a8/globalmount /var/lib/kubelet/pods/843ec654-26ad-47d2-a725-9bb64c30740b/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount)
I0309 20:04:26.608875    6234 mount_linux.go:219] Mounting cmd (mount) with arguments ( -o bind,remount /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/40d24c216b1da97a64a7ec1a32b5019a13c40b0172ad3fa7a0af09e4bb96c5a8/globalmount /var/lib/kubelet/pods/843ec654-26ad-47d2-a725-9bb64c30740b/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount)
I0309 20:04:26.609904    6234 nodeserver.go:138] NodePublishVolume: volume devtest-datalake#nfssyncstpabackupsprod#sync-backups-prod mount /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/40d24c216b1da97a64a7ec1a32b5019a13c40b0172ad3fa7a0af09e4bb96c5a8/globalmount at /var/lib/kubelet/pods/843ec654-26ad-47d2-a725-9bb64c30740b/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount successfully
I0309 20:04:26.609916    6234 utils.go:82] GRPC response: {}
I0309 20:04:27.701941    6234 utils.go:75] GRPC call: /csi.v1.Node/NodeUnpublishVolume
I0309 20:04:27.701958    6234 utils.go:76] GRPC request: {"target_path":"/var/lib/kubelet/pods/34b1a864-7082-481e-8758-1544849cf9b4/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount","volume_id":"devtest-datalake#nfssyncstpabackupsprod#sync-backups-prod"}
I0309 20:04:27.702007    6234 nodeserver.go:199] NodeUnpublishVolume: unmounting volume devtest-datalake#nfssyncstpabackupsprod#sync-backups-prod on /var/lib/kubelet/pods/34b1a864-7082-481e-8758-1544849cf9b4/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount
I0309 20:04:27.702035    6234 mount_helper_common.go:93] unmounting "/var/lib/kubelet/pods/34b1a864-7082-481e-8758-1544849cf9b4/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount" (corruptedMount: false, mounterCanSkipMountPointChecks: true)
I0309 20:04:27.702050    6234 mount_linux.go:361] Unmounting /var/lib/kubelet/pods/34b1a864-7082-481e-8758-1544849cf9b4/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount
I0309 20:04:27.717291    6234 mount_helper_common.go:150] Warning: deleting path "/var/lib/kubelet/pods/34b1a864-7082-481e-8758-1544849cf9b4/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount"
I0309 20:04:27.717348    6234 nodeserver.go:204] NodeUnpublishVolume: unmount volume devtest-datalake#nfssyncstpabackupsprod#sync-backups-prod on /var/lib/kubelet/pods/34b1a864-7082-481e-8758-1544849cf9b4/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount successfully
I0309 20:04:27.717358    6234 utils.go:82] GRPC response: {}


# second deletion of the pod
I0309 20:05:02.200296    6234 utils.go:75] GRPC call: /csi.v1.Node/NodePublishVolume
I0309 20:05:02.200309    6234 utils.go:76] GRPC request: {"staging_target_path":"/var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/40d24c216b1da97a64a7ec1a32b5019a13c40b0172ad3fa7a0af09e4bb96c5a8/globalmount","target_path":"/var/lib/kubelet/pods/b9683a0c-afbd-44c4-b3b8-2c58bbd9e22a/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount","volume_capability":{"AccessType":{"Mount":{}},"access_mode":{"mode":3}},"volume_context":{"containerName":"sync-backups-prod","csi.storage.k8s.io/ephemeral":"false","csi.storage.k8s.io/pod.name":"orientdbservice-58c79ffb79-s78ww","csi.storage.k8s.io/pod.namespace":"pa-data-services","csi.storage.k8s.io/pod.uid":"b9683a0c-afbd-44c4-b3b8-2c58bbd9e22a","csi.storage.k8s.io/serviceAccount.name":"default","protocol":"nfs","resourceGroup":"devtest-datalake","storageAccount":"nfssyncstpabackupsprod"},"volume_id":"devtest-datalake#nfssyncstpabackupsprod#sync-backups-prod"}
I0309 20:05:02.200686    6234 nodeserver.go:122] NodePublishVolume: volume devtest-datalake#nfssyncstpabackupsprod#sync-backups-prod mounting /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/40d24c216b1da97a64a7ec1a32b5019a13c40b0172ad3fa7a0af09e4bb96c5a8/globalmount at /var/lib/kubelet/pods/b9683a0c-afbd-44c4-b3b8-2c58bbd9e22a/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount with mountOptions: [bind]
I0309 20:05:02.200711    6234 mount_linux.go:219] Mounting cmd (mount) with arguments ( -o bind /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/40d24c216b1da97a64a7ec1a32b5019a13c40b0172ad3fa7a0af09e4bb96c5a8/globalmount /var/lib/kubelet/pods/b9683a0c-afbd-44c4-b3b8-2c58bbd9e22a/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount)
I0309 20:05:02.201964    6234 mount_linux.go:219] Mounting cmd (mount) with arguments ( -o bind,remount /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/40d24c216b1da97a64a7ec1a32b5019a13c40b0172ad3fa7a0af09e4bb96c5a8/globalmount /var/lib/kubelet/pods/b9683a0c-afbd-44c4-b3b8-2c58bbd9e22a/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount)
I0309 20:05:02.202888    6234 nodeserver.go:138] NodePublishVolume: volume devtest-datalake#nfssyncstpabackupsprod#sync-backups-prod mount /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/40d24c216b1da97a64a7ec1a32b5019a13c40b0172ad3fa7a0af09e4bb96c5a8/globalmount at /var/lib/kubelet/pods/b9683a0c-afbd-44c4-b3b8-2c58bbd9e22a/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount successfully
I0309 20:05:02.202905    6234 utils.go:82] GRPC response: {}
I0309 20:05:03.306234    6234 utils.go:75] GRPC call: /csi.v1.Node/NodeUnpublishVolume
I0309 20:05:03.306250    6234 utils.go:76] GRPC request: {"target_path":"/var/lib/kubelet/pods/843ec654-26ad-47d2-a725-9bb64c30740b/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount","volume_id":"devtest-datalake#nfssyncstpabackupsprod#sync-backups-prod"}
I0309 20:05:03.306307    6234 nodeserver.go:199] NodeUnpublishVolume: unmounting volume devtest-datalake#nfssyncstpabackupsprod#sync-backups-prod on /var/lib/kubelet/pods/843ec654-26ad-47d2-a725-9bb64c30740b/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount
I0309 20:05:03.306327    6234 mount_helper_common.go:93] unmounting "/var/lib/kubelet/pods/843ec654-26ad-47d2-a725-9bb64c30740b/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount" (corruptedMount: false, mounterCanSkipMountPointChecks: true)
I0309 20:05:03.306339    6234 mount_linux.go:361] Unmounting /var/lib/kubelet/pods/843ec654-26ad-47d2-a725-9bb64c30740b/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount
I0309 20:05:03.323273    6234 mount_helper_common.go:150] Warning: deleting path "/var/lib/kubelet/pods/843ec654-26ad-47d2-a725-9bb64c30740b/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount"
I0309 20:05:03.323332    6234 nodeserver.go:204] NodeUnpublishVolume: unmount volume devtest-datalake#nfssyncstpabackupsprod#sync-backups-prod on /var/lib/kubelet/pods/843ec654-26ad-47d2-a725-9bb64c30740b/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount successfully
I0309 20:05:03.323342    6234 utils.go:82] GRPC response: {}


# third deletion of the pod
I0309 20:05:27.934797    6234 utils.go:75] GRPC call: /csi.v1.Node/NodePublishVolume
I0309 20:05:27.934807    6234 utils.go:76] GRPC request: {"staging_target_path":"/var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/40d24c216b1da97a64a7ec1a32b5019a13c40b0172ad3fa7a0af09e4bb96c5a8/globalmount","target_path":"/var/lib/kubelet/pods/4cf7d47d-d81e-4505-9e4c-ee0d57fc9e0b/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount","volume_capability":{"AccessType":{"Mount":{}},"access_mode":{"mode":3}},"volume_context":{"containerName":"sync-backups-prod","csi.storage.k8s.io/ephemeral":"false","csi.storage.k8s.io/pod.name":"orientdbservice-58c79ffb79-qq59x","csi.storage.k8s.io/pod.namespace":"pa-data-services","csi.storage.k8s.io/pod.uid":"4cf7d47d-d81e-4505-9e4c-ee0d57fc9e0b","csi.storage.k8s.io/serviceAccount.name":"default","protocol":"nfs","resourceGroup":"devtest-datalake","storageAccount":"nfssyncstpabackupsprod"},"volume_id":"devtest-datalake#nfssyncstpabackupsprod#sync-backups-prod"}
I0309 20:05:27.935171    6234 nodeserver.go:122] NodePublishVolume: volume devtest-datalake#nfssyncstpabackupsprod#sync-backups-prod mounting /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/40d24c216b1da97a64a7ec1a32b5019a13c40b0172ad3fa7a0af09e4bb96c5a8/globalmount at /var/lib/kubelet/pods/4cf7d47d-d81e-4505-9e4c-ee0d57fc9e0b/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount with mountOptions: [bind]
I0309 20:05:27.935189    6234 mount_linux.go:219] Mounting cmd (mount) with arguments ( -o bind /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/40d24c216b1da97a64a7ec1a32b5019a13c40b0172ad3fa7a0af09e4bb96c5a8/globalmount /var/lib/kubelet/pods/4cf7d47d-d81e-4505-9e4c-ee0d57fc9e0b/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount)
I0309 20:05:27.944136    6234 mount_linux.go:219] Mounting cmd (mount) with arguments ( -o bind,remount /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/40d24c216b1da97a64a7ec1a32b5019a13c40b0172ad3fa7a0af09e4bb96c5a8/globalmount /var/lib/kubelet/pods/4cf7d47d-d81e-4505-9e4c-ee0d57fc9e0b/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount)
I0309 20:05:27.945233    6234 nodeserver.go:138] NodePublishVolume: volume devtest-datalake#nfssyncstpabackupsprod#sync-backups-prod mount /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/40d24c216b1da97a64a7ec1a32b5019a13c40b0172ad3fa7a0af09e4bb96c5a8/globalmount at /var/lib/kubelet/pods/4cf7d47d-d81e-4505-9e4c-ee0d57fc9e0b/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount successfully
I0309 20:05:27.945246    6234 utils.go:82] GRPC response: {}
I0309 20:05:29.143864    6234 utils.go:75] GRPC call: /csi.v1.Node/NodeUnpublishVolume
I0309 20:05:29.143878    6234 utils.go:76] GRPC request: {"target_path":"/var/lib/kubelet/pods/b9683a0c-afbd-44c4-b3b8-2c58bbd9e22a/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount","volume_id":"devtest-datalake#nfssyncstpabackupsprod#sync-backups-prod"}
I0309 20:05:29.143956    6234 nodeserver.go:199] NodeUnpublishVolume: unmounting volume devtest-datalake#nfssyncstpabackupsprod#sync-backups-prod on /var/lib/kubelet/pods/b9683a0c-afbd-44c4-b3b8-2c58bbd9e22a/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount
I0309 20:05:29.143992    6234 mount_helper_common.go:93] unmounting "/var/lib/kubelet/pods/b9683a0c-afbd-44c4-b3b8-2c58bbd9e22a/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount" (corruptedMount: false, mounterCanSkipMountPointChecks: true)
I0309 20:05:29.144018    6234 mount_linux.go:361] Unmounting /var/lib/kubelet/pods/b9683a0c-afbd-44c4-b3b8-2c58bbd9e22a/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount
I0309 20:05:29.153331    6234 mount_helper_common.go:150] Warning: deleting path "/var/lib/kubelet/pods/b9683a0c-afbd-44c4-b3b8-2c58bbd9e22a/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount"
I0309 20:05:29.153387    6234 nodeserver.go:204] NodeUnpublishVolume: unmount volume devtest-datalake#nfssyncstpabackupsprod#sync-backups-prod on /var/lib/kubelet/pods/b9683a0c-afbd-44c4-b3b8-2c58bbd9e22a/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount successfully
I0309 20:05:29.153400    6234 utils.go:82] GRPC response: {}

@andyzhangx
Copy link
Contributor

@pa-mc thanks for the sharing. So with blobfuse2 on AKS 1.24 or 1.25, there is device or resource busy during first unmount attempt, and does it break your scenario in the end? from the logs, I could see unmount always succeeded in the second unmount.

@vibhansa-msft
Copy link
Member

If some operation is going on or there is a shell connected to that path, unmount is expected to fail. Before you kill the pod you shall do a graceful unmount otherwise there are chances of data loss as well. If blobfuse was in between a transfer and you just killed the pod or container then transfer will be terminated, and next mount will lose the locally cached data as well.

@andyzhangx
Copy link
Contributor

If some operation is going on or there is a shell connected to that path, unmount is expected to fail. Before you kill the pod you shall do a graceful unmount otherwise there are chances of data loss as well. If blobfuse was in between a transfer and you just killed the pod or container then transfer will be terminated, and next mount will lose the locally cached data as well.

@vibhansa-msft one point is that with v1, it does not have such device or resource busy error during first unmount, while with v2, there is such error. Do you know whether there is any unmount process difference between v1 and v2?

@vibhansa-msft
Copy link
Member

There is no difference in unmount process as such, also unmount is triggered from kernel and we just get a call from the system to shutdown the binary. Ideally I would expect both to fail in case some operations are going on. Quite possible that v1 was not reporting the problem while v2 does.

@pa-mc
Copy link

pa-mc commented Mar 10, 2023

@pa-mc thanks for the sharing. So with blobfuse2 on AKS 1.24 or 1.25, there is device or resource busy during first unmount attempt, and does it break your scenario in the end? from the logs, I could see unmount always succeeded in the second unmount.

Yes, for the following two combinations, the first pod deletion you will see the device or resource busy error. The subsequent deletion of the pod, you won't see that error message anymore. However, none of the blob files show up either.

  • AKS 1.25.5 + protocol: fuse2
  • AKS 1.24.9 + protocol: fuse2

Also I don't quite understand why would restart of a pod, why would CSI do a GRPC call: /csi.v1.Node/NodeUnpublishVolume right after a GRPC call: /csi.v1.Node/NodePublishVolume? I get when the pod restarted successfully, it should do a GRPC call: /csi.v1.Node/NodePublishVolume, but why would it automatically do a GRPC call: /csi.v1.Node/NodeUnpublishVolume even though the pod is healthy?

for instance
# second delete

I0309 15:27:44.061632    7519 utils.go:75] GRPC call: /csi.v1.Node/NodePublishVolume
I0309 15:27:44.061653    7519 utils.go:76] GRPC request: {"staging_target_path":"/var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount","target_path":"/var/lib/kubelet/pods/42c84958-666e-467c-b86e-a7fcd70e3a26/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount","volume_capability":{"AccessType":{"Mount":{"mount_flags":["-o allow_other","--file-cache-timeout-in-seconds=120","--use-attr-cache=true","-o attr_timeout=120","-o entry_timeout=120","-o negative_timeout=120","--log-level=LOG_DEBUG","--cache-size-mb=1000","--virtual-directory=true"]}},"access_mode":{"mode":3}},"volume_context":{"containerName":"backups-prod","csi.storage.k8s.io/ephemeral":"false","csi.storage.k8s.io/pod.name":"orientdbservice-57b7898756-bmggl","csi.storage.k8s.io/pod.namespace":"pa-data-services","csi.storage.k8s.io/pod.uid":"42c84958-666e-467c-b86e-a7fcd70e3a26","csi.storage.k8s.io/serviceAccount.name":"default","protocol":"fuse2","resourceGroup":"rg-backups-prod","storageAccount":"stpabackupsprod"},"volume_id":"rg-backups-prod#stpabackupsprod#backups-prod"}
I0309 15:27:44.062199    7519 nodeserver.go:122] NodePublishVolume: volume rg-backups-prod#stpabackupsprod#backups-prod mounting /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount at /var/lib/kubelet/pods/42c84958-666e-467c-b86e-a7fcd70e3a26/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount with mountOptions: [bind]
I0309 15:27:44.062282    7519 mount_linux.go:219] Mounting cmd (mount) with arguments ( -o bind /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount /var/lib/kubelet/pods/42c84958-666e-467c-b86e-a7fcd70e3a26/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount)
I0309 15:27:44.063724    7519 mount_linux.go:219] Mounting cmd (mount) with arguments ( -o bind,remount /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount /var/lib/kubelet/pods/42c84958-666e-467c-b86e-a7fcd70e3a26/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount)
I0309 15:27:44.065165    7519 nodeserver.go:138] NodePublishVolume: volume rg-backups-prod#stpabackupsprod#backups-prod mount /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount at /var/lib/kubelet/pods/42c84958-666e-467c-b86e-a7fcd70e3a26/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount successfully
I0309 15:27:44.065183    7519 utils.go:82] GRPC response: {}
I0309 15:27:45.268586    7519 utils.go:75] GRPC call: /csi.v1.Node/NodeUnpublishVolume
I0309 15:27:45.268602    7519 utils.go:76] GRPC request: {"target_path":"/var/lib/kubelet/pods/148f2d31-08ed-4af0-85b9-880ecf31d661/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount","volume_id":"rg-backups-prod#stpabackupsprod#backups-prod"}
I0309 15:27:45.268656    7519 nodeserver.go:199] NodeUnpublishVolume: unmounting volume rg-backups-prod#stpabackupsprod#backups-prod on /var/lib/kubelet/pods/148f2d31-08ed-4af0-85b9-880ecf31d661/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount
I0309 15:27:45.268782    7519 mount_helper_common.go:93] unmounting "/var/lib/kubelet/pods/148f2d31-08ed-4af0-85b9-880ecf31d661/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount" (corruptedMount: false, mounterCanSkipMountPointChecks: true)
I0309 15:27:45.268792    7519 mount_linux.go:361] Unmounting /var/lib/kubelet/pods/148f2d31-08ed-4af0-85b9-880ecf31d661/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount
I0309 15:27:45.271301    7519 mount_helper_common.go:150] Warning: deleting path "/var/lib/kubelet/pods/148f2d31-08ed-4af0-85b9-880ecf31d661/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount"
I0309 15:27:45.271358    7519 nodeserver.go:204] NodeUnpublishVolume: unmount volume rg-backups-prod#stpabackupsprod#backups-prod on /var/lib/kubelet/pods/148f2d31-08ed-4af0-85b9-880ecf31d661/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount successfully
I0309 15:27:45.271367    7519 utils.go:82] GRPC response: {}

@pa-mc
Copy link

pa-mc commented Mar 10, 2023

If some operation is going on or there is a shell connected to that path, unmount is expected to fail. Before you kill the pod you shall do a graceful unmount otherwise there are chances of data loss as well. If blobfuse was in between a transfer and you just killed the pod or container then transfer will be terminated, and next mount will lose the locally cached data as well.

I'm pretty sure there is nothing connected to that path while I did the experiments except the pod that has the path mounted to it.

In this case, I did deliberately restarted the Pod, but in practice I have no control over when or if the Pod would restart or not. The graceful unmount should be handled by the CSI driver or k8s Pod API right?

@pa-mc
Copy link

pa-mc commented Mar 10, 2023

I'm not sure if this is asking too much, but it would be great if we get on a zoom / team call so that I can screenshare with you guys, much better than reading my super long experiments :P

@andyzhangx
Copy link
Contributor

If some operation is going on or there is a shell connected to that path, unmount is expected to fail. Before you kill the pod you shall do a graceful unmount otherwise there are chances of data loss as well. If blobfuse was in between a transfer and you just killed the pod or container then transfer will be terminated, and next mount will lose the locally cached data as well.

I'm pretty sure there is nothing connected to that path while I did the experiments except the pod that has the path mounted to it.

In this case, I did deliberately restarted the Pod, but in practice I have no control over when or if the Pod would restart or not. The graceful unmount should be handled by the CSI driver or k8s Pod API right?

@pa-mc there are two pods in the second delete

  1. pod with id 42c84958-666e-467c-b86e-a7fcd70e3a26 is created, so you get
I0309 15:27:44.061632    7519 utils.go:75] GRPC call: /csi.v1.Node/NodePublishVolume
I0309 15:27:44.061653    7519 utils.go:76] GRPC request: {"staging_target_path":"/var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount","target_path":"/var/lib/kubelet/pods/42c84958-666e-467c-b86e-a7fcd70e3a26/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount","volume_capability":{"AccessType":{"Mount":{"mount_flags":["-o allow_other","--file-cache-timeout-in-seconds=120","--use-attr-cache=true","-o attr_timeout=120","-o entry_timeout=120","-o 
  1. pod with id 148f2d31-08ed-4af0-85b9-880ecf31d661 is being deleted, so you get:
I0309 15:27:45.268586    7519 utils.go:75] GRPC call: /csi.v1.Node/NodeUnpublishVolume
I0309 15:27:45.268602    7519 utils.go:76] GRPC request: {"target_path":"/var/lib/kubelet/pods/148f2d31-08ed-4af0-85b9-880ecf31d661/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount","volume_id":"rg-backups-prod#stpabackupsprod#backups-prod"}

that's expected.

@pa-mc
Copy link

pa-mc commented Mar 10, 2023

If some operation is going on or there is a shell connected to that path, unmount is expected to fail. Before you kill the pod you shall do a graceful unmount otherwise there are chances of data loss as well. If blobfuse was in between a transfer and you just killed the pod or container then transfer will be terminated, and next mount will lose the locally cached data as well.

I'm pretty sure there is nothing connected to that path while I did the experiments except the pod that has the path mounted to it.
In this case, I did deliberately restarted the Pod, but in practice I have no control over when or if the Pod would restart or not. The graceful unmount should be handled by the CSI driver or k8s Pod API right?

@pa-mc there are two pods in the second delete

  1. pod with id 42c84958-666e-467c-b86e-a7fcd70e3a26 is created, so you get
I0309 15:27:44.061632    7519 utils.go:75] GRPC call: /csi.v1.Node/NodePublishVolume
I0309 15:27:44.061653    7519 utils.go:76] GRPC request: {"staging_target_path":"/var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount","target_path":"/var/lib/kubelet/pods/42c84958-666e-467c-b86e-a7fcd70e3a26/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount","volume_capability":{"AccessType":{"Mount":{"mount_flags":["-o allow_other","--file-cache-timeout-in-seconds=120","--use-attr-cache=true","-o attr_timeout=120","-o entry_timeout=120","-o 
  1. pod with id 148f2d31-08ed-4af0-85b9-880ecf31d661 is being deleted, so you get:
I0309 15:27:45.268586    7519 utils.go:75] GRPC call: /csi.v1.Node/NodeUnpublishVolume
I0309 15:27:45.268602    7519 utils.go:76] GRPC request: {"target_path":"/var/lib/kubelet/pods/148f2d31-08ed-4af0-85b9-880ecf31d661/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount","volume_id":"rg-backups-prod#stpabackupsprod#backups-prod"}

that's expected.

Right, make sense. Because the killing of a Pod will remove the old Pod and create a new Pod under the same Deployment. I guess I just thought the /NodeUnpublishVolume would come first. Since the deletion of a Pod happend first. However, that's just a side note, the key mystry for me is why this behaviour wouldn't happen for AKS 1.24.9 + protocol: fuse1 + w/o --virtual-directory? Because with that combination, no whatever how many time I restart the pod regardless of whether it's intentionally or in practice it could be restarted due to OOM or other reasons that Pod just crashed, there is no resource busy error, and the mounted files still appears in the Pod.

@andyzhangx
Copy link
Contributor

Hi @pa-mc, what's the business impact for this behavior change? My assumption is that on AKS 1.25, it would create a new replica first, and then delete old replica, that's the reason why NodePublishVolume comes first and then NodeUnpublishVolume comes next. It could be related to RollingUpdateStrategy in k8s deployment.

@pa-mc
Copy link

pa-mc commented Mar 10, 2023

Hi @pa-mc, what's the business impact for this behavior change? My assumption is that on AKS 1.25, it would create a new replica first, and then delete old replica, that's the reason why NodePublishVolume comes first and then NodeUnpublishVolume comes next. It could be related to RollingUpdateStrategy in k8s deployment.

Hi @andyzhangx, yeah right now it's not a huge deal just yet. Because our production AKS cluster is still in 1.24.9 and it's still using blobfuse v1 w/o --virtual-directory mounting options. For the time being, our development AKS cluster 1.25.5, I've done a azcopy sync nightly to sync our database backups that sitting in a non-NFS enabled Azure Blob Store an NFSv3-enabled Azure Blob Store and start using protocol: nfsv3 storage class. At the moment, I don't see any mounting issues even after deliberately deleting pods numerous times.

However, this is quite kludgy obviously, and I'd love to get to the bottom of this issue regardless things are "working" or not ;)

I've created an Azure Support ticket Support request ID | 2303070040008245 in the meantime and actually pasted this github issue in there as a reference. It's probably not fair to ask you guys to spend a lot of time on this one, but if you guys want to hop on that support call once scheduled, let me know :)


P.S.: Someone from Azure support reached out, and we will do a Team screenshare to show them exactly how I produced that error. I asked them to record it if they can (i don't mind). If they did record it, I will share it with you guys.

@andyzhangx
Copy link
Contributor

@pa-mc per our testing pipeline results, as long as you are using blobfuse v2 (no matter it's AKS 1.24 or 1.25), it would have such mount: device or resource busy unmount failure, and second time unmount always succeeds after around 0.6s

So my assumption is that there could be implementation difference between v1 and v2, and it looks like there is no side effect since second time unmount always succeeds after around 0.6s

@pa-mc
Copy link

pa-mc commented Mar 13, 2023

Hi @andyzhangx sorry for the late reply, wife & son gotta pretty sick and the last man standing :P Thank you so much for running those tests, and I will find some time this week and dig into it. I think my experimentation also showed the unmount will be successfull after the second restart of a Pod. However, it's the mounting had some problem. Because after second restart of a Pod, even thoug it said /NodePublishVolume successful, but the mount was actually not working since there are no files in the mounted directory.

Regardless, I will keep you updated with my findings and perhaps do a screenrecording it and share it here.

@andyzhangx
Copy link
Contributor

Hi @andyzhangx sorry for the late reply, wife & son gotta pretty sick and the last man standing :P Thank you so much for running those tests, and I will find some time this week and dig into it. I think my experimentation also showed the unmount will be successfull after the second restart of a Pod. However, it's the mounting had some problem. Because after second restart of a Pod, even thoug it said /NodePublishVolume successful, but the mount was actually not working since there are no files in the mounted directory.

Regardless, I will keep you updated with my findings and perhaps do a screenrecording it and share it here.

@pa-mc if second restart would make pod broken, can you ssh to the pod, and run df -h command to check whether there is blobfuse mount inside that pod. e.g.

kubectl exec -it nginx-blob -- df -h
Filesystem      Size  Used Avail Use% Mounted on
...
blobfuse         14G   41M   13G   1% /mnt/blob
...

@pa-mc
Copy link

pa-mc commented Mar 14, 2023

Hi @andyzhangx sorry for the late reply, wife & son gotta pretty sick and the last man standing :P Thank you so much for running those tests, and I will find some time this week and dig into it. I think my experimentation also showed the unmount will be successfull after the second restart of a Pod. However, it's the mounting had some problem. Because after second restart of a Pod, even thoug it said /NodePublishVolume successful, but the mount was actually not working since there are no files in the mounted directory.
Regardless, I will keep you updated with my findings and perhaps do a screenrecording it and share it here.

@pa-mc if second restart would make pod broken, can you ssh to the pod, and run df -h command to check whether there is blobfuse mount inside that pod. e.g.

kubectl exec -it nginx-blob -- df -h

Filesystem Size Used Avail Use% Mounted on
...
blobfuse 14G 41M 13G 1% /mnt/blob
...

Hi @andyzhangx I tried, yup, as you anticipated, after the second restart, there is no blobfuse FS anymore.

Here are the full comments & outputs

First apply of everything (you can find the YAML manifest files I used in another expansion at the bottom of this comment

❯ kubectl exec -it -n pa-data-services deployments/orientdbservice -- /bin/bash
Defaulted container "orientdbservice" out of: orientdbservice, orientdbservicehandler
root@orientdbservice-58c79ffb79-bz7j9:/orientdb# df -h
Filesystem      Size  Used Avail Use% Mounted on
overlay         248G   27G  222G  11% /
tmpfs            64M     0   64M   0% /dev
/dev/root       248G   27G  222G  11% /etc/hosts
blobfuse2      1000M     0 1000M   0% /mnt/stpabackupsprod
shm              64M     0   64M   0% /dev/shm
tmpfs            28G   12K   28G   1% /run/secrets/kubernetes.io/serviceaccount
tmpfs            16G     0   16G   0% /proc/acpi
tmpfs            16G     0   16G   0% /proc/scsi
tmpfs            16G     0   16G   0% /sys/firmware

First restart of the pod

❯ kubectl exec -it -n pa-data-services deployments/orientdbservice -- /bin/bash
Defaulted container "orientdbservice" out of: orientdbservice, orientdbservicehandler
root@orientdbservice-58c79ffb79-j9rk5:/orientdb# df -h
Filesystem      Size  Used Avail Use% Mounted on
overlay         248G   27G  222G  11% /
tmpfs            64M     0   64M   0% /dev
/dev/root       248G   27G  222G  11% /etc/hosts
blobfuse2      1000M     0 1000M   0% /mnt/stpabackupsprod
shm              64M     0   64M   0% /dev/shm
tmpfs            28G   12K   28G   1% /run/secrets/kubernetes.io/serviceaccount
tmpfs            16G     0   16G   0% /proc/acpi
tmpfs            16G     0   16G   0% /proc/scsi
tmpfs            16G     0   16G   0% /sys/firmware

While the CSI driver logs shows device busy error during the first restart of the pod

I0314 14:31:14.985754    5729 utils.go:82] GRPC response: {}
I0314 14:31:16.089754    5729 utils.go:75] GRPC call: /csi.v1.Node/NodeUnpublishVolume
I0314 14:31:16.089810    5729 utils.go:76] GRPC request: {"target_path":"/var/lib/kubelet/pods/dca3dffa-7785-47c8-a73f-02b144cea174/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount","volume_id":"rg-backups-prod#stpabackupsprod#backups-prod"}
I0314 14:31:16.089871    5729 nodeserver.go:199] NodeUnpublishVolume: unmounting volume rg-backups-prod#stpabackupsprod#backups-prod on /var/lib/kubelet/pods/dca3dffa-7785-47c8-a73f-02b144cea174/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount
I0314 14:31:16.089886    5729 mount_helper_common.go:93] unmounting "/var/lib/kubelet/pods/dca3dffa-7785-47c8-a73f-02b144cea174/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount" (corruptedMount: false, mounterCanSkipMountPointChecks: true)
I0314 14:31:16.089897    5729 mount_linux.go:361] Unmounting /var/lib/kubelet/pods/dca3dffa-7785-47c8-a73f-02b144cea174/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount
I0314 14:31:16.091324    5729 mount_helper_common.go:150] Warning: deleting path "/var/lib/kubelet/pods/dca3dffa-7785-47c8-a73f-02b144cea174/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount"
E0314 14:31:16.091364    5729 utils.go:80] GRPC error: rpc error: code = Internal desc = failed to unmount target "/var/lib/kubelet/pods/dca3dffa-7785-47c8-a73f-02b144cea174/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount": remove /var/lib/kubelet/pods/dca3dffa-7785-47c8-a73f-02b144cea174/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount: device or resource busy
I0314 14:31:16.592842    5729 utils.go:75] GRPC call: /csi.v1.Node/NodeUnpublishVolume
I0314 14:31:16.592857    5729 utils.go:76] GRPC request: {"target_path":"/var/lib/kubelet/pods/dca3dffa-7785-47c8-a73f-02b144cea174/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount","volume_id":"rg-backups-prod#stpabackupsprod#backups-prod"}
I0314 14:31:16.592912    5729 nodeserver.go:199] NodeUnpublishVolume: unmounting volume rg-backups-prod#stpabackupsprod#backups-prod on /var/lib/kubelet/pods/dca3dffa-7785-47c8-a73f-02b144cea174/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount
I0314 14:31:16.592933    5729 mount_helper_common.go:93] unmounting "/var/lib/kubelet/pods/dca3dffa-7785-47c8-a73f-02b144cea174/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount" (corruptedMount: false, mounterCanSkipMountPointChecks: true)
I0314 14:31:16.592947    5729 mount_linux.go:361] Unmounting /var/lib/kubelet/pods/dca3dffa-7785-47c8-a73f-02b144cea174/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount
I0314 14:31:16.594108    5729 mount_helper_common.go:150] Warning: deleting path "/var/lib/kubelet/pods/dca3dffa-7785-47c8-a73f-02b144cea174/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount"
I0314 14:31:16.594186    5729 nodeserver.go:204] NodeUnpublishVolume: unmount volume rg-backups-prod#stpabackupsprod#backups-prod on /var/lib/kubelet/pods/dca3dffa-7785-47c8-a73f-02b144cea174/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount successfully
I0314 14:31:16.594200    5729 utils.go:82] GRPC response: {}

Now the second restart of the pod, as you probably expected, the blobfuse fs is gone.

❯ kubectl exec -it -n pa-data-services deployments/orientdbservice -- /bin/bash
Defaulted container "orientdbservice" out of: orientdbservice, orientdbservicehandler
root@orientdbservice-58c79ffb79-phddp:/orientdb# df -h
Filesystem      Size  Used Avail Use% Mounted on
overlay         248G   27G  222G  11% /
tmpfs            64M     0   64M   0% /dev
/dev/root       248G   27G  222G  11% /etc/hosts
shm              64M     0   64M   0% /dev/shm
tmpfs            28G   12K   28G   1% /run/secrets/kubernetes.io/serviceaccount
tmpfs            16G     0   16G   0% /proc/acpi
tmpfs            16G     0   16G   0% /proc/scsi
tmpfs            16G     0   16G   0% /sys/firmware
all the manifest files I used

Here is the PV and I apply this one first

apiVersion: v1
kind: PersistentVolume
metadata:
  name: pv-stpabackupsprod-blob-container
spec:
  capacity:
    storage: 500Gi
  accessModes:
    - ReadOnlyMany
  claimRef:
    apiVersion: v1
    kind: PersistentVolumeClaim
    name: pvc-stpabackupsprod-blob-container
    namespace: pa-data-services
  persistentVolumeReclaimPolicy: Retain
  storageClassName: azureblob-fuse-premium
  csi:
    driver: blob.csi.azure.com
    readOnly: false
    volumeHandle: rg-backups-prod#stpabackupsprod#backups-prod
    volumeAttributes:
      resourceGroup: rg-backups-prod
      storageAccount: stpabackupsprod
      containerName: backups-prod
      protocol: fuse2
    nodeStageSecretRef:
      name: stpabackupsprod
      namespace: pa-data-services
  mountOptions:
    - '-o allow_other'
    - '--file-cache-timeout-in-seconds=120'
    - '--use-attr-cache=true'
    - '--cancel-list-on-mount-seconds=5'
    - '-o attr_timeout=120'
    - '-o entry_timeout=120'
    - '-o negative_timeout=120'
    - '--log-level=LOG_DEBUG'
    - '--cache-size-mb=1000'
    - '--virtual-directory=true'

Here is the Deployment and I apply this after the PV. Notice it's a sidecar pattern, but I don't think that matters, since this is the exact same YAMLs I use in AKS 1.24.9, except it uses protocol: fuse1 w/o --virtual-directory mounting options, and it works fine (meaning blobfuse still works after numerous pod restarts)

apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: pvc-stpabackupsprod-blob-container
  namespace: pa-data-services
  labels:
    service: orientdb
    type: pv-claim
spec:
  accessModes:
    - ReadWriteMany
  resources:
    requests:
      storage: 500Gi
  volumeName: pv-stpabackupsprod-blob-container
  storageClassName: azureblob-nfs-premium
---
kind: Deployment
apiVersion: apps/v1
metadata:
  name: orientdbservice
  namespace: pa-data-services
  labels:
    service: orientdb
spec:
  replicas: 1
  selector:
    matchLabels:
      service: orientdb
  template:
    metadata:
      name: orientdbservice
      labels:
        service: orientdb
        type: container-deployment
    spec:
      containers:
      - name: orientdbservice
        image: datacontainers.azurecr.io/pa-orientdb-enterprise:main
        resources:
          requests:
            cpu: 2000m
            memory: 12Gi
        imagePullPolicy: Always
        env:
        - name: ORIENTDB_ROOT_PASSWORD
          valueFrom:
            secretKeyRef:
              name: pa-data-secrets
              key: ORIENTDB_ROOT_PASSWORD
        - name: ORIENTDB_OPTS_MEMORY
          value: "-Xms2g -Xmx12g -Dstorage.diskCache.bufferSize=36000 -Dstorage.useWAL=true -server -XX:+PerfDisableSharedMem"
        ports:
        - containerPort: 2424
          name: port-binary
        - containerPort: 2480
          name: port-http
        volumeMounts:
        - mountPath: /orientdb/databases
          name: orientdb-data
          subPath: databases
        - mountPath: /orientdb/backup
          name: orientdb-data
          subPath: backup
        - mountPath: /mnt/stpabackupsprod
          name: orientdb-stpabackupsprod
      - name: orientdbservicehandler
        image: datacontainers.azurecr.io/odb-handler:main
        resources: {}
        imagePullPolicy: Always
        env:
        - name: APP_HOST
          value: "0.0.0.0"
        - name: AZURE_STORAGE_CONNECTION_STRING
          valueFrom:
            secretKeyRef:
              name: stpabackupsprod
              key: AZURE_STORAGE_CONNECTION_STRING
        - name: AZURE_STORAGE_AUTH_MODE
          valueFrom:
            configMapKeyRef:
              name: odb-handler-configs
              key: AZURE_STORAGE_AUTH_MODE
        - name: AZURE_STORAGE_CONTAINER_NAME
          valueFrom:
            configMapKeyRef:
              name: odb-handler-configs
              key: AZURE_STORAGE_CONTAINER_NAME
        - name: COMMAND_ENVIRONMENT
          valueFrom:
            configMapKeyRef:
              name: odb-handler-configs
              key: COMMAND_ENVIRONMENT
        - name: KUBERNETES_NAMESPACE
          valueFrom:
            fieldRef:
              fieldPath: metadata.namespace
        - name: KUBERNETES_POD
          valueFrom:
            fieldRef:
              fieldPath: metadata.name
        - name: KUBERNETES_IN_CLUSTER
          valueFrom:
            configMapKeyRef:
              name: odb-handler-configs
              key: KUBERNETES_IN_CLUSTER
        - name: BACKUP_CLIENTMAP
          valueFrom:
            configMapKeyRef:
              name: odb-handler-configs
              key: BACKUP_CLIENTMAP
        - name: BACKUP_PARSE_FORMAT
          valueFrom:
            configMapKeyRef:
              name: odb-handler-configs
              key: BACKUP_PARSE_FORMAT
        - name: BACKUP_KWARG_DEFAULTS
          valueFrom:
            configMapKeyRef:
              name: odb-handler-configs
              key: BACKUP_KWARG_DEFAULTS
        - name: BACKUP_JINJA_FORMAT
          valueFrom:
            configMapKeyRef:
              name: odb-handler-configs
              key: BACKUP_JINJA_FORMAT
        ports:
          - containerPort: 8000
            name: odbhandlerport
      imagePullSecrets:
        - name: pa-datacontainers-acr
      volumes:
      - name: orientdb-data
        emptyDir: {}
      - name: orientdb-stpabackupsprod
        persistentVolumeClaim:
          claimName: pvc-stpabackupsprod-blob-container
      tolerations:
      - key: "dbcluster"
        operator: "Equal"
        value: "true"
        effect: "NoSchedule"
      nodeSelector:
        agentpool: dbcluster
---
kind: Service
apiVersion: v1
metadata:
  name: orientdbservice
  namespace: pa-data-services
  labels:
    service: orientdb
    type: nodeport-service
spec:
  type: NodePort
  selector:
    service: orientdb
    type: container-deployment
  ports:
  - protocol: TCP
    port: 2480
    name: http
---
kind: Service
apiVersion: v1
metadata:
  name: orientdbservice-private
  namespace: pa-data-services
  labels:
    service: orientdb
    type: private-orientdbservice-load-balancer-service
  annotations:
    service.beta.kubernetes.io/azure-load-balancer-internal: "true"
spec:
  type: LoadBalancer
  loadBalancerIP: 10.224.0.10
  ports:
  - protocol: TCP
    port: 2424
    name: odb-binary
  - protocol: TCP
    port: 8000
    name: odb-handler-http
  selector:
    service: orientdb
    type: container-deployment

P.S.: I think you 100% know what exactly my sceniaro is, but I will try to find some time today to do a screen recording and share it anyway. Also, I really appreciate for all the help!

@andyzhangx
Copy link
Contributor

I have reproed the above issue, the second pod deletion would make blobfuse mount broken.

I find where the problem is, blob csi driver would mount blob storage to a globalmount dir first, and then bind mount during NodePublishVolume for every pod running on the node, that could share the globalmount. when pod is terminated, dir unmount happens on bind mount, and globalmount is still there. there is no problem in blobfuse v1, while in blobfuse v2, unmount on bind mount would also make original globalmount dir unmount happen. That's the problem.
@vibhansa-msft could you help check what's the behavior difference on v2 when unmount happen on bind mount?

  • on below example, there are 1 blobfuse v1 globalmount, 1 bind mount and 1 blobfuse v2 globalmount, 1 bind mount
# mount | grep blobfuse | sort | uniq
blobfuse on /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/5f1241264f64ebdab71cf539cabb041e8715b1f6cd8b146fdff0ada5fc974eab/globalmount type fuse (rw,nosuid,nodev,relatime,user_id=0,group_id=0,allow_other)
blobfuse on /var/lib/kubelet/pods/cfa45d56-6862-4d65-9819-52e71ba45e62/volumes/kubernetes.io~csi/pvc-461464a9-8310-4cde-a3be-f9d4ce875419/mount type fuse (rw,nosuid,nodev,relatime,user_id=0,group_id=0,allow_other)
blobfuse2 on /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/1f778bb6414796cfefe77ad67ee6e5f21be127ed1adf86affb766488a15ebee4/globalmount type fuse (rw,nosuid,nodev,relatime,user_id=0,group_id=0,allow_other)
blobfuse2 on /var/lib/kubelet/pods/d5a00f29-4c5e-4e44-b54b-86690beaff6b/volumes/kubernetes.io~csi/pvc-32e09edb-ac53-4240-976a-6e810e270018/mount type fuse (rw,nosuid,nodev,relatime,user_id=0,group_id=0,allow_other)

# unmount blobfuse v2 bind mount
root@aks-agentpool-20541019-vmss000000:/# umount /var/lib/kubelet/pods/d5a00f29-4c5e-4e44-b54b-86690beaff6b/volumes/kubernetes.io~csi/pvc-32e09edb-ac53-4240-976a-6e810e270018/mount

# blobfuse v2 global mount is also gone
root@aks-agentpool-20541019-vmss000000:/# mount | grep blobfuse | sort | uniq
blobfuse on /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/5f1241264f64ebdab71cf539cabb041e8715b1f6cd8b146fdff0ada5fc974eab/globalmount type fuse (rw,nosuid,nodev,relatime,user_id=0,group_id=0,allow_other)
blobfuse on /var/lib/kubelet/pods/cfa45d56-6862-4d65-9819-52e71ba45e62/volumes/kubernetes.io~csi/pvc-461464a9-8310-4cde-a3be-f9d4ce875419/mount type fuse (rw,nosuid,nodev,relatime,user_id=0,group_id=0,allow_other)

# unmount blobfuse v1 bind mount
root@aks-agentpool-20541019-vmss000000:/# umount /var/lib/kubelet/pods/cfa45d56-6862-4d65-9819-52e71ba45e62/volumes/kubernetes.io~csi/pvc-461464a9-8310-4cde-a3be-f9d4ce875419/mount

# blobfuse v1 global mount is still there
root@aks-agentpool-20541019-vmss000000:/# mount | grep blobfuse | sort | uniq
blobfuse on /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/5f1241264f64ebdab71cf539cabb041e8715b1f6cd8b146fdff0ada5fc974eab/globalmount type fuse (rw,nosuid,nodev,relatime,user_id=0,group_id=0,allow_other)

@pa-mc
Copy link

pa-mc commented Mar 19, 2023

@andyzhangx @vibhansa-msft Two 🐐 s 😄

So @andyzhangx It's alright, I'm not in a hurry right now, I can wait till the the AKS release to happen. I've changed my AKS 1.25.5 to use NFS mount rather than Blobfuse2 mount. Speaking of which, the AKS release, is there a channel (slack or other) for me to monitor when the fix is merged into the necessary AKS version? Also what do I need to do to make sure the change propagate through existing AKS clusters? Perhaps do a az aks update or something like that?

@cvvz
Copy link
Contributor

cvvz commented Mar 19, 2023

I just filed a PR to solve the problem from blobfuse2 side, please take a look. #1088 @vibhansa-msft @pa-mc @andyzhangx

@andyzhangx
Copy link
Contributor

@andyzhangx @vibhansa-msft Two 🐐 s 😄

So @andyzhangx It's alright, I'm not in a hurry right now, I can wait till the the AKS release to happen. I've changed my AKS 1.25.5 to use NFS mount rather than Blobfuse2 mount. Speaking of which, the AKS release, is there a channel (slack or other) for me to monitor when the fix is merged into the necessary AKS version? Also what do I need to do to make sure the change propagate through existing AKS clusters? Perhaps do a az aks update or something like that?

@pa-mc pls check on https://github.com/Azure/AKS/releases, and the fix would be in 0319 release, and https://releases.aks.azure.com/ site would show you the release rollout progress on every region. This csi driver version upgrade would happen in the backend, you don't need to do anything. And yes, NFS mount is safe now on AKS 1.25

@kumaaaah
Copy link
Author

kumaaaah commented Mar 22, 2023

If you are running blobfuse on a container you can follow this. And better to be consitent with fuse3 on container and host. To run container use

	docker run -it --rm \
		--cap-add=SYS_ADMIN \
		--device=/dev/fuse \
		--security-opt apparmor:unconfined \
		-e AZURE_STORAGE_ACCOUNT \
		-e AZURE_STORAGE_ACCESS_KEY \
		-e AZURE_STORAGE_ACCOUNT_CONTAINER \
		<image>

Hi @vibhansa-msft
I successfully mounted the blob in a docker container now.
Please kindly tell me how should I do to mount the same blob to an AKS container?

Thank you very much.

vibhansa-msft pushed a commit that referenced this issue Mar 22, 2023
#1079
Pod deletion will cause global mount point to disappear. The root cause is csi driver will bind mount the global mount point into Pod volume immediately after blobfuse2 mount return successfully. However, fuse is still mounting at background, so actually bind mount and fuse mount happened at the same time, this will lead to a problem that unmount the bind mount (when deleting a Pod) will cause the original mount point unmounted as well.
#1081
Mount is actually failed, but the errno returned by blobfuse2 is 0 and no error log (both terminal and log file).
@vibhansa-msft vibhansa-msft linked a pull request Mar 22, 2023 that will close this issue
@vibhansa-msft
Copy link
Member

Fixed with #1088

@pa-mc
Copy link

pa-mc commented Mar 23, 2023

Thanks for all the help @vibhansa-msft @andyzhangx @cvvz !!

Here is the BlobfuseV2 CSI driver logs after the patch. No longer GRPC errors, and mount persists after numerous restart of the Pod :) Again, thank you so much all of your help!
❯ kubectl logs csi-blob-node-44xp2 -c blob -n kube-system -f
I0323 15:02:03.652753    5917 main.go:117] set up prometheus server on [::]:29635
I0323 15:02:03.653280    5917 blob.go:235]
DRIVER INFORMATION:
-------------------
Build Date: "2023-03-18T08:11:26Z"
Compiler: gc
Driver Name: blob.csi.azure.com
Driver Version: v1.19.2
Git Commit: b313e4f5b30b4cc62ac5fd37041c0b85299a2cf1
Go Version: go1.19.1
Platform: linux/amd64

Streaming logs below:
I0323 15:02:03.653297    5917 blob.go:238] driver userAgent: blob.csi.azure.com/v1.19.2 AKS
I0323 15:02:03.653408    5917 azure.go:73] set QPS(25.000000) and QPS Burst(50) for driver kubeClient
I0323 15:02:03.653628    5917 azure.go:87] reading cloud config from secret kube-system/azure-cloud-provider
I0323 15:02:03.706825    5917 azure.go:94] InitializeCloudFromSecret: failed to get cloud config from secret kube-system/azure-cloud-provider: failed to get secret kube-system/azure-cloud-provider: secrets "azure-cloud-provider" not found
I0323 15:02:03.706842    5917 azure.go:99] could not read cloud config from secret kube-system/azure-cloud-provider
I0323 15:02:03.706847    5917 azure.go:102] AZURE_CREDENTIAL_FILE env var set as /etc/kubernetes/azure.json
I0323 15:02:03.706869    5917 azure.go:113] read cloud config from file: /etc/kubernetes/azure.json successfully
I0323 15:02:03.707416    5917 azure_auth.go:245] Using AzurePublicCloud environment
I0323 15:02:03.707432    5917 azure_auth.go:96] azure: using managed identity extension to retrieve access token
I0323 15:02:03.707436    5917 azure_auth.go:102] azure: using User Assigned MSI ID to retrieve access token
I0323 15:02:03.707463    5917 azure_auth.go:113] azure: User Assigned MSI ID is client ID
I0323 15:02:03.707498    5917 azure.go:775] Azure cloudprovider using try backoff: retries=6, exponent=1.500000, duration=5, jitter=1.000000
I0323 15:02:03.707528    5917 azure_interfaceclient.go:74] Azure InterfacesClient (read ops) using rate limit config: QPS=10, bucket=100
I0323 15:02:03.707536    5917 azure_interfaceclient.go:77] Azure InterfacesClient (write ops) using rate limit config: QPS=10, bucket=100
I0323 15:02:03.707546    5917 azure_vmsizeclient.go:68] Azure VirtualMachineSizesClient (read ops) using rate limit config: QPS=10, bucket=100
I0323 15:02:03.707549    5917 azure_vmsizeclient.go:71] Azure VirtualMachineSizesClient (write ops) using rate limit config: QPS=10, bucket=100
I0323 15:02:03.707558    5917 azure_snapshotclient.go:70] Azure SnapshotClient (read ops) using rate limit config: QPS=10, bucket=100
I0323 15:02:03.707561    5917 azure_snapshotclient.go:73] Azure SnapshotClient (write ops) using rate limit config: QPS=10, bucket=100
I0323 15:02:03.707569    5917 azure_storageaccountclient.go:70] Azure StorageAccountClient (read ops) using rate limit config: QPS=10, bucket=100
I0323 15:02:03.707575    5917 azure_storageaccountclient.go:73] Azure StorageAccountClient (write ops) using rate limit config: QPS=10, bucket=100
I0323 15:02:03.707582    5917 azure_diskclient.go:68] Azure DisksClient using API version: 2022-03-02
I0323 15:02:03.707588    5917 azure_diskclient.go:73] Azure DisksClient (read ops) using rate limit config: QPS=10, bucket=100
I0323 15:02:03.707591    5917 azure_diskclient.go:76] Azure DisksClient (write ops) using rate limit config: QPS=10, bucket=100
I0323 15:02:03.707597    5917 azure_vmclient.go:70] Azure VirtualMachine client (read ops) using rate limit config: QPS=10, bucket=100
I0323 15:02:03.707602    5917 azure_vmclient.go:73] Azure VirtualMachine client (write ops) using rate limit config: QPS=10, bucket=100
I0323 15:02:03.707607    5917 azure_vmssclient.go:70] Azure VirtualMachineScaleSetClient (read ops) using rate limit config: QPS=10, bucket=100
I0323 15:02:03.707610    5917 azure_vmssclient.go:73] Azure VirtualMachineScaleSetClient (write ops) using rate limit config: QPS=10, bucket=100
I0323 15:02:03.707617    5917 azure_vmssvmclient.go:75] Azure vmssVM client (read ops) using rate limit config: QPS=10, bucket=100
I0323 15:02:03.707622    5917 azure_vmssvmclient.go:78] Azure vmssVM client (write ops) using rate limit config: QPS=10, bucket=100
I0323 15:02:03.707631    5917 azure_routeclient.go:69] Azure RoutesClient (read ops) using rate limit config: QPS=10, bucket=100
I0323 15:02:03.707634    5917 azure_routeclient.go:72] Azure RoutesClient (write ops) using rate limit config: QPS=10, bucket=100
I0323 15:02:03.707641    5917 azure_subnetclient.go:70] Azure SubnetsClient (read ops) using rate limit config: QPS=10, bucket=100
I0323 15:02:03.707646    5917 azure_subnetclient.go:73] Azure SubnetsClient (write ops) using rate limit config: QPS=10, bucket=100
I0323 15:02:03.707651    5917 azure_routetableclient.go:69] Azure RouteTablesClient (read ops) using rate limit config: QPS=10, bucket=100
I0323 15:02:03.707654    5917 azure_routetableclient.go:72] Azure RouteTablesClient (write ops) using rate limit config: QPS=10, bucket=100
I0323 15:02:03.707661    5917 azure_loadbalancerclient.go:70] Azure LoadBalancersClient (read ops) using rate limit config: QPS=10, bucket=100
I0323 15:02:03.707666    5917 azure_loadbalancerclient.go:73] Azure LoadBalancersClient (write ops) using rate limit config: QPS=10, bucket=100
I0323 15:02:03.707674    5917 azure_securitygroupclient.go:70] Azure SecurityGroupsClient (read ops) using rate limit config: QPS=10, bucket=100
I0323 15:02:03.707687    5917 azure_securitygroupclient.go:73] Azure SecurityGroupsClient (write ops) using rate limit config: QPS=10, bucket=100
I0323 15:02:03.707693    5917 azure_publicipclient.go:74] Azure PublicIPAddressesClient (read ops) using rate limit config: QPS=10, bucket=100
I0323 15:02:03.707699    5917 azure_publicipclient.go:77] Azure PublicIPAddressesClient (write ops) using rate limit config: QPS=10, bucket=100
I0323 15:02:03.707710    5917 azure_blobclient.go:67] Azure BlobClient using API version: 2021-09-01
I0323 15:02:03.707723    5917 azure_vmasclient.go:70] Azure AvailabilitySetsClient (read ops) using rate limit config: QPS=10, bucket=100
I0323 15:02:03.707726    5917 azure_vmasclient.go:73] Azure AvailabilitySetsClient  (write ops) using rate limit config: QPS=10, bucket=100
I0323 15:02:03.707773    5917 azure.go:1006] attach/detach disk operation rate limit QPS: 6.000000, Bucket: 10
I0323 15:02:03.707784    5917 azure.go:149] starting node server on node(aks-dbcluster-58864392-vmss00000w)
I0323 15:02:03.707794    5917 blob.go:243] cloud: AzurePublicCloud, location: canadacentral, rg: pa-data-pa-data-aks-devtest-rg-node-rg, VnetName: aks-vnet-20107475, VnetResourceGroup: , SubnetName: aks-subnet
I0323 15:02:03.709518    5917 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0323 15:02:03.709561    5917 driver.go:80] Enabling controller service capability: CREATE_DELETE_VOLUME
I0323 15:02:03.709568    5917 driver.go:80] Enabling controller service capability: EXPAND_VOLUME
I0323 15:02:03.709571    5917 driver.go:80] Enabling controller service capability: SINGLE_NODE_MULTI_WRITER
I0323 15:02:03.709575    5917 driver.go:99] Enabling volume access mode: SINGLE_NODE_WRITER
I0323 15:02:03.709579    5917 driver.go:99] Enabling volume access mode: SINGLE_NODE_READER_ONLY
I0323 15:02:03.709584    5917 driver.go:99] Enabling volume access mode: SINGLE_NODE_SINGLE_WRITER
I0323 15:02:03.709588    5917 driver.go:99] Enabling volume access mode: SINGLE_NODE_MULTI_WRITER
I0323 15:02:03.709593    5917 driver.go:99] Enabling volume access mode: MULTI_NODE_READER_ONLY
I0323 15:02:03.709596    5917 driver.go:99] Enabling volume access mode: MULTI_NODE_SINGLE_WRITER
I0323 15:02:03.709603    5917 driver.go:99] Enabling volume access mode: MULTI_NODE_MULTI_WRITER
I0323 15:02:03.709607    5917 driver.go:90] Enabling node service capability: STAGE_UNSTAGE_VOLUME
I0323 15:02:03.709612    5917 driver.go:90] Enabling node service capability: SINGLE_NODE_MULTI_WRITER
I0323 15:02:03.709722    5917 server.go:114] Listening for connections on address: &net.UnixAddr{Name:"//csi/csi.sock", Net:"unix"}
I0323 15:02:03.841253    5917 utils.go:75] GRPC call: /csi.v1.Identity/GetPluginInfo
I0323 15:02:03.841268    5917 utils.go:76] GRPC request: {}
I0323 15:02:03.843209    5917 utils.go:82] GRPC response: {"name":"blob.csi.azure.com","vendor_version":"v1.19.2"}
I0323 15:02:04.627990    5917 utils.go:75] GRPC call: /csi.v1.Identity/GetPluginInfo
I0323 15:02:04.628002    5917 utils.go:76] GRPC request: {}
I0323 15:02:04.628044    5917 utils.go:82] GRPC response: {"name":"blob.csi.azure.com","vendor_version":"v1.19.2"}
I0323 15:02:04.784151    5917 utils.go:75] GRPC call: /csi.v1.Node/NodeGetInfo
I0323 15:02:04.784168    5917 utils.go:76] GRPC request: {}
I0323 15:02:04.784233    5917 utils.go:82] GRPC response: {"node_id":"aks-dbcluster-58864392-vmss00000w"}
I0323 15:02:55.096971    5917 utils.go:75] GRPC call: /csi.v1.Node/NodeStageVolume
I0323 15:02:55.096987    5917 utils.go:76] GRPC request: {"staging_target_path":"/var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/40d24c216b1da97a64a7ec1a32b5019a13c40b0172ad3fa7a0af09e4bb96c5a8/globalmount","volume_capability":{"AccessType":{"Mount":{}},"access_mode":{"mode":3}},"volume_context":{"containerName":"sync-backups-prod","protocol":"nfs","resourceGroup":"devtest-datalake","storageAccount":"nfssyncstpabackupsprod"},"volume_id":"devtest-datalake#nfssyncstpabackupsprod#sync-backups-prod"}
I0323 15:02:55.097295    5917 blob.go:416] volumeID(devtest-datalake#nfssyncstpabackupsprod#sync-backups-prod) authEnv: []
I0323 15:02:55.097307    5917 nodeserver.go:311] target /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/40d24c216b1da97a64a7ec1a32b5019a13c40b0172ad3fa7a0af09e4bb96c5a8/globalmount
protocol nfs

volumeId devtest-datalake#nfssyncstpabackupsprod#sync-backups-prod
context map[containerName:sync-backups-prod protocol:nfs resourceGroup:devtest-datalake storageAccount:nfssyncstpabackupsprod]
mountflags []
serverAddress nfssyncstpabackupsprod.blob.core.windows.net
I0323 15:02:55.097373    5917 mount_linux.go:244] Detected OS without systemd
I0323 15:02:55.097380    5917 mount_linux.go:219] Mounting cmd (mount) with arguments (-t nfs -o sec=sys,vers=3,nolock nfssyncstpabackupsprod.blob.core.windows.net:/nfssyncstpabackupsprod/sync-backups-prod /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/40d24c216b1da97a64a7ec1a32b5019a13c40b0172ad3fa7a0af09e4bb96c5a8/globalmount)
I0323 15:02:58.320611    5917 blob.go:856] skip chmod on targetPath(/var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/40d24c216b1da97a64a7ec1a32b5019a13c40b0172ad3fa7a0af09e4bb96c5a8/globalmount) since mode is already 020000000777)
I0323 15:02:58.320647    5917 nodeserver.go:330] volume(devtest-datalake#nfssyncstpabackupsprod#sync-backups-prod) mount nfssyncstpabackupsprod.blob.core.windows.net:/nfssyncstpabackupsprod/sync-backups-prod on /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/40d24c216b1da97a64a7ec1a32b5019a13c40b0172ad3fa7a0af09e4bb96c5a8/globalmount succeeded
I0323 15:02:58.320660    5917 utils.go:82] GRPC response: {}
I0323 15:02:58.323347    5917 utils.go:75] GRPC call: /csi.v1.Node/NodePublishVolume
I0323 15:02:58.323360    5917 utils.go:76] GRPC request: {"staging_target_path":"/var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/40d24c216b1da97a64a7ec1a32b5019a13c40b0172ad3fa7a0af09e4bb96c5a8/globalmount","target_path":"/var/lib/kubelet/pods/7bbb3fd3-7baa-4aa3-9887-30a3e3560092/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount","volume_capability":{"AccessType":{"Mount":{}},"access_mode":{"mode":3}},"volume_context":{"containerName":"sync-backups-prod","csi.storage.k8s.io/ephemeral":"false","csi.storage.k8s.io/pod.name":"orientdbservice-58c79ffb79-mfx94","csi.storage.k8s.io/pod.namespace":"pa-data-services","csi.storage.k8s.io/pod.uid":"7bbb3fd3-7baa-4aa3-9887-30a3e3560092","csi.storage.k8s.io/serviceAccount.name":"default","protocol":"nfs","resourceGroup":"devtest-datalake","storageAccount":"nfssyncstpabackupsprod"},"volume_id":"devtest-datalake#nfssyncstpabackupsprod#sync-backups-prod"}
I0323 15:02:58.323694    5917 nodeserver.go:122] NodePublishVolume: volume devtest-datalake#nfssyncstpabackupsprod#sync-backups-prod mounting /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/40d24c216b1da97a64a7ec1a32b5019a13c40b0172ad3fa7a0af09e4bb96c5a8/globalmount at /var/lib/kubelet/pods/7bbb3fd3-7baa-4aa3-9887-30a3e3560092/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount with mountOptions: [bind]
I0323 15:02:58.323713    5917 mount_linux.go:219] Mounting cmd (mount) with arguments ( -o bind /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/40d24c216b1da97a64a7ec1a32b5019a13c40b0172ad3fa7a0af09e4bb96c5a8/globalmount /var/lib/kubelet/pods/7bbb3fd3-7baa-4aa3-9887-30a3e3560092/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount)
I0323 15:02:58.324736    5917 mount_linux.go:219] Mounting cmd (mount) with arguments ( -o bind,remount /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/40d24c216b1da97a64a7ec1a32b5019a13c40b0172ad3fa7a0af09e4bb96c5a8/globalmount /var/lib/kubelet/pods/7bbb3fd3-7baa-4aa3-9887-30a3e3560092/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount)
I0323 15:02:58.325599    5917 nodeserver.go:138] NodePublishVolume: volume devtest-datalake#nfssyncstpabackupsprod#sync-backups-prod mount /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/40d24c216b1da97a64a7ec1a32b5019a13c40b0172ad3fa7a0af09e4bb96c5a8/globalmount at /var/lib/kubelet/pods/7bbb3fd3-7baa-4aa3-9887-30a3e3560092/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount successfully
I0323 15:02:58.325607    5917 utils.go:82] GRPC response: {}
I0323 17:18:56.187847    5917 utils.go:75] GRPC call: /csi.v1.Node/NodeUnpublishVolume
I0323 17:18:56.187865    5917 utils.go:76] GRPC request: {"target_path":"/var/lib/kubelet/pods/7bbb3fd3-7baa-4aa3-9887-30a3e3560092/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount","volume_id":"devtest-datalake#nfssyncstpabackupsprod#sync-backups-prod"}
I0323 17:18:56.187947    5917 nodeserver.go:203] NodeUnpublishVolume: unmounting volume devtest-datalake#nfssyncstpabackupsprod#sync-backups-prod on /var/lib/kubelet/pods/7bbb3fd3-7baa-4aa3-9887-30a3e3560092/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount
I0323 17:18:56.200704    5917 mount_helper_common.go:93] unmounting "/var/lib/kubelet/pods/7bbb3fd3-7baa-4aa3-9887-30a3e3560092/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount" (corruptedMount: false, mounterCanSkipMountPointChecks: true)
I0323 17:18:56.200725    5917 mount_linux.go:361] Unmounting /var/lib/kubelet/pods/7bbb3fd3-7baa-4aa3-9887-30a3e3560092/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount
I0323 17:18:56.218001    5917 mount_helper_common.go:150] Warning: deleting path "/var/lib/kubelet/pods/7bbb3fd3-7baa-4aa3-9887-30a3e3560092/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount"
I0323 17:18:56.218204    5917 nodeserver.go:208] NodeUnpublishVolume: unmount volume devtest-datalake#nfssyncstpabackupsprod#sync-backups-prod on /var/lib/kubelet/pods/7bbb3fd3-7baa-4aa3-9887-30a3e3560092/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount successfully
I0323 17:18:56.218217    5917 utils.go:82] GRPC response: {}
I0323 17:18:56.290082    5917 utils.go:75] GRPC call: /csi.v1.Node/NodeUnstageVolume
I0323 17:18:56.290095    5917 utils.go:76] GRPC request: {"staging_target_path":"/var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/40d24c216b1da97a64a7ec1a32b5019a13c40b0172ad3fa7a0af09e4bb96c5a8/globalmount","volume_id":"devtest-datalake#nfssyncstpabackupsprod#sync-backups-prod"}
I0323 17:18:56.290159    5917 nodeserver.go:422] NodeUnstageVolume: volume devtest-datalake#nfssyncstpabackupsprod#sync-backups-prod unmounting on /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/40d24c216b1da97a64a7ec1a32b5019a13c40b0172ad3fa7a0af09e4bb96c5a8/globalmount
I0323 17:18:56.290182    5917 mount_helper_common.go:93] unmounting "/var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/40d24c216b1da97a64a7ec1a32b5019a13c40b0172ad3fa7a0af09e4bb96c5a8/globalmount" (corruptedMount: false, mounterCanSkipMountPointChecks: true)
I0323 17:18:56.290196    5917 mount_linux.go:361] Unmounting /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/40d24c216b1da97a64a7ec1a32b5019a13c40b0172ad3fa7a0af09e4bb96c5a8/globalmount
I0323 17:18:59.347361    5917 mount_helper_common.go:150] Warning: deleting path "/var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/40d24c216b1da97a64a7ec1a32b5019a13c40b0172ad3fa7a0af09e4bb96c5a8/globalmount"
I0323 17:18:59.347716    5917 nodeserver.go:427] NodeUnstageVolume: volume devtest-datalake#nfssyncstpabackupsprod#sync-backups-prod unmount on /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/40d24c216b1da97a64a7ec1a32b5019a13c40b0172ad3fa7a0af09e4bb96c5a8/globalmount successfully
I0323 17:18:59.347737    5917 utils.go:82] GRPC response: {}
I0323 17:21:03.958644    5917 utils.go:75] GRPC call: /csi.v1.Node/NodeStageVolume
I0323 17:21:03.958656    5917 utils.go:76] GRPC request: {"secrets":"***stripped***","staging_target_path":"/var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount","volume_capability":{"AccessType":{"Mount":{"mount_flags":["-o allow_other","--file-cache-timeout-in-seconds=120","--use-attr-cache=true","--cancel-list-on-mount-seconds=5","-o attr_timeout=120","-o entry_timeout=120","-o negative_timeout=120","--log-level=LOG_DEBUG","--cache-size-mb=1000","--virtual-directory=true"]}},"access_mode":{"mode":3}},"volume_context":{"containerName":"backups-prod","protocol":"fuse2","resourceGroup":"rg-backups-prod","storageAccount":"stpabackupsprod"},"volume_id":"rg-backups-prod#stpabackupsprod#backups-prod"}
I0323 17:21:03.959018    5917 blob.go:416] volumeID(rg-backups-prod#stpabackupsprod#backups-prod) authEnv: []
I0323 17:21:03.959057    5917 nodeserver.go:353] target /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount
protocol fuse2

volumeId rg-backups-prod#stpabackupsprod#backups-prod
context map[containerName:backups-prod protocol:fuse2 resourceGroup:rg-backups-prod storageAccount:stpabackupsprod]
mountflags [-o allow_other --file-cache-timeout-in-seconds=120 --use-attr-cache=true --cancel-list-on-mount-seconds=5 -o attr_timeout=120 -o entry_timeout=120 -o negative_timeout=120 --log-level=LOG_DEBUG --cache-size-mb=1000 --virtual-directory=true]
mountOptions [-o allow_other --file-cache-timeout-in-seconds=120 --use-attr-cache=true --cancel-list-on-mount-seconds=5 -o attr_timeout=120 -o entry_timeout=120 -o negative_timeout=120 --log-level=LOG_DEBUG --cache-size-mb=1000 --virtual-directory=true --pre-mount-validate=true --use-https=true --empty-dir-check=false --tmp-path=/mnt/rg-backups-prod#stpabackupsprod#backups-prod --container-name=backups-prod]
args /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount -o allow_other --file-cache-timeout-in-seconds=120 --use-attr-cache=true --cancel-list-on-mount-seconds=5 -o attr_timeout=120 -o entry_timeout=120 -o negative_timeout=120 --log-level=LOG_DEBUG --cache-size-mb=1000 --virtual-directory=true --pre-mount-validate=true --use-https=true --empty-dir-check=false --tmp-path=/mnt/rg-backups-prod#stpabackupsprod#backups-prod --container-name=backups-prod
serverAddress stpabackupsprod.blob.core.windows.net
I0323 17:21:03.959084    5917 nodeserver.go:144] mouting using blobfuse proxy
I0323 17:21:03.959595    5917 nodeserver.go:158] calling BlobfuseProxy: MountAzureBlob function
I0323 17:21:06.856924    5917 nodeserver.go:401] volume(rg-backups-prod#stpabackupsprod#backups-prod) mount on "/var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount" succeeded
I0323 17:21:06.856956    5917 utils.go:82] GRPC response: {}
I0323 17:21:06.859270    5917 utils.go:75] GRPC call: /csi.v1.Node/NodePublishVolume
I0323 17:21:06.859282    5917 utils.go:76] GRPC request: {"staging_target_path":"/var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount","target_path":"/var/lib/kubelet/pods/e25f0f5f-1027-4dc3-bc25-bb906fdee5e5/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount","volume_capability":{"AccessType":{"Mount":{"mount_flags":["-o allow_other","--file-cache-timeout-in-seconds=120","--use-attr-cache=true","--cancel-list-on-mount-seconds=5","-o attr_timeout=120","-o entry_timeout=120","-o negative_timeout=120","--log-level=LOG_DEBUG","--cache-size-mb=1000","--virtual-directory=true"]}},"access_mode":{"mode":3}},"volume_context":{"containerName":"backups-prod","csi.storage.k8s.io/ephemeral":"false","csi.storage.k8s.io/pod.name":"orientdbservice-58c79ffb79-thh2f","csi.storage.k8s.io/pod.namespace":"pa-data-services","csi.storage.k8s.io/pod.uid":"e25f0f5f-1027-4dc3-bc25-bb906fdee5e5","csi.storage.k8s.io/serviceAccount.name":"default","protocol":"fuse2","resourceGroup":"rg-backups-prod","storageAccount":"stpabackupsprod"},"volume_id":"rg-backups-prod#stpabackupsprod#backups-prod"}
I0323 17:21:06.859636    5917 nodeserver.go:122] NodePublishVolume: volume rg-backups-prod#stpabackupsprod#backups-prod mounting /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount at /var/lib/kubelet/pods/e25f0f5f-1027-4dc3-bc25-bb906fdee5e5/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount with mountOptions: [bind]
I0323 17:21:06.859651    5917 mount_linux.go:219] Mounting cmd (mount) with arguments ( -o bind /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount /var/lib/kubelet/pods/e25f0f5f-1027-4dc3-bc25-bb906fdee5e5/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount)
I0323 17:21:06.860741    5917 mount_linux.go:219] Mounting cmd (mount) with arguments ( -o bind,remount /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount /var/lib/kubelet/pods/e25f0f5f-1027-4dc3-bc25-bb906fdee5e5/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount)
I0323 17:21:06.861609    5917 nodeserver.go:138] NodePublishVolume: volume rg-backups-prod#stpabackupsprod#backups-prod mount /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount at /var/lib/kubelet/pods/e25f0f5f-1027-4dc3-bc25-bb906fdee5e5/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount successfully
I0323 17:21:06.861619    5917 utils.go:82] GRPC response: {}





I0323 17:22:34.743930    5917 utils.go:75] GRPC call: /csi.v1.Node/NodePublishVolume
I0323 17:22:34.743942    5917 utils.go:76] GRPC request: {"staging_target_path":"/var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount","target_path":"/var/lib/kubelet/pods/ced5f698-8b9a-4f2c-ab2d-7896f9bcd4ed/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount","volume_capability":{"AccessType":{"Mount":{"mount_flags":["-o allow_other","--file-cache-timeout-in-seconds=120","--use-attr-cache=true","--cancel-list-on-mount-seconds=5","-o attr_timeout=120","-o entry_timeout=120","-o negative_timeout=120","--log-level=LOG_DEBUG","--cache-size-mb=1000","--virtual-directory=true"]}},"access_mode":{"mode":3}},"volume_context":{"containerName":"backups-prod","csi.storage.k8s.io/ephemeral":"false","csi.storage.k8s.io/pod.name":"orientdbservice-58c79ffb79-9r5cp","csi.storage.k8s.io/pod.namespace":"pa-data-services","csi.storage.k8s.io/pod.uid":"ced5f698-8b9a-4f2c-ab2d-7896f9bcd4ed","csi.storage.k8s.io/serviceAccount.name":"default","protocol":"fuse2","resourceGroup":"rg-backups-prod","storageAccount":"stpabackupsprod"},"volume_id":"rg-backups-prod#stpabackupsprod#backups-prod"}
I0323 17:22:34.744362    5917 nodeserver.go:122] NodePublishVolume: volume rg-backups-prod#stpabackupsprod#backups-prod mounting /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount at /var/lib/kubelet/pods/ced5f698-8b9a-4f2c-ab2d-7896f9bcd4ed/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount with mountOptions: [bind]
I0323 17:22:34.744400    5917 mount_linux.go:219] Mounting cmd (mount) with arguments ( -o bind /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount /var/lib/kubelet/pods/ced5f698-8b9a-4f2c-ab2d-7896f9bcd4ed/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount)
I0323 17:22:34.745739    5917 mount_linux.go:219] Mounting cmd (mount) with arguments ( -o bind,remount /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount /var/lib/kubelet/pods/ced5f698-8b9a-4f2c-ab2d-7896f9bcd4ed/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount)
I0323 17:22:34.746746    5917 nodeserver.go:138] NodePublishVolume: volume rg-backups-prod#stpabackupsprod#backups-prod mount /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount at /var/lib/kubelet/pods/ced5f698-8b9a-4f2c-ab2d-7896f9bcd4ed/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount successfully
I0323 17:22:34.746763    5917 utils.go:82] GRPC response: {}
I0323 17:22:36.253015    5917 utils.go:75] GRPC call: /csi.v1.Node/NodeUnpublishVolume
I0323 17:22:36.253073    5917 utils.go:76] GRPC request: {"target_path":"/var/lib/kubelet/pods/e25f0f5f-1027-4dc3-bc25-bb906fdee5e5/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount","volume_id":"rg-backups-prod#stpabackupsprod#backups-prod"}
I0323 17:22:36.253134    5917 nodeserver.go:203] NodeUnpublishVolume: unmounting volume rg-backups-prod#stpabackupsprod#backups-prod on /var/lib/kubelet/pods/e25f0f5f-1027-4dc3-bc25-bb906fdee5e5/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount
I0323 17:22:36.253151    5917 mount_helper_common.go:93] unmounting "/var/lib/kubelet/pods/e25f0f5f-1027-4dc3-bc25-bb906fdee5e5/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount" (corruptedMount: false, mounterCanSkipMountPointChecks: true)
I0323 17:22:36.253161    5917 mount_linux.go:361] Unmounting /var/lib/kubelet/pods/e25f0f5f-1027-4dc3-bc25-bb906fdee5e5/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount
I0323 17:22:36.255379    5917 mount_helper_common.go:150] Warning: deleting path "/var/lib/kubelet/pods/e25f0f5f-1027-4dc3-bc25-bb906fdee5e5/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount"
I0323 17:22:36.255442    5917 nodeserver.go:208] NodeUnpublishVolume: unmount volume rg-backups-prod#stpabackupsprod#backups-prod on /var/lib/kubelet/pods/e25f0f5f-1027-4dc3-bc25-bb906fdee5e5/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount successfully
I0323 17:22:36.255453    5917 utils.go:82] GRPC response: {}





I0323 17:23:23.927984    5917 utils.go:75] GRPC call: /csi.v1.Node/NodePublishVolume
I0323 17:23:23.928001    5917 utils.go:76] GRPC request: {"staging_target_path":"/var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount","target_path":"/var/lib/kubelet/pods/43e2afd8-7973-4fc4-9136-17855d409f9b/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount","volume_capability":{"AccessType":{"Mount":{"mount_flags":["-o allow_other","--file-cache-timeout-in-seconds=120","--use-attr-cache=true","--cancel-list-on-mount-seconds=5","-o attr_timeout=120","-o entry_timeout=120","-o negative_timeout=120","--log-level=LOG_DEBUG","--cache-size-mb=1000","--virtual-directory=true"]}},"access_mode":{"mode":3}},"volume_context":{"containerName":"backups-prod","csi.storage.k8s.io/ephemeral":"false","csi.storage.k8s.io/pod.name":"orientdbservice-58c79ffb79-n9zqv","csi.storage.k8s.io/pod.namespace":"pa-data-services","csi.storage.k8s.io/pod.uid":"43e2afd8-7973-4fc4-9136-17855d409f9b","csi.storage.k8s.io/serviceAccount.name":"default","protocol":"fuse2","resourceGroup":"rg-backups-prod","storageAccount":"stpabackupsprod"},"volume_id":"rg-backups-prod#stpabackupsprod#backups-prod"}
I0323 17:23:23.928461    5917 nodeserver.go:122] NodePublishVolume: volume rg-backups-prod#stpabackupsprod#backups-prod mounting /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount at /var/lib/kubelet/pods/43e2afd8-7973-4fc4-9136-17855d409f9b/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount with mountOptions: [bind]
I0323 17:23:23.928486    5917 mount_linux.go:219] Mounting cmd (mount) with arguments ( -o bind /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount /var/lib/kubelet/pods/43e2afd8-7973-4fc4-9136-17855d409f9b/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount)
I0323 17:23:23.929710    5917 mount_linux.go:219] Mounting cmd (mount) with arguments ( -o bind,remount /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount /var/lib/kubelet/pods/43e2afd8-7973-4fc4-9136-17855d409f9b/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount)
I0323 17:23:23.930783    5917 nodeserver.go:138] NodePublishVolume: volume rg-backups-prod#stpabackupsprod#backups-prod mount /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount at /var/lib/kubelet/pods/43e2afd8-7973-4fc4-9136-17855d409f9b/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount successfully
I0323 17:23:23.930803    5917 utils.go:82] GRPC response: {}
I0323 17:23:25.134756    5917 utils.go:75] GRPC call: /csi.v1.Node/NodeUnpublishVolume
I0323 17:23:25.135162    5917 utils.go:76] GRPC request: {"target_path":"/var/lib/kubelet/pods/ced5f698-8b9a-4f2c-ab2d-7896f9bcd4ed/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount","volume_id":"rg-backups-prod#stpabackupsprod#backups-prod"}
I0323 17:23:25.135288    5917 nodeserver.go:203] NodeUnpublishVolume: unmounting volume rg-backups-prod#stpabackupsprod#backups-prod on /var/lib/kubelet/pods/ced5f698-8b9a-4f2c-ab2d-7896f9bcd4ed/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount
I0323 17:23:25.135316    5917 mount_helper_common.go:93] unmounting "/var/lib/kubelet/pods/ced5f698-8b9a-4f2c-ab2d-7896f9bcd4ed/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount" (corruptedMount: false, mounterCanSkipMountPointChecks: true)
I0323 17:23:25.135335    5917 mount_linux.go:361] Unmounting /var/lib/kubelet/pods/ced5f698-8b9a-4f2c-ab2d-7896f9bcd4ed/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount
I0323 17:23:25.137375    5917 mount_helper_common.go:150] Warning: deleting path "/var/lib/kubelet/pods/ced5f698-8b9a-4f2c-ab2d-7896f9bcd4ed/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount"
I0323 17:23:25.137468    5917 nodeserver.go:208] NodeUnpublishVolume: unmount volume rg-backups-prod#stpabackupsprod#backups-prod on /var/lib/kubelet/pods/ced5f698-8b9a-4f2c-ab2d-7896f9bcd4ed/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount successfully
I0323 17:23:25.137480    5917 utils.go:82] GRPC response: {}
I0323 17:24:18.535154    5917 utils.go:75] GRPC call: /csi.v1.Node/NodePublishVolume
I0323 17:24:18.535166    5917 utils.go:76] GRPC request: {"staging_target_path":"/var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount","target_path":"/var/lib/kubelet/pods/a406cc56-4df3-432c-ba71-7b95f0786597/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount","volume_capability":{"AccessType":{"Mount":{"mount_flags":["-o allow_other","--file-cache-timeout-in-seconds=120","--use-attr-cache=true","--cancel-list-on-mount-seconds=5","-o attr_timeout=120","-o entry_timeout=120","-o negative_timeout=120","--log-level=LOG_DEBUG","--cache-size-mb=1000","--virtual-directory=true"]}},"access_mode":{"mode":3}},"volume_context":{"containerName":"backups-prod","csi.storage.k8s.io/ephemeral":"false","csi.storage.k8s.io/pod.name":"orientdbservice-58c79ffb79-qnhzt","csi.storage.k8s.io/pod.namespace":"pa-data-services","csi.storage.k8s.io/pod.uid":"a406cc56-4df3-432c-ba71-7b95f0786597","csi.storage.k8s.io/serviceAccount.name":"default","protocol":"fuse2","resourceGroup":"rg-backups-prod","storageAccount":"stpabackupsprod"},"volume_id":"rg-backups-prod#stpabackupsprod#backups-prod"}
I0323 17:24:18.535564    5917 nodeserver.go:122] NodePublishVolume: volume rg-backups-prod#stpabackupsprod#backups-prod mounting /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount at /var/lib/kubelet/pods/a406cc56-4df3-432c-ba71-7b95f0786597/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount with mountOptions: [bind]
I0323 17:24:18.535579    5917 mount_linux.go:219] Mounting cmd (mount) with arguments ( -o bind /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount /var/lib/kubelet/pods/a406cc56-4df3-432c-ba71-7b95f0786597/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount)
I0323 17:24:18.536922    5917 mount_linux.go:219] Mounting cmd (mount) with arguments ( -o bind,remount /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount /var/lib/kubelet/pods/a406cc56-4df3-432c-ba71-7b95f0786597/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount)
I0323 17:24:18.537909    5917 nodeserver.go:138] NodePublishVolume: volume rg-backups-prod#stpabackupsprod#backups-prod mount /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount at /var/lib/kubelet/pods/a406cc56-4df3-432c-ba71-7b95f0786597/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount successfully
I0323 17:24:18.537921    5917 utils.go:82] GRPC response: {}
I0323 17:24:19.741693    5917 utils.go:75] GRPC call: /csi.v1.Node/NodeUnpublishVolume
I0323 17:24:19.741710    5917 utils.go:76] GRPC request: {"target_path":"/var/lib/kubelet/pods/43e2afd8-7973-4fc4-9136-17855d409f9b/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount","volume_id":"rg-backups-prod#stpabackupsprod#backups-prod"}
I0323 17:24:19.741755    5917 nodeserver.go:203] NodeUnpublishVolume: unmounting volume rg-backups-prod#stpabackupsprod#backups-prod on /var/lib/kubelet/pods/43e2afd8-7973-4fc4-9136-17855d409f9b/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount
I0323 17:24:19.741773    5917 mount_helper_common.go:93] unmounting "/var/lib/kubelet/pods/43e2afd8-7973-4fc4-9136-17855d409f9b/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount" (corruptedMount: false, mounterCanSkipMountPointChecks: true)
I0323 17:24:19.741783    5917 mount_linux.go:361] Unmounting /var/lib/kubelet/pods/43e2afd8-7973-4fc4-9136-17855d409f9b/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount
I0323 17:24:19.774871    5917 mount_helper_common.go:150] Warning: deleting path "/var/lib/kubelet/pods/43e2afd8-7973-4fc4-9136-17855d409f9b/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount"
I0323 17:24:19.774964    5917 nodeserver.go:208] NodeUnpublishVolume: unmount volume rg-backups-prod#stpabackupsprod#backups-prod on /var/lib/kubelet/pods/43e2afd8-7973-4fc4-9136-17855d409f9b/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount successfully
I0323 17:24:19.774975    5917 utils.go:82] GRPC response: {}




I0323 17:25:41.801888    5917 utils.go:75] GRPC call: /csi.v1.Node/NodePublishVolume
I0323 17:25:41.801901    5917 utils.go:76] GRPC request: {"staging_target_path":"/var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount","target_path":"/var/lib/kubelet/pods/34a079a8-9e45-40b8-a38b-47cf2cd673fb/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount","volume_capability":{"AccessType":{"Mount":{"mount_flags":["-o allow_other","--file-cache-timeout-in-seconds=120","--use-attr-cache=true","--cancel-list-on-mount-seconds=5","-o attr_timeout=120","-o entry_timeout=120","-o negative_timeout=120","--log-level=LOG_DEBUG","--cache-size-mb=1000","--virtual-directory=true"]}},"access_mode":{"mode":3}},"volume_context":{"containerName":"backups-prod","csi.storage.k8s.io/ephemeral":"false","csi.storage.k8s.io/pod.name":"orientdbservice-58c79ffb79-cbssg","csi.storage.k8s.io/pod.namespace":"pa-data-services","csi.storage.k8s.io/pod.uid":"34a079a8-9e45-40b8-a38b-47cf2cd673fb","csi.storage.k8s.io/serviceAccount.name":"default","protocol":"fuse2","resourceGroup":"rg-backups-prod","storageAccount":"stpabackupsprod"},"volume_id":"rg-backups-prod#stpabackupsprod#backups-prod"}
I0323 17:25:41.802281    5917 nodeserver.go:122] NodePublishVolume: volume rg-backups-prod#stpabackupsprod#backups-prod mounting /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount at /var/lib/kubelet/pods/34a079a8-9e45-40b8-a38b-47cf2cd673fb/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount with mountOptions: [bind]
I0323 17:25:41.802297    5917 mount_linux.go:219] Mounting cmd (mount) with arguments ( -o bind /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount /var/lib/kubelet/pods/34a079a8-9e45-40b8-a38b-47cf2cd673fb/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount)
I0323 17:25:41.803521    5917 mount_linux.go:219] Mounting cmd (mount) with arguments ( -o bind,remount /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount /var/lib/kubelet/pods/34a079a8-9e45-40b8-a38b-47cf2cd673fb/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount)
I0323 17:25:41.804503    5917 nodeserver.go:138] NodePublishVolume: volume rg-backups-prod#stpabackupsprod#backups-prod mount /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/a827afe57ea9da516011d9c85fceef41165a4bda0ace1d794dbb683b93ddd556/globalmount at /var/lib/kubelet/pods/34a079a8-9e45-40b8-a38b-47cf2cd673fb/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount successfully
I0323 17:25:41.804515    5917 utils.go:82] GRPC response: {}
I0323 17:25:43.107920    5917 utils.go:75] GRPC call: /csi.v1.Node/NodeUnpublishVolume
I0323 17:25:43.108075    5917 utils.go:76] GRPC request: {"target_path":"/var/lib/kubelet/pods/a406cc56-4df3-432c-ba71-7b95f0786597/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount","volume_id":"rg-backups-prod#stpabackupsprod#backups-prod"}
I0323 17:25:43.108167    5917 nodeserver.go:203] NodeUnpublishVolume: unmounting volume rg-backups-prod#stpabackupsprod#backups-prod on /var/lib/kubelet/pods/a406cc56-4df3-432c-ba71-7b95f0786597/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount
I0323 17:25:43.108216    5917 mount_helper_common.go:93] unmounting "/var/lib/kubelet/pods/a406cc56-4df3-432c-ba71-7b95f0786597/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount" (corruptedMount: false, mounterCanSkipMountPointChecks: true)
I0323 17:25:43.108247    5917 mount_linux.go:361] Unmounting /var/lib/kubelet/pods/a406cc56-4df3-432c-ba71-7b95f0786597/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount
I0323 17:25:43.114662    5917 mount_helper_common.go:150] Warning: deleting path "/var/lib/kubelet/pods/a406cc56-4df3-432c-ba71-7b95f0786597/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount"
I0323 17:25:43.114755    5917 nodeserver.go:208] NodeUnpublishVolume: unmount volume rg-backups-prod#stpabackupsprod#backups-prod on /var/lib/kubelet/pods/a406cc56-4df3-432c-ba71-7b95f0786597/volumes/kubernetes.io~csi/pv-stpabackupsprod-blob-container/mount successfully
I0323 17:25:43.114769    5917 utils.go:82] GRPC response: {}

@vibhansa-msft
Copy link
Member

Great !!!

@kumaaaah
Copy link
Author

Thank you for all your help.
Our AKS can work with blobfuse2 now!

@kvet
Copy link

kvet commented Apr 14, 2023

Hi. Our team is experiencing the same issue with blobfuse2 on AKS 1.24.10. We have enabled managed blob-csi driver and its version is v1.19.2. The following error is produced during unmount:

mount_helper_common.go:150] Warning: deleting path "/var/lib/kubelet/pods/ab292926-4f67-43cb-a848-7ed8feeaa482/volumes/kubernetes.io~csi/bundle-reports-volume/mount"
utils.go:80] GRPC error: rpc error: code = Internal desc = failed to unmount target "/var/lib/kubelet/pods/ab292926-4f67-43cb-a848-7ed8feeaa482/volumes/kubernetes.io~csi/bundle-reports-volume/mount": remove /var/lib/kubelet/pods/ab292926-4f67-43cb-a848-7ed8feeaa482/volumes/kubernetes.io~csi/bundle-reports-volume/mount: device or resource busy
utils.go:75] GRPC call: /csi.v1.Node/NodeUnpublishVolume

From the discussion above I understood that the fix landed in v1.19.2 and deployed to managed blob-csi drivers with the 0319 release (which is deployed to our location West Europe). Is it expected behaviour?

@andyzhangx
Copy link
Contributor

Hi. Our team is experiencing the same issue with blobfuse2 on AKS 1.24.10. We have enabled managed blob-csi driver and its version is v1.19.2. The following error is produced during unmount:

mount_helper_common.go:150] Warning: deleting path "/var/lib/kubelet/pods/ab292926-4f67-43cb-a848-7ed8feeaa482/volumes/kubernetes.io~csi/bundle-reports-volume/mount"
utils.go:80] GRPC error: rpc error: code = Internal desc = failed to unmount target "/var/lib/kubelet/pods/ab292926-4f67-43cb-a848-7ed8feeaa482/volumes/kubernetes.io~csi/bundle-reports-volume/mount": remove /var/lib/kubelet/pods/ab292926-4f67-43cb-a848-7ed8feeaa482/volumes/kubernetes.io~csi/bundle-reports-volume/mount: device or resource busy
utils.go:75] GRPC call: /csi.v1.Node/NodeUnpublishVolume

From the discussion above I understood that the fix landed in v1.19.2 and deployed to managed blob-csi drivers with the 0319 release (which is deployed to our location West Europe). Is it expected behaviour?

@kvet this could be different issue, during the unmount, you application would receive SIGTERM signal, and then application should stop writing data to blobfuse volume first, and then unmount would succeed. You could set preStop hook to terminiate the application when it receives SIGTERM signal from kubernetes

@andyzhangx
Copy link
Contributor

@kvet to make sure whether your blobfuse2 mount is affected since the bug is in v1.19.1, and if your blobfuse2 mount was using v1.19.1 (happened before v1.19.2 rollout), then it may have issue. I think you could schedule your pods with blobfuse2 volume to new node or node without any blobfuse2 volume mount, that could make sure the original blobfuse2 mount is always using v1.19.2, hope that answers your question.

@kvet
Copy link

kvet commented Apr 14, 2023

@andyzhangx I don't think it's related to the writing as I am mounting the PV with read-only access... But even in the case of an ongoing write to the volume, it still makes sense that the driver manages to properly handle it. With blobfuse1 we are not experiencing similar issues.

About what is exactly happening. On a fresh node, the driver allows mounting the volume once. I can list connected drives with df -h during that first mount and get the desired blobfuse2 mount. On subsequent mounts, I no longer see the mounted drive. But I can see with the mount command: /dev/sda1 on /mnt/bundle-reports type ext4 (ro,relatime,discard).

Logs from the first mount. During the period the volume was mounted, there was access to the storage container and `df -h` returned a `blobfuse2` mount.
I0413 10:16:36.334828    7369 utils.go:75] GRPC call: /csi.v1.Node/NodeStageVolume
I0413 10:16:36.334844    7369 utils.go:76] GRPC request: {"secrets":"***stripped***","staging_target_path":"/var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/244a63d20804f80d4ced5a3b49541134bb20325e65864c3b9242abc52ff172d9/globalmount","volume_capability":{"AccessType":{"Mount":{"mount_flags":["-o allow_other","-o ro","--virtual-directory=true","--log-level=LOG_DEBUG"]}},"access_mode":{"mode":3}},"volume_context":{"AzureStorageAuthType":"spn","AzureStorageSPNClientID":"***stripped***","AzureStorageSPNTenantID":"***stripped***","containerName":"frontend-bundle-reports","protocol":"fuse2","storageAccount":"strippedaccount"},"volume_id":"strippedaccount#bundle-reports#handle1"}
I0413 10:16:36.335465    7369 blob.go:416] volumeID(strippedaccount#bundle-reports#handle1) authEnv: [AZURE_STORAGE_AUTH_TYPE=spn AZURE_STORAGE_SPN_CLIENT_ID=***stripped*** AZURE_STORAGE_SPN_TENANT_ID=***stripped***]
I0413 10:16:36.335513    7369 nodeserver.go:353] target /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/244a63d20804f80d4ced5a3b49541134bb20325e65864c3b9242abc52ff172d9/globalmount
protocol fuse2
volumeId strippedaccount#bundle-reports#handle1
context map[AzureStorageAuthType:spn AzureStorageSPNClientID:***stripped*** AzureStorageSPNTenantID:***stripped*** containerName:frontend-bundle-reports protocol:fuse2 storageAccount:strippedaccount]
mountflags [-o allow_other -o ro --virtual-directory=true --log-level=LOG_DEBUG]
mountOptions [-o allow_other -o ro --virtual-directory=true --log-level=LOG_DEBUG --pre-mount-validate=true --use-https=true --cancel-list-on-mount-seconds=10 --empty-dir-check=false --tmp-path=/mnt/strippedaccount#bundle-reports#handle1 --container-name=frontend-bundle-reports]
args /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/244a63d20804f80d4ced5a3b49541134bb20325e65864c3b9242abc52ff172d9/globalmount -o allow_other -o ro --virtual-directory=true --log-level=LOG_DEBUG --pre-mount-validate=true --use-https=true --cancel-list-on-mount-seconds=10 --empty-dir-check=false --tmp-path=/mnt/strippedaccount#bundle-reports#handle1 --container-name=frontend-bundle-reports
serverAddress strippedaccount.blob.core.windows.net
I0413 10:16:36.335534    7369 nodeserver.go:144] mouting using blobfuse proxy
I0413 10:16:36.337000    7369 nodeserver.go:158] calling BlobfuseProxy: MountAzureBlob function
I0413 10:16:54.750362    7369 nodeserver.go:401] volume(strippedaccount#bundle-reports#handle1) mount on "/var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/244a63d20804f80d4ced5a3b49541134bb20325e65864c3b9242abc52ff172d9/globalmount" succeeded
I0413 10:16:54.750402    7369 utils.go:82] GRPC response: {}
I0413 10:16:54.752653    7369 utils.go:75] GRPC call: /csi.v1.Node/NodePublishVolume
I0413 10:16:54.752663    7369 utils.go:76] GRPC request: {"readonly":true,"staging_target_path":"/var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/244a63d20804f80d4ced5a3b49541134bb20325e65864c3b9242abc52ff172d9/globalmount","target_path":"/var/lib/kubelet/pods/ab292926-4f67-43cb-a848-7ed8feeaa482/volumes/kubernetes.io~csi/bundle-reports-volume/mount","volume_capability":{"AccessType":{"Mount":{"mount_flags":["-o allow_other","-o ro","--virtual-directory=true","--log-level=LOG_DEBUG"]}},"access_mode":{"mode":3}},"volume_context":{"AzureStorageAuthType":"spn","AzureStorageSPNClientID":"***stripped***","AzureStorageSPNTenantID":"***stripped***","containerName":"frontend-bundle-reports","csi.storage.k8s.io/ephemeral":"false","csi.storage.k8s.io/pod.name":"nginx-proxy-7cb9d755f8-sr84r","csi.storage.k8s.io/pod.namespace":"frontend-static","csi.storage.k8s.io/pod.uid":"ab292926-4f67-43cb-a848-7ed8feeaa482","csi.storage.k8s.io/serviceAccount.name":"default","protocol":"fuse2","storageAccount":"strippedaccount"},"volume_id":"strippedaccount#bundle-reports#handle1"}
I0413 10:16:54.753271    7369 nodeserver.go:122] NodePublishVolume: volume strippedaccount#bundle-reports#handle1 mounting /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/244a63d20804f80d4ced5a3b49541134bb20325e65864c3b9242abc52ff172d9/globalmount at /var/lib/kubelet/pods/ab292926-4f67-43cb-a848-7ed8feeaa482/volumes/kubernetes.io~csi/bundle-reports-volume/mount with mountOptions: [bind ro]
I0413 10:16:54.753364    7369 mount_linux.go:244] Detected OS without systemd
I0413 10:16:54.753373    7369 mount_linux.go:219] Mounting cmd (mount) with arguments ( -o bind /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/244a63d20804f80d4ced5a3b49541134bb20325e65864c3b9242abc52ff172d9/globalmount /var/lib/kubelet/pods/ab292926-4f67-43cb-a848-7ed8feeaa482/volumes/kubernetes.io~csi/bundle-reports-volume/mount)
I0413 10:16:54.759667    7369 mount_linux.go:219] Mounting cmd (mount) with arguments ( -o bind,remount,ro /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/244a63d20804f80d4ced5a3b49541134bb20325e65864c3b9242abc52ff172d9/globalmount /var/lib/kubelet/pods/ab292926-4f67-43cb-a848-7ed8feeaa482/volumes/kubernetes.io~csi/bundle-reports-volume/mount)
I0413 10:16:54.760997    7369 nodeserver.go:138] NodePublishVolume: volume strippedaccount#bundle-reports#handle1 mount /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/244a63d20804f80d4ced5a3b49541134bb20325e65864c3b9242abc52ff172d9/globalmount at /var/lib/kubelet/pods/ab292926-4f67-43cb-a848-7ed8feeaa482/volumes/kubernetes.io~csi/bundle-reports-volume/mount successfully
I0413 10:16:54.761008    7369 utils.go:82] GRPC response: {}
I0413 16:14:20.885328    7369 utils.go:75] GRPC call: /csi.v1.Node/NodeUnpublishVolume
I0413 16:14:20.885343    7369 utils.go:76] GRPC request: {"target_path":"/var/lib/kubelet/pods/ab292926-4f67-43cb-a848-7ed8feeaa482/volumes/kubernetes.io~csi/bundle-reports-volume/mount","volume_id":"strippedaccount#bundle-reports#handle1"}
I0413 16:14:20.885415    7369 nodeserver.go:203] NodeUnpublishVolume: unmounting volume strippedaccount#bundle-reports#handle1 on /var/lib/kubelet/pods/ab292926-4f67-43cb-a848-7ed8feeaa482/volumes/kubernetes.io~csi/bundle-reports-volume/mount
I0413 16:14:20.885502    7369 mount_helper_common.go:93] unmounting "/var/lib/kubelet/pods/ab292926-4f67-43cb-a848-7ed8feeaa482/volumes/kubernetes.io~csi/bundle-reports-volume/mount" (corruptedMount: false, mounterCanSkipMountPointChecks: true)
I0413 16:14:20.885521    7369 mount_linux.go:361] Unmounting /var/lib/kubelet/pods/ab292926-4f67-43cb-a848-7ed8feeaa482/volumes/kubernetes.io~csi/bundle-reports-volume/mount
I0413 16:14:20.890959    7369 mount_helper_common.go:150] Warning: deleting path "/var/lib/kubelet/pods/ab292926-4f67-43cb-a848-7ed8feeaa482/volumes/kubernetes.io~csi/bundle-reports-volume/mount"
E0413 16:14:20.891002    7369 utils.go:80] GRPC error: rpc error: code = Internal desc = failed to unmount target "/var/lib/kubelet/pods/ab292926-4f67-43cb-a848-7ed8feeaa482/volumes/kubernetes.io~csi/bundle-reports-volume/mount": remove /var/lib/kubelet/pods/ab292926-4f67-43cb-a848-7ed8feeaa482/volumes/kubernetes.io~csi/bundle-reports-volume/mount: device or resource busy
I0413 16:14:21.488335    7369 utils.go:75] GRPC call: /csi.v1.Node/NodeUnpublishVolume
I0413 16:14:21.488350    7369 utils.go:76] GRPC request: {"target_path":"/var/lib/kubelet/pods/ab292926-4f67-43cb-a848-7ed8feeaa482/volumes/kubernetes.io~csi/bundle-reports-volume/mount","volume_id":"strippedaccount#bundle-reports#handle1"}
I0413 16:14:21.488409    7369 nodeserver.go:203] NodeUnpublishVolume: unmounting volume strippedaccount#bundle-reports#handle1 on /var/lib/kubelet/pods/ab292926-4f67-43cb-a848-7ed8feeaa482/volumes/kubernetes.io~csi/bundle-reports-volume/mount
I0413 16:14:21.488429    7369 mount_helper_common.go:93] unmounting "/var/lib/kubelet/pods/ab292926-4f67-43cb-a848-7ed8feeaa482/volumes/kubernetes.io~csi/bundle-reports-volume/mount" (corruptedMount: false, mounterCanSkipMountPointChecks: true)
I0413 16:14:21.488442    7369 mount_linux.go:361] Unmounting /var/lib/kubelet/pods/ab292926-4f67-43cb-a848-7ed8feeaa482/volumes/kubernetes.io~csi/bundle-reports-volume/mount
I0413 16:14:21.489604    7369 mount_helper_common.go:150] Warning: deleting path "/var/lib/kubelet/pods/ab292926-4f67-43cb-a848-7ed8feeaa482/volumes/kubernetes.io~csi/bundle-reports-volume/mount"
I0413 16:14:21.489676    7369 nodeserver.go:208] NodeUnpublishVolume: unmount volume strippedaccount#bundle-reports#handle1 on /var/lib/kubelet/pods/ab292926-4f67-43cb-a848-7ed8feeaa482/volumes/kubernetes.io~csi/bundle-reports-volume/mount successfully
I0413 16:14:21.489693    7369 utils.go:82] GRPC response: {}
I0413 16:14:21.592340    7369 utils.go:75] GRPC call: /csi.v1.Node/NodeUnstageVolume
I0413 16:14:21.592358    7369 utils.go:76] GRPC request: {"staging_target_path":"/var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/244a63d20804f80d4ced5a3b49541134bb20325e65864c3b9242abc52ff172d9/globalmount","volume_id":"strippedaccount#bundle-reports#handle1"}
I0413 16:14:21.592410    7369 nodeserver.go:422] NodeUnstageVolume: volume strippedaccount#bundle-reports#handle1 unmounting on /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/244a63d20804f80d4ced5a3b49541134bb20325e65864c3b9242abc52ff172d9/globalmount
I0413 16:14:21.592423    7369 mount_helper_common.go:93] unmounting "/var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/244a63d20804f80d4ced5a3b49541134bb20325e65864c3b9242abc52ff172d9/globalmount" (corruptedMount: false, mounterCanSkipMountPointChecks: true)
I0413 16:14:21.592434    7369 mount_linux.go:361] Unmounting /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/244a63d20804f80d4ced5a3b49541134bb20325e65864c3b9242abc52ff172d9/globalmount
I0413 16:14:21.593536    7369 mount_linux.go:374] ignoring 'not mounted' error for /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/244a63d20804f80d4ced5a3b49541134bb20325e65864c3b9242abc52ff172d9/globalmount
I0413 16:14:21.593545    7369 mount_helper_common.go:150] Warning: deleting path "/var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/244a63d20804f80d4ced5a3b49541134bb20325e65864c3b9242abc52ff172d9/globalmount"
I0413 16:14:21.593600    7369 nodeserver.go:427] NodeUnstageVolume: volume strippedaccount#bundle-reports#handle1 unmount on /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/244a63d20804f80d4ced5a3b49541134bb20325e65864c3b9242abc52ff172d9/globalmount successfully
I0413 16:14:21.593607    7369 utils.go:82] GRPC response: {}
Logs from the second mount. Notice that they are almost the same, but the volume wasn't properly mounted to the container.
I0413 17:10:04.591130    7369 utils.go:76] GRPC request: {"secrets":"***stripped***","staging_target_path":"/var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount","volume_capability":{"AccessType":{"Mount":{"mount_flags":["-o ro","--virtual-directory=true","-o allow_other"]}},"access_mode":{"mode":3}},"volume_context":{"AzureStorageAuthType":"spn","AzureStorageSPNClientID":"***striped***","AzureStorageSPNTenantID":"***striped***","containerName":"frontend-bundle-reports","protocol":"fuse2","storageAccount":"strippedaccount"},"volume_id":"strippedaccount#bundle-reports#handle1"}
I0413 17:10:04.591538    7369 blob.go:416] volumeID(strippedaccount#bundle-reports#handle1) authEnv: [AZURE_STORAGE_SPN_CLIENT_ID=***striped*** AZURE_STORAGE_SPN_TENANT_ID=***striped*** AZURE_STORAGE_AUTH_TYPE=spn]
I0413 17:10:04.591566    7369 nodeserver.go:353] target /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount
protocol fuse2
volumeId strippedaccount#bundle-reports#handle1
context map[AzureStorageAuthType:spn AzureStorageSPNClientID:***striped*** AzureStorageSPNTenantID:***striped*** containerName:frontend-bundle-reports protocol:fuse2 storageAccount:strippedaccount]
mountflags [-o ro --virtual-directory=true -o allow_other]
mountOptions [-o ro --virtual-directory=true -o allow_other --container-name=frontend-bundle-reports --pre-mount-validate=true --use-https=true --cancel-list-on-mount-seconds=10 --empty-dir-check=false --tmp-path=/mnt/strippedaccount#bundle-reports#handle1]
args /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount -o ro --virtual-directory=true -o allow_other --container-name=frontend-bundle-reports --pre-mount-validate=true --use-https=true --cancel-list-on-mount-seconds=10 --empty-dir-check=false --tmp-path=/mnt/strippedaccount#bundle-reports#handle1
serverAddress strippedaccount.blob.core.windows.net
I0413 17:10:04.591581    7369 nodeserver.go:144] mouting using blobfuse proxy
I0413 17:10:04.591936    7369 nodeserver.go:158] calling BlobfuseProxy: MountAzureBlob function
I0413 17:10:22.489862    7369 nodeserver.go:401] volume(strippedaccount#bundle-reports#handle1) mount on "/var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount" succeeded
I0413 17:10:22.489891    7369 utils.go:82] GRPC response: {}
I0413 17:10:22.492586    7369 utils.go:75] GRPC call: /csi.v1.Node/NodePublishVolume
I0413 17:10:22.492599    7369 utils.go:76] GRPC request: {"readonly":true,"staging_target_path":"/var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount","target_path":"/var/lib/kubelet/pods/f4972de7-b4ef-4311-8ad7-efb967439871/volumes/kubernetes.io~csi/bundle-reports-volume/mount","volume_capability":{"AccessType":{"Mount":{"mount_flags":["-o ro","--virtual-directory=true","-o allow_other"]}},"access_mode":{"mode":3}},"volume_context":{"AzureStorageAuthType":"spn","AzureStorageSPNClientID":"***striped***","AzureStorageSPNTenantID":"***striped***","containerName":"frontend-bundle-reports","csi.storage.k8s.io/ephemeral":"false","csi.storage.k8s.io/pod.name":"nginx-proxy-8f6dc6994-hff95","csi.storage.k8s.io/pod.namespace":"frontend-static","csi.storage.k8s.io/pod.uid":"f4972de7-b4ef-4311-8ad7-efb967439871","csi.storage.k8s.io/serviceAccount.name":"default","protocol":"fuse2","storageAccount":"strippedaccount"},"volume_id":"strippedaccount#bundle-reports#handle1"}
I0413 17:10:22.493112    7369 nodeserver.go:122] NodePublishVolume: volume strippedaccount#bundle-reports#handle1 mounting /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount at /var/lib/kubelet/pods/f4972de7-b4ef-4311-8ad7-efb967439871/volumes/kubernetes.io~csi/bundle-reports-volume/mount with mountOptions: [bind ro]
I0413 17:10:22.493140    7369 mount_linux.go:219] Mounting cmd (mount) with arguments ( -o bind /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount /var/lib/kubelet/pods/f4972de7-b4ef-4311-8ad7-efb967439871/volumes/kubernetes.io~csi/bundle-reports-volume/mount)
I0413 17:10:22.494351    7369 mount_linux.go:219] Mounting cmd (mount) with arguments ( -o bind,remount,ro /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount /var/lib/kubelet/pods/f4972de7-b4ef-4311-8ad7-efb967439871/volumes/kubernetes.io~csi/bundle-reports-volume/mount)
I0413 17:10:22.495400    7369 nodeserver.go:138] NodePublishVolume: volume strippedaccount#bundle-reports#handle1 mount /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount at /var/lib/kubelet/pods/f4972de7-b4ef-4311-8ad7-efb967439871/volumes/kubernetes.io~csi/bundle-reports-volume/mount successfully
I0413 17:10:22.495417    7369 utils.go:82] GRPC response: {}
I0413 17:19:13.981000    7369 utils.go:75] GRPC call: /csi.v1.Node/NodeUnpublishVolume
I0413 17:19:13.981018    7369 utils.go:76] GRPC request: {"target_path":"/var/lib/kubelet/pods/f4972de7-b4ef-4311-8ad7-efb967439871/volumes/kubernetes.io~csi/bundle-reports-volume/mount","volume_id":"strippedaccount#bundle-reports#handle1"}
I0413 17:19:13.981078    7369 nodeserver.go:203] NodeUnpublishVolume: unmounting volume strippedaccount#bundle-reports#handle1 on /var/lib/kubelet/pods/f4972de7-b4ef-4311-8ad7-efb967439871/volumes/kubernetes.io~csi/bundle-reports-volume/mount
I0413 17:19:13.981160    7369 mount_helper_common.go:93] unmounting "/var/lib/kubelet/pods/f4972de7-b4ef-4311-8ad7-efb967439871/volumes/kubernetes.io~csi/bundle-reports-volume/mount" (corruptedMount: false, mounterCanSkipMountPointChecks: true)
I0413 17:19:13.981171    7369 mount_linux.go:361] Unmounting /var/lib/kubelet/pods/f4972de7-b4ef-4311-8ad7-efb967439871/volumes/kubernetes.io~csi/bundle-reports-volume/mount
I0413 17:19:13.982622    7369 mount_helper_common.go:150] Warning: deleting path "/var/lib/kubelet/pods/f4972de7-b4ef-4311-8ad7-efb967439871/volumes/kubernetes.io~csi/bundle-reports-volume/mount"
E0413 17:19:13.982672    7369 utils.go:80] GRPC error: rpc error: code = Internal desc = failed to unmount target "/var/lib/kubelet/pods/f4972de7-b4ef-4311-8ad7-efb967439871/volumes/kubernetes.io~csi/bundle-reports-volume/mount": remove /var/lib/kubelet/pods/f4972de7-b4ef-4311-8ad7-efb967439871/volumes/kubernetes.io~csi/bundle-reports-volume/mount: device or resource busy
I0413 17:19:14.485253    7369 utils.go:75] GRPC call: /csi.v1.Node/NodeUnpublishVolume
I0413 17:19:14.485268    7369 utils.go:76] GRPC request: {"target_path":"/var/lib/kubelet/pods/f4972de7-b4ef-4311-8ad7-efb967439871/volumes/kubernetes.io~csi/bundle-reports-volume/mount","volume_id":"strippedaccount#bundle-reports#handle1"}
I0413 17:19:14.485344    7369 nodeserver.go:203] NodeUnpublishVolume: unmounting volume strippedaccount#bundle-reports#handle1 on /var/lib/kubelet/pods/f4972de7-b4ef-4311-8ad7-efb967439871/volumes/kubernetes.io~csi/bundle-reports-volume/mount
I0413 17:19:14.485359    7369 mount_helper_common.go:93] unmounting "/var/lib/kubelet/pods/f4972de7-b4ef-4311-8ad7-efb967439871/volumes/kubernetes.io~csi/bundle-reports-volume/mount" (corruptedMount: false, mounterCanSkipMountPointChecks: true)
I0413 17:19:14.485372    7369 mount_linux.go:361] Unmounting /var/lib/kubelet/pods/f4972de7-b4ef-4311-8ad7-efb967439871/volumes/kubernetes.io~csi/bundle-reports-volume/mount
I0413 17:19:14.486663    7369 mount_helper_common.go:150] Warning: deleting path "/var/lib/kubelet/pods/f4972de7-b4ef-4311-8ad7-efb967439871/volumes/kubernetes.io~csi/bundle-reports-volume/mount"
I0413 17:19:14.486728    7369 nodeserver.go:208] NodeUnpublishVolume: unmount volume strippedaccount#bundle-reports#handle1 on /var/lib/kubelet/pods/f4972de7-b4ef-4311-8ad7-efb967439871/volumes/kubernetes.io~csi/bundle-reports-volume/mount successfully
I0413 17:19:14.486743    7369 utils.go:82] GRPC response: {}
I0413 17:19:14.588959    7369 utils.go:75] GRPC call: /csi.v1.Node/NodeUnstageVolume
I0413 17:19:14.588973    7369 utils.go:76] GRPC request: {"staging_target_path":"/var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount","volume_id":"strippedaccount#bundle-reports#handle1"}
I0413 17:19:14.589042    7369 nodeserver.go:422] NodeUnstageVolume: volume strippedaccount#bundle-reports#handle1 unmounting on /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount
I0413 17:19:14.589055    7369 mount_helper_common.go:93] unmounting "/var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount" (corruptedMount: false, mounterCanSkipMountPointChecks: true)
I0413 17:19:14.589069    7369 mount_linux.go:361] Unmounting /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount
I0413 17:19:14.590061    7369 mount_linux.go:374] ignoring 'not mounted' error for /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount
I0413 17:19:14.590071    7369 mount_helper_common.go:150] Warning: deleting path "/var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount"
I0413 17:19:14.590116    7369 nodeserver.go:427] NodeUnstageVolume: volume strippedaccount#bundle-reports#handle1 unmount on /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount successfully
I0413 17:19:14.590121    7369 utils.go:82] GRPC response: {}
blobfuse2 logs
Apr 13 10:16:42 blobfuse2[1439817]: LOG_WARNING [mount.go (364)]: mount: unsupported v1 CLI parameter: pre-mount-validate is always true in blobfuse2.
Apr 13 10:16:42 blobfuse2[1439817]: LOG_CRIT [mount.go (384)]: Starting Blobfuse2 Mount : 2.0.2 on [Ubuntu 18.04.6 LTS]
Apr 13 10:16:42 blobfuse2[1439817]: LOG_CRIT [mount.go (385)]: Logging level set to : LOG_DEBUG
Apr 13 10:16:42 blobfuse2[1439817]: LOG_TRACE [libfuse.go (220)]: Libfuse::Configure : libfuse
Apr 13 10:16:42 blobfuse2[1439817]: LOG_INFO [libfuse.go (260)]: Libfuse::Configure : read-only true, allow-other true, default-perm 511, entry-timeout 120, attr-time 120, negative-timeout 120, ignore-open-flags: true, nonempty false
Apr 13 10:16:42 blobfuse2[1439817]: LOG_TRACE [file_cache.go (197)]: FileCache::Configure : file_cache
Apr 13 10:16:42 blobfuse2[1439817]: LOG_ERR [file_cache.go (239)]: FileCache: config error [tmp-path does not exist. attempting to create tmp-path.]
Apr 13 10:16:42 blobfuse2[1439817]: LOG_INFO [file_cache.go (272)]: FileCache::Configure : Using default eviction policy
Apr 13 10:16:42 blobfuse2[1439817]: LOG_INFO [file_cache.go (291)]: FileCache::Configure : create-empty false, cache-timeout 120, tmp-path /mnt/strippedaccount#bundle-reports#handle1, max-size-mb 0, high-mark 80, low-mark 60
Apr 13 10:16:42 blobfuse2[1439817]: LOG_TRACE [attr_cache.go (121)]: AttrCache::Configure : attr_cache
Apr 13 10:16:42 blobfuse2[1439817]: LOG_INFO [attr_cache.go (145)]: AttrCache::Configure : cache-timeout 120, symlink false, cache-on-list true
Apr 13 10:16:42 blobfuse2[1439817]: LOG_TRACE [azstorage.go (83)]: AzStorage::Configure : azstorage
Apr 13 10:16:42 blobfuse2[1439817]: LOG_TRACE [config.go (270)]: ParseAndValidateConfig : Parsing config
Apr 13 10:16:42 blobfuse2[1439817]: LOG_INFO [config.go (372)]: ParseAndValidateConfig : using the following proxy address from the config file:
Apr 13 10:16:42 blobfuse2[1439817]: LOG_INFO [config.go (376)]: ParseAndValidateConfig : sdk logging from the config file: false
Apr 13 10:16:42 blobfuse2[1439817]: LOG_TRACE [config.go (479)]: ParseAndReadDynamicConfig : Reparsing config
Apr 13 10:16:42 blobfuse2[1439817]: LOG_DEBUG [config.go (383)]: ParseAndValidateConfig : Getting auth type
Apr 13 10:16:42 blobfuse2[1439817]: LOG_INFO [config.go (467)]: ParseAndValidateConfig : Account: strippedaccount, Container: frontend-bundle-reports, AccountType: BLOCK, Auth: SPN, Prefix: , Endpoint: https://strippedaccount.blob.core.windows.net/, ListBlock: 10, MD5 : false false, Virtual Directory: true
Apr 13 10:16:42 blobfuse2[1439817]: LOG_INFO [config.go (471)]: ParseAndValidateConfig : Retry Config: Retry count 5, Max Timeout 900, BackOff Time 4, Max Delay 60
Apr 13 10:16:42 blobfuse2[1439817]: LOG_TRACE [block_blob.go (173)]: BlockBlob::SetupPipeline : Setting up
Apr 13 10:16:42 blobfuse2[1439817]: LOG_TRACE [block_blob.go (135)]: BlockBlob::getCredential : Getting credential
Apr 13 10:16:42 blobfuse2[1439817]: LOG_DEBUG [azauth.go (79)]: azAuth::getAzAuth : Account: strippedaccount, AccountType: BLOCK, Protocol: https, Endpoint: https://strippedaccount.blob.core.windows.net/
Apr 13 10:16:47 blobfuse2[1439817]: LOG_DEBUG [azauthspn.go (105)]: azAuthBlobSPN::getCredential : SPN Token retrieved ***stripped***
Apr 13 10:16:47 blobfuse2[1439817]: LOG_TRACE [block_blob.go (260)]: BlockBlob::SetPrefixPath : path
Apr 13 10:16:47 blobfuse2[1439817]: LOG_TRACE [block_blob.go (209)]: BlockBlob::TestPipeline : Validating
Apr 13 10:16:52 blobfuse2[1439817]: LOG_INFO [mount.go (392)]: mount: Mounting blobfuse2 on /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/244a63d20804f80d4ced5a3b49541134bb20325e65864c3b9242abc52ff172d9/globalmount
Apr 13 10:16:52 blobfuse2[1439817]: LOG_DEBUG [mount.go (410)]: mount: foreground disabled, child = false
Apr 13 10:16:58 blobfuse2[1440259]: LOG_WARNING [mount.go (364)]: mount: unsupported v1 CLI parameter: pre-mount-validate is always true in blobfuse2.
Apr 13 10:16:58 blobfuse2[1440259]: LOG_CRIT [mount.go (384)]: Starting Blobfuse2 Mount : 2.0.2 on [Ubuntu 18.04.6 LTS]
Apr 13 10:16:58 blobfuse2[1440259]: LOG_CRIT [mount.go (385)]: Logging level set to : LOG_DEBUG
Apr 13 10:16:58 blobfuse2[1440259]: LOG_TRACE [libfuse.go (220)]: Libfuse::Configure : libfuse
Apr 13 10:16:58 blobfuse2[1440259]: LOG_INFO [libfuse.go (260)]: Libfuse::Configure : read-only true, allow-other true, default-perm 511, entry-timeout 120, attr-time 120, negative-timeout 120, ignore-open-flags: true, nonempty false
Apr 13 10:16:58 blobfuse2[1440259]: LOG_TRACE [file_cache.go (197)]: FileCache::Configure : file_cache
Apr 13 10:16:58 blobfuse2[1440259]: LOG_INFO [file_cache.go (272)]: FileCache::Configure : Using default eviction policy
Apr 13 10:16:58 blobfuse2[1440259]: LOG_INFO [file_cache.go (291)]: FileCache::Configure : create-empty false, cache-timeout 120, tmp-path /mnt/strippedaccount#bundle-reports#handle1, max-size-mb 0, high-mark 80, low-mark 60
Apr 13 10:16:58 blobfuse2[1440259]: LOG_TRACE [attr_cache.go (121)]: AttrCache::Configure : attr_cache
Apr 13 10:16:58 blobfuse2[1440259]: LOG_INFO [attr_cache.go (145)]: AttrCache::Configure : cache-timeout 120, symlink false, cache-on-list true
Apr 13 10:16:58 blobfuse2[1440259]: LOG_TRACE [azstorage.go (83)]: AzStorage::Configure : azstorage
Apr 13 10:16:58 blobfuse2[1440259]: LOG_TRACE [config.go (270)]: ParseAndValidateConfig : Parsing config
Apr 13 10:16:58 blobfuse2[1440259]: LOG_INFO [config.go (372)]: ParseAndValidateConfig : using the following proxy address from the config file:
Apr 13 10:16:58 blobfuse2[1440259]: LOG_INFO [config.go (376)]: ParseAndValidateConfig : sdk logging from the config file: false
Apr 13 10:16:58 blobfuse2[1440259]: LOG_TRACE [config.go (479)]: ParseAndReadDynamicConfig : Reparsing config
Apr 13 10:16:58 blobfuse2[1440259]: LOG_DEBUG [config.go (383)]: ParseAndValidateConfig : Getting auth type
Apr 13 10:16:58 blobfuse2[1440259]: LOG_INFO [config.go (467)]: ParseAndValidateConfig : Account: strippedaccount, Container: frontend-bundle-reports, AccountType: BLOCK, Auth: SPN, Prefix: , Endpoint: https://strippedaccount.blob.core.windows.net/, ListBlock: 10, MD5 : false false, Virtual Directory: true
Apr 13 10:16:58 blobfuse2[1440259]: LOG_INFO [config.go (471)]: ParseAndValidateConfig : Retry Config: Retry count 5, Max Timeout 900, BackOff Time 4, Max Delay 60
Apr 13 10:16:58 blobfuse2[1440259]: LOG_TRACE [block_blob.go (173)]: BlockBlob::SetupPipeline : Setting up
Apr 13 10:16:58 blobfuse2[1440259]: LOG_TRACE [block_blob.go (135)]: BlockBlob::getCredential : Getting credential
Apr 13 10:16:58 blobfuse2[1440259]: LOG_DEBUG [azauth.go (79)]: azAuth::getAzAuth : Account: strippedaccount, AccountType: BLOCK, Protocol: https, Endpoint: https://strippedaccount.blob.core.windows.net/
Apr 13 10:17:03 blobfuse2[1440259]: LOG_DEBUG [azauthspn.go (105)]: azAuthBlobSPN::getCredential : SPN Token retrieved ***stripped***
Apr 13 10:17:03 blobfuse2[1440259]: LOG_TRACE [block_blob.go (260)]: BlockBlob::SetPrefixPath : path
Apr 13 10:17:03 blobfuse2[1440259]: LOG_INFO [mount.go (392)]: mount: Mounting blobfuse2 on /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/244a63d20804f80d4ced5a3b49541134bb20325e65864c3b9242abc52ff172d9/globalmount
Apr 13 10:17:03 blobfuse2[1440259]: LOG_DEBUG [mount.go (410)]: mount: foreground disabled, child = true
Apr 13 10:17:03 blobfuse2[1440259]: LOG_DEBUG [mount.go (477)]: Mount::runPipeline : blobfuse2 pid = 1440259, transfer pipe = /tmp/transferPipe_1440259, polling pipe = /tmp/pollPipe_1440259
Apr 13 10:17:03 blobfuse2[1440259]: LOG_TRACE [azstorage.go (164)]: AzStorage::Start : Starting component azstorage
Apr 13 10:17:03 blobfuse2[1440259]: LOG_TRACE [attr_cache.go (103)]: AttrCache::Start : Starting component attr_cache
Apr 13 10:17:03 blobfuse2[1440259]: LOG_TRACE [file_cache.go (140)]: Starting component : file_cache
Apr 13 10:17:03 blobfuse2[1440259]: LOG_TRACE [lru_policy.go (108)]: lruPolicy::StartPolicy
Apr 13 10:17:03 blobfuse2[1440259]: LOG_TRACE [libfuse.go (136)]: Libfuse::Start : Starting component libfuse
Apr 13 10:17:03 blobfuse2[1440259]: LOG_TRACE [libfuse2_handler.go (116)]: Libfuse::initFuse : Initializing FUSE
Apr 13 10:17:03 blobfuse2[1440259]: LOG_TRACE [lru_policy.go (261)]: lruPolicy::ClearCache
Apr 13 10:17:03 blobfuse2[1440259]: LOG_TRACE [libfuse2_handler.go (159)]: Libfuse::initFuse : Registering fuse callbacks
Apr 13 10:17:03 blobfuse2[1440259]: LOG_TRACE [libfuse2_handler.go (163)]: Libfuse::initFuse : Populating fuse arguments
Apr 13 10:17:03 blobfuse2[1440259]: LOG_TRACE [libfuse2_handler.go (187)]: Libfuse::populateFuseArgs
Apr 13 10:17:03 blobfuse2[1440259]: LOG_DEBUG [libfuse2_handler.go (223)]: Libfuse::populateFuseArgs : opts : blobfuse2
Apr 13 10:17:03 blobfuse2[1440259]: LOG_DEBUG [libfuse2_handler.go (223)]: Libfuse::populateFuseArgs : opts : /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/244a63d20804f80d4ced5a3b49541134bb20325e65864c3b9242abc52ff172d9/globalmount
Apr 13 10:17:03 blobfuse2[1440259]: LOG_DEBUG [libfuse2_handler.go (223)]: Libfuse::populateFuseArgs : opts : -o
Apr 13 10:17:03 blobfuse2[1440259]: LOG_DEBUG [libfuse2_handler.go (223)]: Libfuse::populateFuseArgs : opts : entry_timeout=120,attr_timeout=120,negative_timeout=120,allow_other,ro
Apr 13 10:17:03 blobfuse2[1440259]: LOG_DEBUG [libfuse2_handler.go (223)]: Libfuse::populateFuseArgs : opts : -f
Apr 13 10:17:03 blobfuse2[1440259]: LOG_DEBUG [libfuse2_handler.go (223)]: Libfuse::populateFuseArgs : opts : -ofsname=blobfuse2
Apr 13 10:17:03 blobfuse2[1440259]: LOG_DEBUG [libfuse2_handler.go (223)]: Libfuse::populateFuseArgs : opts : -okernel_cache
Apr 13 10:17:03 blobfuse2[1440259]: LOG_INFO [libfuse2_handler.go (175)]: Libfuse::initFuse : Mounting with fuse2 library
Apr 13 10:17:03 blobfuse2[1440259]: LOG_TRACE [libfuse2_handler.go (243)]: Libfuse::libfuse2_init : init
Apr 13 10:17:03 blobfuse2[1440259]: LOG_INFO [libfuse2_handler.go (246)]: Libfuse::libfuse2_init : Kernel Caps : 4091
Apr 13 10:17:03 blobfuse2[1440259]: LOG_INFO [libfuse2_handler.go (249)]: Libfuse::libfuse2_init : Enable Capability : FUSE_CAP_ASYNC_READ
Apr 13 10:17:03 blobfuse2[1440259]: LOG_INFO [libfuse2_handler.go (254)]: Libfuse::libfuse2_init : Enable Capability : FUSE_CAP_BIG_WRITES
Apr 13 10:17:03 blobfuse2[1440259]: LOG_INFO [libfuse2_handler.go (260)]: Libfuse::libfuse2_init : Enable Capability : FUSE_CAP_SPLICE_WRITE
***some_boring_access_log***
Apr 13 16:14:20 blobfuse2[1440259]: LOG_TRACE [libfuse2_handler.go (357)]: Libfuse::libfuse_statfs :
Apr 13 16:14:20 blobfuse2[1440259]: LOG_TRACE [libfuse2_handler.go (275)]: Libfuse::libfuse_destroy : destroy
Apr 13 16:14:20 blobfuse2[1440259]: LOG_TRACE [libfuse.go (159)]: Libfuse::Stop : Stopping component libfuse
Apr 13 16:14:20 blobfuse2[1440259]: LOG_TRACE [libfuse2_handler.go (237)]: Libfuse::destroyFuse : Destroying FUSE
Apr 13 16:14:20 blobfuse2[1440259]: LOG_TRACE [file_cache.go (166)]: Stopping component : file_cache
Apr 13 16:14:20 blobfuse2[1440259]: LOG_TRACE [lru_policy.go (137)]: lruPolicy::ShutdownPolicy
Apr 13 16:14:20 blobfuse2[1440259]: LOG_ERR [file_cache.go (179)]: FileCache::TempCacheCleanup : Cleaning up temp directory /mnt/strippedaccount#bundle-reports#handle1
Apr 13 16:14:20 blobfuse2[1440259]: LOG_TRACE [attr_cache.go (113)]: AttrCache::Stop : Stopping component attr_cache
Apr 13 16:14:20 blobfuse2[1440259]: LOG_TRACE [azstorage.go (177)]: AzStorage::Stop : Stopping component azstorage
Apr 13 17:10:09 blobfuse2[2029787]: LOG_WARNING [mount.go (364)]: mount: unsupported v1 CLI parameter: pre-mount-validate is always true in blobfuse2.
Apr 13 17:10:09 blobfuse2[2029787]: LOG_CRIT [mount.go (384)]: Starting Blobfuse2 Mount : 2.0.2 on [Ubuntu 18.04.6 LTS]
Apr 13 17:10:09 blobfuse2[2029787]: LOG_CRIT [mount.go (385)]: Logging level set to : LOG_WARNING
Apr 13 17:10:09 blobfuse2[2029787]: LOG_ERR [file_cache.go (239)]: FileCache: config error [tmp-path does not exist. attempting to create tmp-path.]
Apr 13 17:10:25 blobfuse2[2030143]: LOG_WARNING [mount.go (364)]: mount: unsupported v1 CLI parameter: pre-mount-validate is always true in blobfuse2.
Apr 13 17:10:25 blobfuse2[2030143]: LOG_CRIT [mount.go (384)]: Starting Blobfuse2 Mount : 2.0.2 on [Ubuntu 18.04.6 LTS]
Apr 13 17:10:25 blobfuse2[2030143]: LOG_CRIT [mount.go (385)]: Logging level set to : LOG_WARNING
Apr 13 17:20:36 blobfuse2[2044957]: LOG_WARNING [mount.go (364)]: mount: unsupported v1 CLI parameter: pre-mount-validate is always true in blobfuse2.
Apr 13 17:20:36 blobfuse2[2044957]: LOG_CRIT [mount.go (384)]: Starting Blobfuse2 Mount : 2.0.2 on [Ubuntu 18.04.6 LTS]
Apr 13 17:20:36 blobfuse2[2044957]: LOG_CRIT [mount.go (385)]: Logging level set to : LOG_WARNING
Apr 13 17:20:52 blobfuse2[2045240]: LOG_WARNING [mount.go (364)]: mount: unsupported v1 CLI parameter: pre-mount-validate is always true in blobfuse2.
Apr 13 17:20:52 blobfuse2[2045240]: LOG_CRIT [mount.go (384)]: Starting Blobfuse2 Mount : 2.0.2 on [Ubuntu 18.04.6 LTS]
Apr 13 17:20:52 blobfuse2[2045240]: LOG_CRIT [mount.go (385)]: Logging level set to : LOG_WARNING

@andyzhangx
Copy link
Contributor

andyzhangx commented Apr 15, 2023

@kvet the blobfuse2 mount took 18s to mount complete, not sure why it took so long time, is your agent node very busy? that means the original sleep 2s workaround in v1.19.2 may not work

I0413 10:16:36.337000    7369 nodeserver.go:158] calling BlobfuseProxy: MountAzureBlob function
I0413 10:16:54.750362    7369 nodeserver.go:401] volume(strippedaccount#bundle-reports#handle1) mount on "/var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/244a63d20804f80d4ced5a3b49541134bb20325e65864c3b9242abc52ff172d9/globalmount" succeeded

We have published a new v1.19.3 release that could fix this issue ultimately, pls share me with your aks cluster fqdn via mail (you could find my mail address from github), and I could upgrade the version to v1.19.3 from backend directly.

@kvet
Copy link

kvet commented Apr 17, 2023

@andyzhangx the cluster received the update. Thank you!

I run into a different issue... The driver fails to mount a volume. Even on the first mount. (I run it on a node that no longer had a mounted blob volume and received the update as well as on a node that didn't have a mounted volume before.) The results are the same.

The node itself is not busy. There are a number of running pods, but the resource usage is under 15% for CPU and 30% for RAM.

Logs
I0417 08:08:25.143516 3245281 main.go:117] set up prometheus server on [::]:29635
I0417 08:08:25.144094 3245281 blob.go:235] 
DRIVER INFORMATION:
-------------------
Build Date: "2023-04-15T07:29:33Z"
Compiler: gc
Driver Name: blob.csi.azure.com
Driver Version: v1.19.3
Git Commit: 60c085f6efddc41cca32eabcae8e5e5eed4b905e
Go Version: go1.20.3
Platform: linux/amd64
Streaming logs below:
I0417 08:08:25.144241 3245281 blob.go:238] driver userAgent: blob.csi.azure.com/v1.19.3 AKS
I0417 08:08:25.144637 3245281 azure.go:73] set QPS(25.000000) and QPS Burst(50) for driver kubeClient
I0417 08:08:25.144916 3245281 azure.go:87] reading cloud config from secret kube-system/azure-cloud-provider
I0417 08:08:30.196177 3245281 azure.go:94] InitializeCloudFromSecret: failed to get cloud config from secret kube-system/azure-cloud-provider: failed to get secret kube-system/azure-cloud-provider: secrets "azure-cloud-provider" not found
I0417 08:08:30.196198 3245281 azure.go:99] could not read cloud config from secret kube-system/azure-cloud-provider
I0417 08:08:30.196204 3245281 azure.go:102] AZURE_CREDENTIAL_FILE env var set as /etc/kubernetes/azure.json
I0417 08:08:30.196231 3245281 azure.go:113] read cloud config from file: /etc/kubernetes/azure.json successfully
I0417 08:08:30.196851 3245281 azure_auth.go:245] Using AzurePublicCloud environment
I0417 08:08:30.196872 3245281 azure_auth.go:96] azure: using managed identity extension to retrieve access token
I0417 08:08:30.196881 3245281 azure_auth.go:102] azure: using User Assigned MSI ID to retrieve access token
I0417 08:08:30.196905 3245281 azure_auth.go:113] azure: User Assigned MSI ID is client ID
I0417 08:08:30.196944 3245281 azure.go:775] Azure cloudprovider using try backoff: retries=6, exponent=1.500000, duration=5, jitter=1.000000
I0417 08:08:30.196984 3245281 azure_interfaceclient.go:74] Azure InterfacesClient (read ops) using rate limit config: QPS=10, bucket=100
I0417 08:08:30.196993 3245281 azure_interfaceclient.go:77] Azure InterfacesClient (write ops) using rate limit config: QPS=10, bucket=100
I0417 08:08:30.197006 3245281 azure_vmsizeclient.go:68] Azure VirtualMachineSizesClient (read ops) using rate limit config: QPS=10, bucket=100
I0417 08:08:30.197009 3245281 azure_vmsizeclient.go:71] Azure VirtualMachineSizesClient (write ops) using rate limit config: QPS=10, bucket=100
I0417 08:08:30.197022 3245281 azure_snapshotclient.go:70] Azure SnapshotClient (read ops) using rate limit config: QPS=10, bucket=100
I0417 08:08:30.197025 3245281 azure_snapshotclient.go:73] Azure SnapshotClient (write ops) using rate limit config: QPS=10, bucket=100
I0417 08:08:30.197030 3245281 azure_storageaccountclient.go:70] Azure StorageAccountClient (read ops) using rate limit config: QPS=10, bucket=100
I0417 08:08:30.197032 3245281 azure_storageaccountclient.go:73] Azure StorageAccountClient (write ops) using rate limit config: QPS=10, bucket=100
I0417 08:08:30.197041 3245281 azure_diskclient.go:68] Azure DisksClient using API version: 2022-03-02
I0417 08:08:30.197050 3245281 azure_diskclient.go:73] Azure DisksClient (read ops) using rate limit config: QPS=10, bucket=100
I0417 08:08:30.197052 3245281 azure_diskclient.go:76] Azure DisksClient (write ops) using rate limit config: QPS=10, bucket=100
I0417 08:08:30.197058 3245281 azure_vmclient.go:70] Azure VirtualMachine client (read ops) using rate limit config: QPS=10, bucket=100
I0417 08:08:30.197063 3245281 azure_vmclient.go:73] Azure VirtualMachine client (write ops) using rate limit config: QPS=10, bucket=100
I0417 08:08:30.197079 3245281 azure_vmssclient.go:70] Azure VirtualMachineScaleSetClient (read ops) using rate limit config: QPS=10, bucket=100
I0417 08:08:30.197084 3245281 azure_vmssclient.go:73] Azure VirtualMachineScaleSetClient (write ops) using rate limit config: QPS=10, bucket=100
I0417 08:08:30.197092 3245281 azure_vmssvmclient.go:75] Azure vmssVM client (read ops) using rate limit config: QPS=10, bucket=100
I0417 08:08:30.197100 3245281 azure_vmssvmclient.go:78] Azure vmssVM client (write ops) using rate limit config: QPS=10, bucket=100
I0417 08:08:30.197112 3245281 azure_routeclient.go:69] Azure RoutesClient (read ops) using rate limit config: QPS=10, bucket=100
I0417 08:08:30.197116 3245281 azure_routeclient.go:72] Azure RoutesClient (write ops) using rate limit config: QPS=10, bucket=100
I0417 08:08:30.197124 3245281 azure_subnetclient.go:70] Azure SubnetsClient (read ops) using rate limit config: QPS=10, bucket=100
I0417 08:08:30.197128 3245281 azure_subnetclient.go:73] Azure SubnetsClient (write ops) using rate limit config: QPS=10, bucket=100
I0417 08:08:30.197136 3245281 azure_routetableclient.go:69] Azure RouteTablesClient (read ops) using rate limit config: QPS=10, bucket=100
I0417 08:08:30.197141 3245281 azure_routetableclient.go:72] Azure RouteTablesClient (write ops) using rate limit config: QPS=10, bucket=100
I0417 08:08:30.197148 3245281 azure_loadbalancerclient.go:70] Azure LoadBalancersClient (read ops) using rate limit config: QPS=10, bucket=100
I0417 08:08:30.197156 3245281 azure_loadbalancerclient.go:73] Azure LoadBalancersClient (write ops) using rate limit config: QPS=10, bucket=100
I0417 08:08:30.197163 3245281 azure_securitygroupclient.go:70] Azure SecurityGroupsClient (read ops) using rate limit config: QPS=10, bucket=100
I0417 08:08:30.197183 3245281 azure_securitygroupclient.go:73] Azure SecurityGroupsClient (write ops) using rate limit config: QPS=10, bucket=100
I0417 08:08:30.197192 3245281 azure_publicipclient.go:74] Azure PublicIPAddressesClient (read ops) using rate limit config: QPS=10, bucket=100
I0417 08:08:30.197196 3245281 azure_publicipclient.go:77] Azure PublicIPAddressesClient (write ops) using rate limit config: QPS=10, bucket=100
I0417 08:08:30.197207 3245281 azure_blobclient.go:67] Azure BlobClient using API version: 2021-09-01
I0417 08:08:30.197216 3245281 azure_vmasclient.go:70] Azure AvailabilitySetsClient (read ops) using rate limit config: QPS=10, bucket=100
I0417 08:08:30.197220 3245281 azure_vmasclient.go:73] Azure AvailabilitySetsClient  (write ops) using rate limit config: QPS=10, bucket=100
I0417 08:08:30.197271 3245281 azure.go:1006] attach/detach disk operation rate limit QPS: 6.000000, Bucket: 10
I0417 08:08:30.197287 3245281 azure.go:149] starting node server on node(stripped-node)
I0417 08:08:30.197298 3245281 blob.go:243] cloud: AzurePublicCloud, location: westeurope, rg: rg, VnetName: vnet, VnetResourceGroup: vnet-rg, SubnetName: main
I0417 08:08:30.199130 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:08:30.199180 3245281 driver.go:80] Enabling controller service capability: CREATE_DELETE_VOLUME
I0417 08:08:30.199189 3245281 driver.go:80] Enabling controller service capability: EXPAND_VOLUME
I0417 08:08:30.199201 3245281 driver.go:80] Enabling controller service capability: SINGLE_NODE_MULTI_WRITER
I0417 08:08:30.199209 3245281 driver.go:99] Enabling volume access mode: SINGLE_NODE_WRITER
I0417 08:08:30.199211 3245281 driver.go:99] Enabling volume access mode: SINGLE_NODE_READER_ONLY
I0417 08:08:30.199214 3245281 driver.go:99] Enabling volume access mode: SINGLE_NODE_SINGLE_WRITER
I0417 08:08:30.199216 3245281 driver.go:99] Enabling volume access mode: SINGLE_NODE_MULTI_WRITER
I0417 08:08:30.199218 3245281 driver.go:99] Enabling volume access mode: MULTI_NODE_READER_ONLY
I0417 08:08:30.199221 3245281 driver.go:99] Enabling volume access mode: MULTI_NODE_SINGLE_WRITER
I0417 08:08:30.199223 3245281 driver.go:99] Enabling volume access mode: MULTI_NODE_MULTI_WRITER
I0417 08:08:30.199226 3245281 driver.go:90] Enabling node service capability: STAGE_UNSTAGE_VOLUME
I0417 08:08:30.199233 3245281 driver.go:90] Enabling node service capability: SINGLE_NODE_MULTI_WRITER
I0417 08:08:30.199337 3245281 server.go:114] Listening for connections on address: &net.UnixAddr{Name:"//csi/csi.sock", Net:"unix"}
I0417 08:08:30.711845 3245281 utils.go:75] GRPC call: /csi.v1.Identity/GetPluginInfo
I0417 08:08:30.711867 3245281 utils.go:76] GRPC request: {}
I0417 08:08:30.713155 3245281 utils.go:82] GRPC response: {"name":"blob.csi.azure.com","vendor_version":"v1.19.3"}
I0417 08:08:30.713454 3245281 utils.go:75] GRPC call: /csi.v1.Identity/GetPluginInfo
I0417 08:08:30.713465 3245281 utils.go:76] GRPC request: {}
I0417 08:08:30.713490 3245281 utils.go:82] GRPC response: {"name":"blob.csi.azure.com","vendor_version":"v1.19.3"}
I0417 08:08:31.089158 3245281 utils.go:75] GRPC call: /csi.v1.Node/NodeGetInfo
I0417 08:08:31.089172 3245281 utils.go:76] GRPC request: {}
I0417 08:08:31.089227 3245281 utils.go:82] GRPC response: {"node_id":"stripped-node"}
I0417 08:11:47.085876 3245281 utils.go:75] GRPC call: /csi.v1.Node/NodeStageVolume
I0417 08:11:47.085891 3245281 utils.go:76] GRPC request: {"secrets":"***stripped***","staging_target_path":"/var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount","volume_capability":{"AccessType":{"Mount":{"mount_flags":["-o ro","--virtual-directory=true","-o allow_other"]}},"access_mode":{"mode":3}},"volume_context":{"AzureStorageAuthType":"spn","AzureStorageSPNClientID":"stripped","AzureStorageSPNTenantID":"stripped","containerName":"frontend-bundle-reports","protocol":"fuse2","storageAccount":"stripped"},"volume_id":"frontend-storage-account#bundle-reports-container#handle"}
I0417 08:11:47.086435 3245281 blob.go:416] volumeID(frontend-storage-account#bundle-reports-container#handle) authEnv: [AZURE_STORAGE_SPN_CLIENT_ID=stripped AZURE_STORAGE_SPN_TENANT_ID=stripped AZURE_STORAGE_AUTH_TYPE=spn]
I0417 08:11:47.086472 3245281 nodeserver.go:355] target /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount
protocol fuse2
volumeId frontend-storage-account#bundle-reports-container#handle
context map[AzureStorageAuthType:spn AzureStorageSPNClientID:stripped AzureStorageSPNTenantID:stripped containerName:frontend-bundle-reports protocol:fuse2 storageAccount:stripped]
mountflags [-o ro --virtual-directory=true -o allow_other]
mountOptions [-o ro --virtual-directory=true -o allow_other --cancel-list-on-mount-seconds=10 --empty-dir-check=false --tmp-path=/mnt/frontend-storage-account#bundle-reports-container#handle --container-name=frontend-bundle-reports --pre-mount-validate=true --use-https=true]
args /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount -o ro --virtual-directory=true -o allow_other --cancel-list-on-mount-seconds=10 --empty-dir-check=false --tmp-path=/mnt/frontend-storage-account#bundle-reports-container#handle --container-name=frontend-bundle-reports --pre-mount-validate=true --use-https=true
serverAddress stripped.blob.core.windows.net
I0417 08:11:47.086507 3245281 nodeserver.go:154] start connecting to blobfuse proxy, protocol: fuse2, args: /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount -o ro --virtual-directory=true -o allow_other --cancel-list-on-mount-seconds=10 --empty-dir-check=false --tmp-path=/mnt/frontend-storage-account#bundle-reports-container#handle --container-name=frontend-bundle-reports --pre-mount-validate=true --use-https=true
I0417 08:11:47.087040 3245281 nodeserver.go:163] begin to mount with blobfuse proxy, protocol: fuse2, args: /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount -o ro --virtual-directory=true -o allow_other --cancel-list-on-mount-seconds=10 --empty-dir-check=false --tmp-path=/mnt/frontend-storage-account#bundle-reports-container#handle --container-name=frontend-bundle-reports --pre-mount-validate=true --use-https=true
I0417 08:12:03.579849 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:03.600392 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:03.619859 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:03.640213 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:03.659613 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:03.679933 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:03.700365 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:03.719893 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:03.740316 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:03.759741 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:03.780055 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:03.799882 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:03.820254 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:03.839699 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:03.860090 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:03.879770 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:03.900304 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:03.919748 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:03.940218 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:03.959610 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:03.980062 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:03.999633 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:04.020185 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:04.039685 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:04.060184 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:04.079584 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:04.100014 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:04.120435 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:04.139790 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:04.160004 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:04.180415 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:04.199761 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:04.220146 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:04.239492 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:04.259878 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:04.280260 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:04.299939 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:04.320082 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:04.339431 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:04.359764 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:04.380109 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:04.399522 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:04.419931 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:04.440337 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:04.459658 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:04.479990 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:04.500452 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:04.519870 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:04.540280 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:04.559661 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:04.580050 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:04.599341 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:04.619634 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:04.640190 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:04.659502 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:04.739809 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:04.741290 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:04.759821 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:04.780311 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:04.799700 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:04.820180 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:04.839659 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:04.860114 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:04.879603 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:04.900123 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:04.919571 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:04.939946 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:04.960404 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:04.979826 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.000267 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.019781 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.040260 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.059719 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.080581 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.100020 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.120450 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.140314 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.159476 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.179754 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.200314 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.220129 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.239721 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.260444 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.280129 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.299617 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.320171 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.377586 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.379142 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.380458 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.399876 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.420301 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.439727 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.460122 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.479517 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.499890 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.520346 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.539734 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.560048 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.579566 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.600142 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.619743 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.640328 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.659791 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.680261 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.699862 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.720403 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.739831 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.760247 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.779615 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.799984 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.820436 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.839798 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.860178 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.879459 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.899768 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.920069 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.939445 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.959853 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.980306 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.999641 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:06.019991 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:06.040407 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:06.059846 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:06.080228 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:06.099778 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:06.120199 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:06.139586 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:06.174187 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:06.179410 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:06.199857 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:06.220102 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:06.239615 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:06.260059 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:06.279464 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:06.299867 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:06.320289 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:06.339703 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:06.360051 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:06.379340 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:06.399827 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:06.420205 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:06.439711 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:06.460167 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:06.479540 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:06.499941 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:06.520562 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:06.540065 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
E0417 08:12:06.558144 3245281 utils.go:80] GRPC error: failed to wait for mount: timeout waiting for mount /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount
I0417 08:12:07.133026 3245281 utils.go:75] GRPC call: /csi.v1.Node/NodeStageVolume
I0417 08:12:07.133044 3245281 utils.go:76] GRPC request: {"secrets":"***stripped***","staging_target_path":"/var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount","volume_capability":{"AccessType":{"Mount":{"mount_flags":["-o ro","--virtual-directory=true","-o allow_other"]}},"access_mode":{"mode":3}},"volume_context":{"AzureStorageAuthType":"spn","AzureStorageSPNClientID":"stripped","AzureStorageSPNTenantID":"stripped","containerName":"frontend-bundle-reports","protocol":"fuse2","storageAccount":"stripped"},"volume_id":"frontend-storage-account#bundle-reports-container#handle"}
I0417 08:12:07.133529 3245281 blob.go:416] volumeID(frontend-storage-account#bundle-reports-container#handle) authEnv: [AZURE_STORAGE_AUTH_TYPE=spn AZURE_STORAGE_SPN_CLIENT_ID=stripped AZURE_STORAGE_SPN_TENANT_ID=stripped]
I0417 08:12:07.133563 3245281 nodeserver.go:355] target /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount
protocol fuse2
volumeId frontend-storage-account#bundle-reports-container#handle
context map[AzureStorageAuthType:spn AzureStorageSPNClientID:stripped AzureStorageSPNTenantID:stripped containerName:frontend-bundle-reports protocol:fuse2 storageAccount:stripped]
mountflags [-o ro --virtual-directory=true -o allow_other]
mountOptions [-o ro --virtual-directory=true -o allow_other --tmp-path=/mnt/frontend-storage-account#bundle-reports-container#handle --container-name=frontend-bundle-reports --pre-mount-validate=true --use-https=true --cancel-list-on-mount-seconds=10 --empty-dir-check=false]
args /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount -o ro --virtual-directory=true -o allow_other --tmp-path=/mnt/frontend-storage-account#bundle-reports-container#handle --container-name=frontend-bundle-reports --pre-mount-validate=true --use-https=true --cancel-list-on-mount-seconds=10 --empty-dir-check=false
serverAddress stripped.blob.core.windows.net
I0417 08:12:07.133577 3245281 nodeserver.go:154] start connecting to blobfuse proxy, protocol: fuse2, args: /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount -o ro --virtual-directory=true -o allow_other --tmp-path=/mnt/frontend-storage-account#bundle-reports-container#handle --container-name=frontend-bundle-reports --pre-mount-validate=true --use-https=true --cancel-list-on-mount-seconds=10 --empty-dir-check=false
I0417 08:12:07.133985 3245281 nodeserver.go:163] begin to mount with blobfuse proxy, protocol: fuse2, args: /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount -o ro --virtual-directory=true -o allow_other --tmp-path=/mnt/frontend-storage-account#bundle-reports-container#handle --container-name=frontend-bundle-reports --pre-mount-validate=true --use-https=true --cancel-list-on-mount-seconds=10 --empty-dir-check=false
E0417 08:12:22.853397 3245281 nodeserver.go:166] GRPC call returned with an error:rpc error: code = Unknown desc = exit status 1 Error: failed to daemonize application [daemon: Resource temporarily unavailable]
E0417 08:12:22.853441 3245281 nodeserver.go:377] rpc error: code = Internal desc = Mount failed with error: rpc error: code = Unknown desc = exit status 1 Error: failed to daemonize application [daemon: Resource temporarily unavailable]
, output: 
I0417 08:12:22.853534 3245281 mount_linux.go:361] Unmounting /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount
E0417 08:12:22.854910 3245281 utils.go:80] GRPC error: rpc error: code = Internal desc = Mount failed with error: rpc error: code = Unknown desc = exit status 1 Error: failed to daemonize application [daemon: Resource temporarily unavailable]
, output: 
I0417 08:12:23.915715 3245281 utils.go:75] GRPC call: /csi.v1.Node/NodeStageVolume
I0417 08:12:23.915728 3245281 utils.go:76] GRPC request: {"secrets":"***stripped***","staging_target_path":"/var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount","volume_capability":{"AccessType":{"Mount":{"mount_flags":["-o ro","--virtual-directory=true","-o allow_other"]}},"access_mode":{"mode":3}},"volume_context":{"AzureStorageAuthType":"spn","AzureStorageSPNClientID":"stripped","AzureStorageSPNTenantID":"stripped","containerName":"frontend-bundle-reports","protocol":"fuse2","storageAccount":"stripped"},"volume_id":"frontend-storage-account#bundle-reports-container#handle"}
I0417 08:12:23.916227 3245281 blob.go:416] volumeID(frontend-storage-account#bundle-reports-container#handle) authEnv: [AZURE_STORAGE_AUTH_TYPE=spn AZURE_STORAGE_SPN_CLIENT_ID=stripped AZURE_STORAGE_SPN_TENANT_ID=stripped]
I0417 08:12:23.916271 3245281 nodeserver.go:355] target /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount
protocol fuse2
volumeId frontend-storage-account#bundle-reports-container#handle
context map[AzureStorageAuthType:spn AzureStorageSPNClientID:stripped AzureStorageSPNTenantID:stripped containerName:frontend-bundle-reports protocol:fuse2 storageAccount:stripped]
mountflags [-o ro --virtual-directory=true -o allow_other]
mountOptions [-o ro --virtual-directory=true -o allow_other --tmp-path=/mnt/frontend-storage-account#bundle-reports-container#handle --container-name=frontend-bundle-reports --pre-mount-validate=true --use-https=true --cancel-list-on-mount-seconds=10 --empty-dir-check=false]
args /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount -o ro --virtual-directory=true -o allow_other --tmp-path=/mnt/frontend-storage-account#bundle-reports-container#handle --container-name=frontend-bundle-reports --pre-mount-validate=true --use-https=true --cancel-list-on-mount-seconds=10 --empty-dir-check=false
serverAddress stripped.blob.core.windows.net
I0417 08:12:23.916291 3245281 nodeserver.go:154] start connecting to blobfuse proxy, protocol: fuse2, args: /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount -o ro --virtual-directory=true -o allow_other --tmp-path=/mnt/frontend-storage-account#bundle-reports-container#handle --container-name=frontend-bundle-reports --pre-mount-validate=true --use-https=true --cancel-list-on-mount-seconds=10 --empty-dir-check=false
I0417 08:12:23.917058 3245281 nodeserver.go:163] begin to mount with blobfuse proxy, protocol: fuse2, args: /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount -o ro --virtual-directory=true -o allow_other --tmp-path=/mnt/frontend-storage-account#bundle-reports-container#handle --container-name=frontend-bundle-reports --pre-mount-validate=true --use-https=true --cancel-list-on-mount-seconds=10 --empty-dir-check=false
I0417 08:12:39.674666 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:39.694049 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior

...

@andyzhangx
Copy link
Contributor

@andyzhangx the cluster received the update. Thank you!

I run into a different issue... The driver fails to mount a volume. Even on the first mount. (I run it on a node that no longer had a mounted blob volume and received the update as well as on a node that didn't have a mounted volume before.) The results are the same.

The node itself is not busy. There are a number of running pods, but the resource usage is under 15% for CPU and 30% for RAM.

Logs

I0417 08:08:25.143516 3245281 main.go:117] set up prometheus server on [::]:29635
I0417 08:08:25.144094 3245281 blob.go:235] 
DRIVER INFORMATION:
-------------------
Build Date: "2023-04-15T07:29:33Z"
Compiler: gc
Driver Name: blob.csi.azure.com
Driver Version: v1.19.3
Git Commit: 60c085f6efddc41cca32eabcae8e5e5eed4b905e
Go Version: go1.20.3
Platform: linux/amd64
Streaming logs below:
I0417 08:08:25.144241 3245281 blob.go:238] driver userAgent: blob.csi.azure.com/v1.19.3 AKS
I0417 08:08:25.144637 3245281 azure.go:73] set QPS(25.000000) and QPS Burst(50) for driver kubeClient
I0417 08:08:25.144916 3245281 azure.go:87] reading cloud config from secret kube-system/azure-cloud-provider
I0417 08:08:30.196177 3245281 azure.go:94] InitializeCloudFromSecret: failed to get cloud config from secret kube-system/azure-cloud-provider: failed to get secret kube-system/azure-cloud-provider: secrets "azure-cloud-provider" not found
I0417 08:08:30.196198 3245281 azure.go:99] could not read cloud config from secret kube-system/azure-cloud-provider
I0417 08:08:30.196204 3245281 azure.go:102] AZURE_CREDENTIAL_FILE env var set as /etc/kubernetes/azure.json
I0417 08:08:30.196231 3245281 azure.go:113] read cloud config from file: /etc/kubernetes/azure.json successfully
I0417 08:08:30.196851 3245281 azure_auth.go:245] Using AzurePublicCloud environment
I0417 08:08:30.196872 3245281 azure_auth.go:96] azure: using managed identity extension to retrieve access token
I0417 08:08:30.196881 3245281 azure_auth.go:102] azure: using User Assigned MSI ID to retrieve access token
I0417 08:08:30.196905 3245281 azure_auth.go:113] azure: User Assigned MSI ID is client ID
I0417 08:08:30.196944 3245281 azure.go:775] Azure cloudprovider using try backoff: retries=6, exponent=1.500000, duration=5, jitter=1.000000
I0417 08:08:30.196984 3245281 azure_interfaceclient.go:74] Azure InterfacesClient (read ops) using rate limit config: QPS=10, bucket=100
I0417 08:08:30.196993 3245281 azure_interfaceclient.go:77] Azure InterfacesClient (write ops) using rate limit config: QPS=10, bucket=100
I0417 08:08:30.197006 3245281 azure_vmsizeclient.go:68] Azure VirtualMachineSizesClient (read ops) using rate limit config: QPS=10, bucket=100
I0417 08:08:30.197009 3245281 azure_vmsizeclient.go:71] Azure VirtualMachineSizesClient (write ops) using rate limit config: QPS=10, bucket=100
I0417 08:08:30.197022 3245281 azure_snapshotclient.go:70] Azure SnapshotClient (read ops) using rate limit config: QPS=10, bucket=100
I0417 08:08:30.197025 3245281 azure_snapshotclient.go:73] Azure SnapshotClient (write ops) using rate limit config: QPS=10, bucket=100
I0417 08:08:30.197030 3245281 azure_storageaccountclient.go:70] Azure StorageAccountClient (read ops) using rate limit config: QPS=10, bucket=100
I0417 08:08:30.197032 3245281 azure_storageaccountclient.go:73] Azure StorageAccountClient (write ops) using rate limit config: QPS=10, bucket=100
I0417 08:08:30.197041 3245281 azure_diskclient.go:68] Azure DisksClient using API version: 2022-03-02
I0417 08:08:30.197050 3245281 azure_diskclient.go:73] Azure DisksClient (read ops) using rate limit config: QPS=10, bucket=100
I0417 08:08:30.197052 3245281 azure_diskclient.go:76] Azure DisksClient (write ops) using rate limit config: QPS=10, bucket=100
I0417 08:08:30.197058 3245281 azure_vmclient.go:70] Azure VirtualMachine client (read ops) using rate limit config: QPS=10, bucket=100
I0417 08:08:30.197063 3245281 azure_vmclient.go:73] Azure VirtualMachine client (write ops) using rate limit config: QPS=10, bucket=100
I0417 08:08:30.197079 3245281 azure_vmssclient.go:70] Azure VirtualMachineScaleSetClient (read ops) using rate limit config: QPS=10, bucket=100
I0417 08:08:30.197084 3245281 azure_vmssclient.go:73] Azure VirtualMachineScaleSetClient (write ops) using rate limit config: QPS=10, bucket=100
I0417 08:08:30.197092 3245281 azure_vmssvmclient.go:75] Azure vmssVM client (read ops) using rate limit config: QPS=10, bucket=100
I0417 08:08:30.197100 3245281 azure_vmssvmclient.go:78] Azure vmssVM client (write ops) using rate limit config: QPS=10, bucket=100
I0417 08:08:30.197112 3245281 azure_routeclient.go:69] Azure RoutesClient (read ops) using rate limit config: QPS=10, bucket=100
I0417 08:08:30.197116 3245281 azure_routeclient.go:72] Azure RoutesClient (write ops) using rate limit config: QPS=10, bucket=100
I0417 08:08:30.197124 3245281 azure_subnetclient.go:70] Azure SubnetsClient (read ops) using rate limit config: QPS=10, bucket=100
I0417 08:08:30.197128 3245281 azure_subnetclient.go:73] Azure SubnetsClient (write ops) using rate limit config: QPS=10, bucket=100
I0417 08:08:30.197136 3245281 azure_routetableclient.go:69] Azure RouteTablesClient (read ops) using rate limit config: QPS=10, bucket=100
I0417 08:08:30.197141 3245281 azure_routetableclient.go:72] Azure RouteTablesClient (write ops) using rate limit config: QPS=10, bucket=100
I0417 08:08:30.197148 3245281 azure_loadbalancerclient.go:70] Azure LoadBalancersClient (read ops) using rate limit config: QPS=10, bucket=100
I0417 08:08:30.197156 3245281 azure_loadbalancerclient.go:73] Azure LoadBalancersClient (write ops) using rate limit config: QPS=10, bucket=100
I0417 08:08:30.197163 3245281 azure_securitygroupclient.go:70] Azure SecurityGroupsClient (read ops) using rate limit config: QPS=10, bucket=100
I0417 08:08:30.197183 3245281 azure_securitygroupclient.go:73] Azure SecurityGroupsClient (write ops) using rate limit config: QPS=10, bucket=100
I0417 08:08:30.197192 3245281 azure_publicipclient.go:74] Azure PublicIPAddressesClient (read ops) using rate limit config: QPS=10, bucket=100
I0417 08:08:30.197196 3245281 azure_publicipclient.go:77] Azure PublicIPAddressesClient (write ops) using rate limit config: QPS=10, bucket=100
I0417 08:08:30.197207 3245281 azure_blobclient.go:67] Azure BlobClient using API version: 2021-09-01
I0417 08:08:30.197216 3245281 azure_vmasclient.go:70] Azure AvailabilitySetsClient (read ops) using rate limit config: QPS=10, bucket=100
I0417 08:08:30.197220 3245281 azure_vmasclient.go:73] Azure AvailabilitySetsClient  (write ops) using rate limit config: QPS=10, bucket=100
I0417 08:08:30.197271 3245281 azure.go:1006] attach/detach disk operation rate limit QPS: 6.000000, Bucket: 10
I0417 08:08:30.197287 3245281 azure.go:149] starting node server on node(stripped-node)
I0417 08:08:30.197298 3245281 blob.go:243] cloud: AzurePublicCloud, location: westeurope, rg: rg, VnetName: vnet, VnetResourceGroup: vnet-rg, SubnetName: main
I0417 08:08:30.199130 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:08:30.199180 3245281 driver.go:80] Enabling controller service capability: CREATE_DELETE_VOLUME
I0417 08:08:30.199189 3245281 driver.go:80] Enabling controller service capability: EXPAND_VOLUME
I0417 08:08:30.199201 3245281 driver.go:80] Enabling controller service capability: SINGLE_NODE_MULTI_WRITER
I0417 08:08:30.199209 3245281 driver.go:99] Enabling volume access mode: SINGLE_NODE_WRITER
I0417 08:08:30.199211 3245281 driver.go:99] Enabling volume access mode: SINGLE_NODE_READER_ONLY
I0417 08:08:30.199214 3245281 driver.go:99] Enabling volume access mode: SINGLE_NODE_SINGLE_WRITER
I0417 08:08:30.199216 3245281 driver.go:99] Enabling volume access mode: SINGLE_NODE_MULTI_WRITER
I0417 08:08:30.199218 3245281 driver.go:99] Enabling volume access mode: MULTI_NODE_READER_ONLY
I0417 08:08:30.199221 3245281 driver.go:99] Enabling volume access mode: MULTI_NODE_SINGLE_WRITER
I0417 08:08:30.199223 3245281 driver.go:99] Enabling volume access mode: MULTI_NODE_MULTI_WRITER
I0417 08:08:30.199226 3245281 driver.go:90] Enabling node service capability: STAGE_UNSTAGE_VOLUME
I0417 08:08:30.199233 3245281 driver.go:90] Enabling node service capability: SINGLE_NODE_MULTI_WRITER
I0417 08:08:30.199337 3245281 server.go:114] Listening for connections on address: &net.UnixAddr{Name:"//csi/csi.sock", Net:"unix"}
I0417 08:08:30.711845 3245281 utils.go:75] GRPC call: /csi.v1.Identity/GetPluginInfo
I0417 08:08:30.711867 3245281 utils.go:76] GRPC request: {}
I0417 08:08:30.713155 3245281 utils.go:82] GRPC response: {"name":"blob.csi.azure.com","vendor_version":"v1.19.3"}
I0417 08:08:30.713454 3245281 utils.go:75] GRPC call: /csi.v1.Identity/GetPluginInfo
I0417 08:08:30.713465 3245281 utils.go:76] GRPC request: {}
I0417 08:08:30.713490 3245281 utils.go:82] GRPC response: {"name":"blob.csi.azure.com","vendor_version":"v1.19.3"}
I0417 08:08:31.089158 3245281 utils.go:75] GRPC call: /csi.v1.Node/NodeGetInfo
I0417 08:08:31.089172 3245281 utils.go:76] GRPC request: {}
I0417 08:08:31.089227 3245281 utils.go:82] GRPC response: {"node_id":"stripped-node"}
I0417 08:11:47.085876 3245281 utils.go:75] GRPC call: /csi.v1.Node/NodeStageVolume
I0417 08:11:47.085891 3245281 utils.go:76] GRPC request: {"secrets":"***stripped***","staging_target_path":"/var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount","volume_capability":{"AccessType":{"Mount":{"mount_flags":["-o ro","--virtual-directory=true","-o allow_other"]}},"access_mode":{"mode":3}},"volume_context":{"AzureStorageAuthType":"spn","AzureStorageSPNClientID":"stripped","AzureStorageSPNTenantID":"stripped","containerName":"frontend-bundle-reports","protocol":"fuse2","storageAccount":"stripped"},"volume_id":"frontend-storage-account#bundle-reports-container#handle"}
I0417 08:11:47.086435 3245281 blob.go:416] volumeID(frontend-storage-account#bundle-reports-container#handle) authEnv: [AZURE_STORAGE_SPN_CLIENT_ID=stripped AZURE_STORAGE_SPN_TENANT_ID=stripped AZURE_STORAGE_AUTH_TYPE=spn]
I0417 08:11:47.086472 3245281 nodeserver.go:355] target /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount
protocol fuse2
volumeId frontend-storage-account#bundle-reports-container#handle
context map[AzureStorageAuthType:spn AzureStorageSPNClientID:stripped AzureStorageSPNTenantID:stripped containerName:frontend-bundle-reports protocol:fuse2 storageAccount:stripped]
mountflags [-o ro --virtual-directory=true -o allow_other]
mountOptions [-o ro --virtual-directory=true -o allow_other --cancel-list-on-mount-seconds=10 --empty-dir-check=false --tmp-path=/mnt/frontend-storage-account#bundle-reports-container#handle --container-name=frontend-bundle-reports --pre-mount-validate=true --use-https=true]
args /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount -o ro --virtual-directory=true -o allow_other --cancel-list-on-mount-seconds=10 --empty-dir-check=false --tmp-path=/mnt/frontend-storage-account#bundle-reports-container#handle --container-name=frontend-bundle-reports --pre-mount-validate=true --use-https=true
serverAddress stripped.blob.core.windows.net
I0417 08:11:47.086507 3245281 nodeserver.go:154] start connecting to blobfuse proxy, protocol: fuse2, args: /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount -o ro --virtual-directory=true -o allow_other --cancel-list-on-mount-seconds=10 --empty-dir-check=false --tmp-path=/mnt/frontend-storage-account#bundle-reports-container#handle --container-name=frontend-bundle-reports --pre-mount-validate=true --use-https=true
I0417 08:11:47.087040 3245281 nodeserver.go:163] begin to mount with blobfuse proxy, protocol: fuse2, args: /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount -o ro --virtual-directory=true -o allow_other --cancel-list-on-mount-seconds=10 --empty-dir-check=false --tmp-path=/mnt/frontend-storage-account#bundle-reports-container#handle --container-name=frontend-bundle-reports --pre-mount-validate=true --use-https=true
I0417 08:12:03.579849 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:03.600392 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:03.619859 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:03.640213 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:03.659613 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:03.679933 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:03.700365 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:03.719893 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:03.740316 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:03.759741 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:03.780055 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:03.799882 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:03.820254 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:03.839699 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:03.860090 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:03.879770 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:03.900304 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:03.919748 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:03.940218 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:03.959610 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:03.980062 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:03.999633 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:04.020185 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:04.039685 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:04.060184 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:04.079584 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:04.100014 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:04.120435 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:04.139790 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:04.160004 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:04.180415 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:04.199761 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:04.220146 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:04.239492 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:04.259878 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:04.280260 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:04.299939 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:04.320082 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:04.339431 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:04.359764 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:04.380109 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:04.399522 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:04.419931 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:04.440337 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:04.459658 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:04.479990 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:04.500452 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:04.519870 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:04.540280 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:04.559661 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:04.580050 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:04.599341 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:04.619634 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:04.640190 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:04.659502 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:04.739809 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:04.741290 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:04.759821 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:04.780311 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:04.799700 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:04.820180 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:04.839659 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:04.860114 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:04.879603 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:04.900123 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:04.919571 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:04.939946 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:04.960404 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:04.979826 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.000267 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.019781 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.040260 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.059719 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.080581 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.100020 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.120450 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.140314 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.159476 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.179754 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.200314 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.220129 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.239721 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.260444 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.280129 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.299617 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.320171 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.377586 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.379142 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.380458 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.399876 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.420301 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.439727 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.460122 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.479517 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.499890 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.520346 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.539734 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.560048 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.579566 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.600142 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.619743 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.640328 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.659791 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.680261 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.699862 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.720403 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.739831 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.760247 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.779615 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.799984 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.820436 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.839798 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.860178 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.879459 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.899768 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.920069 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.939445 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.959853 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.980306 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:05.999641 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:06.019991 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:06.040407 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:06.059846 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:06.080228 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:06.099778 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:06.120199 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:06.139586 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:06.174187 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:06.179410 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:06.199857 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:06.220102 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:06.239615 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:06.260059 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:06.279464 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:06.299867 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:06.320289 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:06.339703 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:06.360051 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:06.379340 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:06.399827 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:06.420205 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:06.439711 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:06.460167 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:06.479540 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:06.499941 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:06.520562 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:06.540065 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
E0417 08:12:06.558144 3245281 utils.go:80] GRPC error: failed to wait for mount: timeout waiting for mount /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount
I0417 08:12:07.133026 3245281 utils.go:75] GRPC call: /csi.v1.Node/NodeStageVolume
I0417 08:12:07.133044 3245281 utils.go:76] GRPC request: {"secrets":"***stripped***","staging_target_path":"/var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount","volume_capability":{"AccessType":{"Mount":{"mount_flags":["-o ro","--virtual-directory=true","-o allow_other"]}},"access_mode":{"mode":3}},"volume_context":{"AzureStorageAuthType":"spn","AzureStorageSPNClientID":"stripped","AzureStorageSPNTenantID":"stripped","containerName":"frontend-bundle-reports","protocol":"fuse2","storageAccount":"stripped"},"volume_id":"frontend-storage-account#bundle-reports-container#handle"}
I0417 08:12:07.133529 3245281 blob.go:416] volumeID(frontend-storage-account#bundle-reports-container#handle) authEnv: [AZURE_STORAGE_AUTH_TYPE=spn AZURE_STORAGE_SPN_CLIENT_ID=stripped AZURE_STORAGE_SPN_TENANT_ID=stripped]
I0417 08:12:07.133563 3245281 nodeserver.go:355] target /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount
protocol fuse2
volumeId frontend-storage-account#bundle-reports-container#handle
context map[AzureStorageAuthType:spn AzureStorageSPNClientID:stripped AzureStorageSPNTenantID:stripped containerName:frontend-bundle-reports protocol:fuse2 storageAccount:stripped]
mountflags [-o ro --virtual-directory=true -o allow_other]
mountOptions [-o ro --virtual-directory=true -o allow_other --tmp-path=/mnt/frontend-storage-account#bundle-reports-container#handle --container-name=frontend-bundle-reports --pre-mount-validate=true --use-https=true --cancel-list-on-mount-seconds=10 --empty-dir-check=false]
args /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount -o ro --virtual-directory=true -o allow_other --tmp-path=/mnt/frontend-storage-account#bundle-reports-container#handle --container-name=frontend-bundle-reports --pre-mount-validate=true --use-https=true --cancel-list-on-mount-seconds=10 --empty-dir-check=false
serverAddress stripped.blob.core.windows.net
I0417 08:12:07.133577 3245281 nodeserver.go:154] start connecting to blobfuse proxy, protocol: fuse2, args: /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount -o ro --virtual-directory=true -o allow_other --tmp-path=/mnt/frontend-storage-account#bundle-reports-container#handle --container-name=frontend-bundle-reports --pre-mount-validate=true --use-https=true --cancel-list-on-mount-seconds=10 --empty-dir-check=false
I0417 08:12:07.133985 3245281 nodeserver.go:163] begin to mount with blobfuse proxy, protocol: fuse2, args: /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount -o ro --virtual-directory=true -o allow_other --tmp-path=/mnt/frontend-storage-account#bundle-reports-container#handle --container-name=frontend-bundle-reports --pre-mount-validate=true --use-https=true --cancel-list-on-mount-seconds=10 --empty-dir-check=false
E0417 08:12:22.853397 3245281 nodeserver.go:166] GRPC call returned with an error:rpc error: code = Unknown desc = exit status 1 Error: failed to daemonize application [daemon: Resource temporarily unavailable]
E0417 08:12:22.853441 3245281 nodeserver.go:377] rpc error: code = Internal desc = Mount failed with error: rpc error: code = Unknown desc = exit status 1 Error: failed to daemonize application [daemon: Resource temporarily unavailable]
, output: 
I0417 08:12:22.853534 3245281 mount_linux.go:361] Unmounting /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount
E0417 08:12:22.854910 3245281 utils.go:80] GRPC error: rpc error: code = Internal desc = Mount failed with error: rpc error: code = Unknown desc = exit status 1 Error: failed to daemonize application [daemon: Resource temporarily unavailable]
, output: 
I0417 08:12:23.915715 3245281 utils.go:75] GRPC call: /csi.v1.Node/NodeStageVolume
I0417 08:12:23.915728 3245281 utils.go:76] GRPC request: {"secrets":"***stripped***","staging_target_path":"/var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount","volume_capability":{"AccessType":{"Mount":{"mount_flags":["-o ro","--virtual-directory=true","-o allow_other"]}},"access_mode":{"mode":3}},"volume_context":{"AzureStorageAuthType":"spn","AzureStorageSPNClientID":"stripped","AzureStorageSPNTenantID":"stripped","containerName":"frontend-bundle-reports","protocol":"fuse2","storageAccount":"stripped"},"volume_id":"frontend-storage-account#bundle-reports-container#handle"}
I0417 08:12:23.916227 3245281 blob.go:416] volumeID(frontend-storage-account#bundle-reports-container#handle) authEnv: [AZURE_STORAGE_AUTH_TYPE=spn AZURE_STORAGE_SPN_CLIENT_ID=stripped AZURE_STORAGE_SPN_TENANT_ID=stripped]
I0417 08:12:23.916271 3245281 nodeserver.go:355] target /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount
protocol fuse2
volumeId frontend-storage-account#bundle-reports-container#handle
context map[AzureStorageAuthType:spn AzureStorageSPNClientID:stripped AzureStorageSPNTenantID:stripped containerName:frontend-bundle-reports protocol:fuse2 storageAccount:stripped]
mountflags [-o ro --virtual-directory=true -o allow_other]
mountOptions [-o ro --virtual-directory=true -o allow_other --tmp-path=/mnt/frontend-storage-account#bundle-reports-container#handle --container-name=frontend-bundle-reports --pre-mount-validate=true --use-https=true --cancel-list-on-mount-seconds=10 --empty-dir-check=false]
args /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount -o ro --virtual-directory=true -o allow_other --tmp-path=/mnt/frontend-storage-account#bundle-reports-container#handle --container-name=frontend-bundle-reports --pre-mount-validate=true --use-https=true --cancel-list-on-mount-seconds=10 --empty-dir-check=false
serverAddress stripped.blob.core.windows.net
I0417 08:12:23.916291 3245281 nodeserver.go:154] start connecting to blobfuse proxy, protocol: fuse2, args: /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount -o ro --virtual-directory=true -o allow_other --tmp-path=/mnt/frontend-storage-account#bundle-reports-container#handle --container-name=frontend-bundle-reports --pre-mount-validate=true --use-https=true --cancel-list-on-mount-seconds=10 --empty-dir-check=false
I0417 08:12:23.917058 3245281 nodeserver.go:163] begin to mount with blobfuse proxy, protocol: fuse2, args: /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount -o ro --virtual-directory=true -o allow_other --tmp-path=/mnt/frontend-storage-account#bundle-reports-container#handle --container-name=frontend-bundle-reports --pre-mount-validate=true --use-https=true --cancel-list-on-mount-seconds=10 --empty-dir-check=false
I0417 08:12:39.674666 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 08:12:39.694049 3245281 mount_linux.go:283] Detected umount with safe 'not mounted' behavior

...

@kvet I could imagine where the problem is, in v1.19.3, we set 3s as mount timeout, usually 3s is enough, while in your case, it costs 18s for blobfuse2 mount.
@vibhansa-msft do you know is there a possible reason why blobfuse2 mount took so long time?
In the meantime, we will increase the 3s timeout as 30s at least in the CSI driver.

@vibhansa-msft
Copy link
Member

If this is new blobfuse version, then the fix to wait for the child mount to complete is embedded and now onwards we may see little more delay in mount completion. However, it shall be few seconds only and not in 10s. For any higher timeouts we shall look at the logs. We try to validate the connection with storage account if the response from server is slow for some reason, then mount will take that much time to complete as well.

@kvet
Copy link

kvet commented Apr 17, 2023

@andyzhangx I found something suspicious in the blobfuse2 logs. Attaching them...

blobfuse2 logs
Apr 17 08:11:53 stripped blobfuse2[3250436]: LOG_WARNING [mount.go (364)]: mount: unsupported v1 CLI parameter: pre-mount-validate is always true in blobfuse2.
Apr 17 08:11:53 stripped blobfuse2[3250436]: LOG_CRIT [mount.go (384)]: Starting Blobfuse2 Mount : 2.0.2 on [Ubuntu 18.04.6 LTS]
Apr 17 08:11:53 stripped blobfuse2[3250436]: LOG_CRIT [mount.go (385)]: Logging level set to : LOG_WARNING
Apr 17 08:12:08 stripped blobfuse2[3250876]: LOG_WARNING [mount.go (364)]: mount: unsupported v1 CLI parameter: pre-mount-validate is always true in blobfuse2.
Apr 17 08:12:08 stripped blobfuse2[3250876]: LOG_CRIT [mount.go (384)]: Starting Blobfuse2 Mount : 2.0.2 on [Ubuntu 18.04.6 LTS]
Apr 17 08:12:08 stripped blobfuse2[3250876]: LOG_CRIT [mount.go (385)]: Logging level set to : LOG_WARNING
Apr 17 08:12:12 stripped blobfuse2[3251081]: LOG_WARNING [mount.go (364)]: mount: unsupported v1 CLI parameter: pre-mount-validate is always true in blobfuse2.
Apr 17 08:12:12 stripped blobfuse2[3251081]: LOG_CRIT [mount.go (384)]: Starting Blobfuse2 Mount : 2.0.2 on [Ubuntu 18.04.6 LTS]
Apr 17 08:12:12 stripped blobfuse2[3251081]: LOG_CRIT [mount.go (385)]: Logging level set to : LOG_WARNING
Apr 17 08:12:22 stripped blobfuse2[3251081]: LOG_ERR [mount.go (406)]: mount : failed to daemonize application [daemon: Resource temporarily unavailable]
Apr 17 08:12:29 stripped blobfuse2[3251491]: LOG_WARNING [mount.go (364)]: mount: unsupported v1 CLI parameter: pre-mount-validate is always true in blobfuse2.
Apr 17 08:12:29 stripped blobfuse2[3251491]: LOG_CRIT [mount.go (384)]: Starting Blobfuse2 Mount : 2.0.2 on [Ubuntu 18.04.6 LTS]
Apr 17 08:12:29 stripped blobfuse2[3251491]: LOG_CRIT [mount.go (385)]: Logging level set to : LOG_WARNING
Apr 17 08:12:45 stripped blobfuse2[3251931]: LOG_WARNING [mount.go (364)]: mount: unsupported v1 CLI parameter: pre-mount-validate is always true in blobfuse2.
Apr 17 08:12:45 stripped blobfuse2[3251931]: LOG_CRIT [mount.go (384)]: Starting Blobfuse2 Mount : 2.0.2 on [Ubuntu 18.04.6 LTS]
Apr 17 08:12:45 stripped blobfuse2[3251931]: LOG_CRIT [mount.go (385)]: Logging level set to : LOG_WARNING
Apr 17 08:12:50 stripped blobfuse2[3252169]: LOG_WARNING [mount.go (364)]: mount: unsupported v1 CLI parameter: pre-mount-validate is always true in blobfuse2.
Apr 17 08:12:50 stripped blobfuse2[3252169]: LOG_CRIT [mount.go (384)]: Starting Blobfuse2 Mount : 2.0.2 on [Ubuntu 18.04.6 LTS]
Apr 17 08:12:50 stripped blobfuse2[3252169]: LOG_CRIT [mount.go (385)]: Logging level set to : LOG_WARNING
Apr 17 08:13:00 stripped blobfuse2[3252169]: LOG_ERR [mount.go (406)]: mount : failed to daemonize application [daemon: Resource temporarily unavailable]
Apr 17 08:13:09 stripped blobfuse2[3252648]: LOG_WARNING [mount.go (364)]: mount: unsupported v1 CLI parameter: pre-mount-validate is always true in blobfuse2.
Apr 17 08:13:09 stripped blobfuse2[3252648]: LOG_CRIT [mount.go (384)]: Starting Blobfuse2 Mount : 2.0.2 on [Ubuntu 18.04.6 LTS]
Apr 17 08:13:09 stripped blobfuse2[3252648]: LOG_CRIT [mount.go (385)]: Logging level set to : LOG_WARNING
Apr 17 08:13:25 stripped blobfuse2[3252953]: LOG_WARNING [mount.go (364)]: mount: unsupported v1 CLI parameter: pre-mount-validate is always true in blobfuse2.
Apr 17 08:13:25 stripped blobfuse2[3252953]: LOG_CRIT [mount.go (384)]: Starting Blobfuse2 Mount : 2.0.2 on [Ubuntu 18.04.6 LTS]
Apr 17 08:13:25 stripped blobfuse2[3252953]: LOG_CRIT [mount.go (385)]: Logging level set to : LOG_WARNING
Apr 17 08:13:30 stripped blobfuse2[3252953]: LOG_ERR [libfuse2_handler.go (178)]: Libfuse::initFuse : failed to mount fuse
Apr 17 08:13:30 stripped blobfuse2[3252953]: LOG_ERR [libfuse.go (150)]: Libfuse::Start : Failed to init fuse [failed to mount fuse]
Apr 17 08:13:30 stripped blobfuse2[3252953]: LOG_ERR [mount.go (483)]: mount: error unable to start pipeline [failed to mount fuse]
Apr 17 08:13:36 stripped blobfuse2[3253293]: LOG_WARNING [mount.go (364)]: mount: unsupported v1 CLI parameter: pre-mount-validate is always true in blobfuse2.
Apr 17 08:13:36 stripped blobfuse2[3253293]: LOG_CRIT [mount.go (384)]: Starting Blobfuse2 Mount : 2.0.2 on [Ubuntu 18.04.6 LTS]
Apr 17 08:13:36 stripped blobfuse2[3253293]: LOG_CRIT [mount.go (385)]: Logging level set to : LOG_WARNING
Apr 17 08:13:52 stripped blobfuse2[3253720]: LOG_WARNING [mount.go (364)]: mount: unsupported v1 CLI parameter: pre-mount-validate is always true in blobfuse2.
Apr 17 08:13:52 stripped blobfuse2[3253720]: LOG_CRIT [mount.go (384)]: Starting Blobfuse2 Mount : 2.0.2 on [Ubuntu 18.04.6 LTS]
Apr 17 08:13:52 stripped blobfuse2[3253720]: LOG_CRIT [mount.go (385)]: Logging level set to : LOG_WARNING
Apr 17 08:13:57 stripped blobfuse2[3253720]: LOG_ERR [libfuse2_handler.go (178)]: Libfuse::initFuse : failed to mount fuse
Apr 17 08:13:57 stripped blobfuse2[3253720]: LOG_ERR [libfuse.go (150)]: Libfuse::Start : Failed to init fuse [failed to mount fuse]
Apr 17 08:13:57 stripped blobfuse2[3253720]: LOG_ERR [mount.go (483)]: mount: error unable to start pipeline [failed to mount fuse]
Apr 17 08:14:11 stripped blobfuse2[3254337]: LOG_WARNING [mount.go (364)]: mount: unsupported v1 CLI parameter: pre-mount-validate is always true in blobfuse2.
Apr 17 08:14:11 stripped blobfuse2[3254337]: LOG_CRIT [mount.go (384)]: Starting Blobfuse2 Mount : 2.0.2 on [Ubuntu 18.04.6 LTS]
Apr 17 08:14:11 stripped blobfuse2[3254337]: LOG_CRIT [mount.go (385)]: Logging level set to : LOG_WARNING
Apr 17 08:14:27 stripped blobfuse2[3254639]: LOG_WARNING [mount.go (364)]: mount: unsupported v1 CLI parameter: pre-mount-validate is always true in blobfuse2.
Apr 17 08:14:27 stripped blobfuse2[3254639]: LOG_CRIT [mount.go (384)]: Starting Blobfuse2 Mount : 2.0.2 on [Ubuntu 18.04.6 LTS]
Apr 17 08:14:27 stripped blobfuse2[3254639]: LOG_CRIT [mount.go (385)]: Logging level set to : LOG_WARNING
Apr 17 08:14:32 stripped blobfuse2[3254639]: LOG_ERR [libfuse2_handler.go (178)]: Libfuse::initFuse : failed to mount fuse
Apr 17 08:14:32 stripped blobfuse2[3254639]: LOG_ERR [libfuse.go (150)]: Libfuse::Start : Failed to init fuse [failed to mount fuse]
Apr 17 08:14:32 stripped blobfuse2[3254639]: LOG_ERR [mount.go (483)]: mount: error unable to start pipeline [failed to mount fuse]
Apr 17 08:15:02 stripped blobfuse2[3255555]: LOG_WARNING [mount.go (364)]: mount: unsupported v1 CLI parameter: pre-mount-validate is always true in blobfuse2.
Apr 17 08:15:02 stripped blobfuse2[3255555]: LOG_CRIT [mount.go (384)]: Starting Blobfuse2 Mount : 2.0.2 on [Ubuntu 18.04.6 LTS]
Apr 17 08:15:02 stripped blobfuse2[3255555]: LOG_CRIT [mount.go (385)]: Logging level set to : LOG_WARNING
Apr 17 08:15:17 stripped blobfuse2[3255983]: LOG_WARNING [mount.go (364)]: mount: unsupported v1 CLI parameter: pre-mount-validate is always true in blobfuse2.
Apr 17 08:15:17 stripped blobfuse2[3255983]: LOG_CRIT [mount.go (384)]: Starting Blobfuse2 Mount : 2.0.2 on [Ubuntu 18.04.6 LTS]
Apr 17 08:15:17 stripped blobfuse2[3255983]: LOG_CRIT [mount.go (385)]: Logging level set to : LOG_WARNING
Apr 17 08:15:23 stripped blobfuse2[3255983]: LOG_ERR [libfuse2_handler.go (178)]: Libfuse::initFuse : failed to mount fuse
Apr 17 08:15:23 stripped blobfuse2[3255983]: LOG_ERR [libfuse.go (150)]: Libfuse::Start : Failed to init fuse [failed to mount fuse]
Apr 17 08:15:23 stripped blobfuse2[3255983]: LOG_ERR [mount.go (483)]: mount: error unable to start pipeline [failed to mount fuse]
Apr 17 08:16:24 stripped blobfuse2[3257659]: LOG_WARNING [mount.go (364)]: mount: unsupported v1 CLI parameter: pre-mount-validate is always true in blobfuse2.
Apr 17 08:16:24 stripped blobfuse2[3257659]: LOG_CRIT [mount.go (384)]: Starting Blobfuse2 Mount : 2.0.2 on [Ubuntu 18.04.6 LTS]
Apr 17 08:16:24 stripped blobfuse2[3257659]: LOG_CRIT [mount.go (385)]: Logging level set to : LOG_WARNING
Apr 17 08:16:40 stripped blobfuse2[3258081]: LOG_WARNING [mount.go (364)]: mount: unsupported v1 CLI parameter: pre-mount-validate is always true in blobfuse2.
Apr 17 08:16:40 stripped blobfuse2[3258081]: LOG_CRIT [mount.go (384)]: Starting Blobfuse2 Mount : 2.0.2 on [Ubuntu 18.04.6 LTS]
Apr 17 08:16:40 stripped blobfuse2[3258081]: LOG_CRIT [mount.go (385)]: Logging level set to : LOG_WARNING
Apr 17 08:16:46 stripped blobfuse2[3258081]: LOG_ERR [libfuse2_handler.go (178)]: Libfuse::initFuse : failed to mount fuse
Apr 17 08:16:46 stripped blobfuse2[3258081]: LOG_ERR [libfuse.go (150)]: Libfuse::Start : Failed to init fuse [failed to mount fuse]
Apr 17 08:16:46 stripped blobfuse2[3258081]: LOG_ERR [mount.go (483)]: mount: error unable to start pipeline [failed to mount fuse]
Apr 17 08:18:45 stripped blobfuse2[3261018]: LOG_WARNING [mount.go (364)]: mount: unsupported v1 CLI parameter: pre-mount-validate is always true in blobfuse2.
Apr 17 08:18:45 stripped blobfuse2[3261018]: LOG_CRIT [mount.go (384)]: Starting Blobfuse2 Mount : 2.0.2 on [Ubuntu 18.04.6 LTS]
Apr 17 08:18:45 stripped blobfuse2[3261018]: LOG_CRIT [mount.go (385)]: Logging level set to : LOG_WARNING
Apr 17 08:19:01 stripped blobfuse2[3261295]: LOG_WARNING [mount.go (364)]: mount: unsupported v1 CLI parameter: pre-mount-validate is always true in blobfuse2.
Apr 17 08:19:01 stripped blobfuse2[3261295]: LOG_CRIT [mount.go (384)]: Starting Blobfuse2 Mount : 2.0.2 on [Ubuntu 18.04.6 LTS]
Apr 17 08:19:01 stripped blobfuse2[3261295]: LOG_CRIT [mount.go (385)]: Logging level set to : LOG_WARNING
Apr 17 08:19:06 stripped blobfuse2[3261295]: LOG_ERR [libfuse2_handler.go (178)]: Libfuse::initFuse : failed to mount fuse
Apr 17 08:19:06 stripped blobfuse2[3261295]: LOG_ERR [libfuse.go (150)]: Libfuse::Start : Failed to init fuse [failed to mount fuse]
Apr 17 08:19:06 stripped blobfuse2[3261295]: LOG_ERR [mount.go (483)]: mount: error unable to start pipeline [failed to mount fuse]
Apr 17 08:21:06 stripped blobfuse2[3264273]: LOG_WARNING [mount.go (364)]: mount: unsupported v1 CLI parameter: pre-mount-validate is always true in blobfuse2.
Apr 17 08:21:06 stripped blobfuse2[3264273]: LOG_CRIT [mount.go (384)]: Starting Blobfuse2 Mount : 2.0.2 on [Ubuntu 18.04.6 LTS]
Apr 17 08:21:06 stripped blobfuse2[3264273]: LOG_CRIT [mount.go (385)]: Logging level set to : LOG_WARNING
Apr 17 08:21:22 stripped blobfuse2[3264643]: LOG_WARNING [mount.go (364)]: mount: unsupported v1 CLI parameter: pre-mount-validate is always true in blobfuse2.
Apr 17 08:21:22 stripped blobfuse2[3264643]: LOG_CRIT [mount.go (384)]: Starting Blobfuse2 Mount : 2.0.2 on [Ubuntu 18.04.6 LTS]
Apr 17 08:21:22 stripped blobfuse2[3264643]: LOG_CRIT [mount.go (385)]: Logging level set to : LOG_WARNING
Apr 17 08:21:27 stripped blobfuse2[3264643]: LOG_ERR [libfuse2_handler.go (178)]: Libfuse::initFuse : failed to mount fuse
Apr 17 08:21:27 stripped blobfuse2[3264643]: LOG_ERR [libfuse.go (150)]: Libfuse::Start : Failed to init fuse [failed to mount fuse]
Apr 17 08:21:27 stripped blobfuse2[3264643]: LOG_ERR [mount.go (483)]: mount: error unable to start pipeline [failed to mount fuse]
Apr 17 08:23:27 stripped blobfuse2[3267585]: LOG_WARNING [mount.go (364)]: mount: unsupported v1 CLI parameter: pre-mount-validate is always true in blobfuse2.
Apr 17 08:23:27 stripped blobfuse2[3267585]: LOG_CRIT [mount.go (384)]: Starting Blobfuse2 Mount : 2.0.2 on [Ubuntu 18.04.6 LTS]
Apr 17 08:23:27 stripped blobfuse2[3267585]: LOG_CRIT [mount.go (385)]: Logging level set to : LOG_WARNING
Apr 17 08:23:43 stripped blobfuse2[3268007]: LOG_WARNING [mount.go (364)]: mount: unsupported v1 CLI parameter: pre-mount-validate is always true in blobfuse2.
Apr 17 08:23:43 stripped blobfuse2[3268007]: LOG_CRIT [mount.go (384)]: Starting Blobfuse2 Mount : 2.0.2 on [Ubuntu 18.04.6 LTS]
Apr 17 08:23:43 stripped blobfuse2[3268007]: LOG_CRIT [mount.go (385)]: Logging level set to : LOG_WARNING
Apr 17 08:23:48 stripped blobfuse2[3268007]: LOG_ERR [libfuse2_handler.go (178)]: Libfuse::initFuse : failed to mount fuse
Apr 17 08:23:48 stripped blobfuse2[3268007]: LOG_ERR [libfuse.go (150)]: Libfuse::Start : Failed to init fuse [failed to mount fuse]
Apr 17 08:23:48 stripped blobfuse2[3268007]: LOG_ERR [mount.go (483)]: mount: error unable to start pipeline [failed to mount fuse]
Apr 17 08:25:48 stripped blobfuse2[3271067]: LOG_WARNING [mount.go (364)]: mount: unsupported v1 CLI parameter: pre-mount-validate is always true in blobfuse2.
Apr 17 08:25:48 stripped blobfuse2[3271067]: LOG_CRIT [mount.go (384)]: Starting Blobfuse2 Mount : 2.0.2 on [Ubuntu 18.04.6 LTS]
Apr 17 08:25:48 stripped blobfuse2[3271067]: LOG_CRIT [mount.go (385)]: Logging level set to : LOG_WARNING
Apr 17 08:26:03 stripped blobfuse2[3271368]: LOG_WARNING [mount.go (364)]: mount: unsupported v1 CLI parameter: pre-mount-validate is always true in blobfuse2.
Apr 17 08:26:03 stripped blobfuse2[3271368]: LOG_CRIT [mount.go (384)]: Starting Blobfuse2 Mount : 2.0.2 on [Ubuntu 18.04.6 LTS]
Apr 17 08:26:03 stripped blobfuse2[3271368]: LOG_CRIT [mount.go (385)]: Logging level set to : LOG_WARNING
Apr 17 08:26:09 stripped blobfuse2[3271368]: LOG_ERR [libfuse2_handler.go (178)]: Libfuse::initFuse : failed to mount fuse
Apr 17 08:26:09 stripped blobfuse2[3271368]: LOG_ERR [libfuse.go (150)]: Libfuse::Start : Failed to init fuse [failed to mount fuse]
Apr 17 08:26:09 stripped blobfuse2[3271368]: LOG_ERR [mount.go (483)]: mount: error unable to start pipeline [failed to mount fuse]
Apr 17 08:28:08 stripped blobfuse2[3274363]: LOG_WARNING [mount.go (364)]: mount: unsupported v1 CLI parameter: pre-mount-validate is always true in blobfuse2.
Apr 17 08:28:08 stripped blobfuse2[3274363]: LOG_CRIT [mount.go (384)]: Starting Blobfuse2 Mount : 2.0.2 on [Ubuntu 18.04.6 LTS]
Apr 17 08:28:08 stripped blobfuse2[3274363]: LOG_CRIT [mount.go (385)]: Logging level set to : LOG_WARNING
Apr 17 08:28:24 stripped blobfuse2[3274685]: LOG_WARNING [mount.go (364)]: mount: unsupported v1 CLI parameter: pre-mount-validate is always true in blobfuse2.
Apr 17 08:28:24 stripped blobfuse2[3274685]: LOG_CRIT [mount.go (384)]: Starting Blobfuse2 Mount : 2.0.2 on [Ubuntu 18.04.6 LTS]
Apr 17 08:28:24 stripped blobfuse2[3274685]: LOG_CRIT [mount.go (385)]: Logging level set to : LOG_WARNING
Apr 17 08:28:30 stripped blobfuse2[3274685]: LOG_ERR [libfuse2_handler.go (178)]: Libfuse::initFuse : failed to mount fuse
Apr 17 08:28:30 stripped blobfuse2[3274685]: LOG_ERR [libfuse.go (150)]: Libfuse::Start : Failed to init fuse [failed to mount fuse]
Apr 17 08:28:30 stripped blobfuse2[3274685]: LOG_ERR [mount.go (483)]: mount: error unable to start pipeline [failed to mount fuse]

@vibhansa-msft
Copy link
Member

Is allow_other enabled here ?
"mount: error unable to start pipeline [failed to mount fuse]" : this points to some issue in init of the libfuse library itself. Either you can enable log_debug and then try again or validate allow_other option is enabled in /etc/fuse.conf

@kvet
Copy link

kvet commented Apr 17, 2023

@vibhansa-msft I am mounting the ABS container with the following mount options: -o allow_other -o ro --virtual-directory=true

Here is the content of `/etc/fuse.conf` on the node from which I sent the logs
# /etc/fuse.conf - Configuration file for Filesystem in Userspace (FUSE)

# Set the maximum number of FUSE mounts allowed to non-root users.
# The default is 1000.
#mount_max = 1000

# Allow non-root users to specify the allow_other or allow_root mount options.
#user_allow_other

I've also checked the node where the current blobfuse1 deployment is running (almost the same options but protocol: fuse and no --virtual-directory=true). And the /etc/fuse.conf has the same contents.

Moreover, with the csi driver 1.19.2 on a fresh node (the one I am sending you the contents of /etc/fuse.conf) I was able to start blobfuse2 once.

Can you please clarify what exact information you need me to provide in order to mitigate the issue? We are eager to use blobfuse2 as it performs way better in our use case.

@vibhansa-msft
Copy link
Member

We will need blobfuse logs to understand what took time during the mount operation. If you can enable log_debug and retry that might be useful.

@kvet
Copy link

kvet commented Apr 17, 2023

When I started the new testing I noticed the new driver version had been deployed to our cluster. For which huge thank you, guys! And during my testing, I haven't experienced any issue with mounting and I can classify the original request as resolved. Hope it will work reliably.

Here are the logs from the new driver version and from a fresh node (to which no one blobfuse2 mount was done before). Hope it will help you to find out the root cause.

csi logs
I0417 11:57:26.382550 1067992 main.go:117] set up prometheus server on [::]:29635
I0417 11:57:26.382779 1067992 blob.go:235] 
DRIVER INFORMATION:
-------------------
Build Date: "2023-04-17T11:31:46Z"
Compiler: gc
Driver Name: blob.csi.azure.com
Driver Version: v1.19.4
Git Commit: 60c085f6efddc41cca32eabcae8e5e5eed4b905e
Go Version: go1.19.4
Platform: linux/amd64

Streaming logs below:
I0417 11:57:26.382797 1067992 blob.go:238] driver userAgent: blob.csi.azure.com/v1.19.4 AKS
I0417 11:57:26.382883 1067992 azure.go:73] set QPS(25.000000) and QPS Burst(50) for driver kubeClient
I0417 11:57:26.383120 1067992 azure.go:87] reading cloud config from secret kube-system/azure-cloud-provider
I0417 11:57:31.433438 1067992 azure.go:94] InitializeCloudFromSecret: failed to get cloud config from secret kube-system/azure-cloud-provider: failed to get secret kube-system/azure-cloud-provider: secrets "azure-cloud-provider" not found
I0417 11:57:31.433457 1067992 azure.go:99] could not read cloud config from secret kube-system/azure-cloud-provider
I0417 11:57:31.433462 1067992 azure.go:102] AZURE_CREDENTIAL_FILE env var set as /etc/kubernetes/azure.json
I0417 11:57:31.433482 1067992 azure.go:113] read cloud config from file: /etc/kubernetes/azure.json successfully
I0417 11:57:31.434086 1067992 azure_auth.go:245] Using AzurePublicCloud environment
I0417 11:57:31.434105 1067992 azure_auth.go:96] azure: using managed identity extension to retrieve access token
I0417 11:57:31.434109 1067992 azure_auth.go:102] azure: using User Assigned MSI ID to retrieve access token
I0417 11:57:31.434138 1067992 azure_auth.go:113] azure: User Assigned MSI ID is client ID
I0417 11:57:31.434165 1067992 azure.go:775] Azure cloudprovider using try backoff: retries=6, exponent=1.500000, duration=5, jitter=1.000000
I0417 11:57:31.434193 1067992 azure_interfaceclient.go:74] Azure InterfacesClient (read ops) using rate limit config: QPS=10, bucket=100
I0417 11:57:31.434201 1067992 azure_interfaceclient.go:77] Azure InterfacesClient (write ops) using rate limit config: QPS=10, bucket=100
I0417 11:57:31.434212 1067992 azure_vmsizeclient.go:68] Azure VirtualMachineSizesClient (read ops) using rate limit config: QPS=10, bucket=100
I0417 11:57:31.434218 1067992 azure_vmsizeclient.go:71] Azure VirtualMachineSizesClient (write ops) using rate limit config: QPS=10, bucket=100
I0417 11:57:31.434227 1067992 azure_snapshotclient.go:70] Azure SnapshotClient (read ops) using rate limit config: QPS=10, bucket=100
I0417 11:57:31.434230 1067992 azure_snapshotclient.go:73] Azure SnapshotClient (write ops) using rate limit config: QPS=10, bucket=100
I0417 11:57:31.434239 1067992 azure_storageaccountclient.go:70] Azure StorageAccountClient (read ops) using rate limit config: QPS=10, bucket=100
I0417 11:57:31.434246 1067992 azure_storageaccountclient.go:73] Azure StorageAccountClient (write ops) using rate limit config: QPS=10, bucket=100
I0417 11:57:31.434257 1067992 azure_diskclient.go:68] Azure DisksClient using API version: 2022-03-02
I0417 11:57:31.434265 1067992 azure_diskclient.go:73] Azure DisksClient (read ops) using rate limit config: QPS=10, bucket=100
I0417 11:57:31.434269 1067992 azure_diskclient.go:76] Azure DisksClient (write ops) using rate limit config: QPS=10, bucket=100
I0417 11:57:31.434279 1067992 azure_vmclient.go:70] Azure VirtualMachine client (read ops) using rate limit config: QPS=10, bucket=100
I0417 11:57:31.434286 1067992 azure_vmclient.go:73] Azure VirtualMachine client (write ops) using rate limit config: QPS=10, bucket=100
I0417 11:57:31.434292 1067992 azure_vmssclient.go:70] Azure VirtualMachineScaleSetClient (read ops) using rate limit config: QPS=10, bucket=100
I0417 11:57:31.434299 1067992 azure_vmssclient.go:73] Azure VirtualMachineScaleSetClient (write ops) using rate limit config: QPS=10, bucket=100
I0417 11:57:31.434306 1067992 azure_vmssvmclient.go:75] Azure vmssVM client (read ops) using rate limit config: QPS=10, bucket=100
I0417 11:57:31.434313 1067992 azure_vmssvmclient.go:78] Azure vmssVM client (write ops) using rate limit config: QPS=10, bucket=100
I0417 11:57:31.434323 1067992 azure_routeclient.go:69] Azure RoutesClient (read ops) using rate limit config: QPS=10, bucket=100
I0417 11:57:31.434329 1067992 azure_routeclient.go:72] Azure RoutesClient (write ops) using rate limit config: QPS=10, bucket=100
I0417 11:57:31.434337 1067992 azure_subnetclient.go:70] Azure SubnetsClient (read ops) using rate limit config: QPS=10, bucket=100
I0417 11:57:31.434340 1067992 azure_subnetclient.go:73] Azure SubnetsClient (write ops) using rate limit config: QPS=10, bucket=100
I0417 11:57:31.434345 1067992 azure_routetableclient.go:69] Azure RouteTablesClient (read ops) using rate limit config: QPS=10, bucket=100
I0417 11:57:31.434351 1067992 azure_routetableclient.go:72] Azure RouteTablesClient (write ops) using rate limit config: QPS=10, bucket=100
I0417 11:57:31.434357 1067992 azure_loadbalancerclient.go:70] Azure LoadBalancersClient (read ops) using rate limit config: QPS=10, bucket=100
I0417 11:57:31.434359 1067992 azure_loadbalancerclient.go:73] Azure LoadBalancersClient (write ops) using rate limit config: QPS=10, bucket=100
I0417 11:57:31.434365 1067992 azure_securitygroupclient.go:70] Azure SecurityGroupsClient (read ops) using rate limit config: QPS=10, bucket=100
I0417 11:57:31.434369 1067992 azure_securitygroupclient.go:73] Azure SecurityGroupsClient (write ops) using rate limit config: QPS=10, bucket=100
I0417 11:57:31.434375 1067992 azure_publicipclient.go:74] Azure PublicIPAddressesClient (read ops) using rate limit config: QPS=10, bucket=100
I0417 11:57:31.434378 1067992 azure_publicipclient.go:77] Azure PublicIPAddressesClient (write ops) using rate limit config: QPS=10, bucket=100
I0417 11:57:31.434391 1067992 azure_blobclient.go:67] Azure BlobClient using API version: 2021-09-01
I0417 11:57:31.434400 1067992 azure_vmasclient.go:70] Azure AvailabilitySetsClient (read ops) using rate limit config: QPS=10, bucket=100
I0417 11:57:31.434403 1067992 azure_vmasclient.go:73] Azure AvailabilitySetsClient  (write ops) using rate limit config: QPS=10, bucket=100
I0417 11:57:31.434449 1067992 azure.go:1006] attach/detach disk operation rate limit QPS: 6.000000, Bucket: 10
I0417 11:57:31.434468 1067992 azure.go:149] starting node server on node(node-01)
I0417 11:57:31.434479 1067992 blob.go:243] cloud: AzurePublicCloud, location: westeurope, rg: node-rg, VnetName: vnet, VnetResourceGroup: vnet-rg, SubnetName: main
I0417 11:57:31.436663 1067992 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 11:57:31.436706 1067992 driver.go:80] Enabling controller service capability: CREATE_DELETE_VOLUME
I0417 11:57:31.436713 1067992 driver.go:80] Enabling controller service capability: EXPAND_VOLUME
I0417 11:57:31.436716 1067992 driver.go:80] Enabling controller service capability: SINGLE_NODE_MULTI_WRITER
I0417 11:57:31.436720 1067992 driver.go:99] Enabling volume access mode: SINGLE_NODE_WRITER
I0417 11:57:31.436723 1067992 driver.go:99] Enabling volume access mode: SINGLE_NODE_READER_ONLY
I0417 11:57:31.436725 1067992 driver.go:99] Enabling volume access mode: SINGLE_NODE_SINGLE_WRITER
I0417 11:57:31.436728 1067992 driver.go:99] Enabling volume access mode: SINGLE_NODE_MULTI_WRITER
I0417 11:57:31.436730 1067992 driver.go:99] Enabling volume access mode: MULTI_NODE_READER_ONLY
I0417 11:57:31.436733 1067992 driver.go:99] Enabling volume access mode: MULTI_NODE_SINGLE_WRITER
I0417 11:57:31.436735 1067992 driver.go:99] Enabling volume access mode: MULTI_NODE_MULTI_WRITER
I0417 11:57:31.436737 1067992 driver.go:90] Enabling node service capability: STAGE_UNSTAGE_VOLUME
I0417 11:57:31.436741 1067992 driver.go:90] Enabling node service capability: SINGLE_NODE_MULTI_WRITER
I0417 11:57:31.436876 1067992 server.go:114] Listening for connections on address: &net.UnixAddr{Name:"//csi/csi.sock", Net:"unix"}
I0417 11:57:31.960401 1067992 utils.go:75] GRPC call: /csi.v1.Identity/GetPluginInfo
I0417 11:57:31.960421 1067992 utils.go:76] GRPC request: {}
I0417 11:57:31.961431 1067992 utils.go:82] GRPC response: {"name":"blob.csi.azure.com","vendor_version":"v1.19.4"}
I0417 11:57:32.250782 1067992 utils.go:75] GRPC call: /csi.v1.Identity/GetPluginInfo
I0417 11:57:32.250796 1067992 utils.go:76] GRPC request: {}
I0417 11:57:32.250856 1067992 utils.go:82] GRPC response: {"name":"blob.csi.azure.com","vendor_version":"v1.19.4"}
I0417 11:57:32.517320 1067992 utils.go:75] GRPC call: /csi.v1.Node/NodeGetInfo
I0417 11:57:32.517334 1067992 utils.go:76] GRPC request: {}
I0417 11:57:32.517378 1067992 utils.go:82] GRPC response: {"node_id":"node-01"}
I0417 14:26:30.977015 1067992 utils.go:75] GRPC call: /csi.v1.Node/NodeStageVolume
I0417 14:26:30.977029 1067992 utils.go:76] GRPC request: {"secrets":"***stripped***","staging_target_path":"/var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount","volume_capability":{"AccessType":{"Mount":{"mount_flags":["-o ro","--log-level=LOG_DEBUG","--virtual-directory=true","-o allow_other"]}},"access_mode":{"mode":3}},"volume_context":{"AzureStorageAuthType":"spn","AzureStorageSPNClientID":"stripped","AzureStorageSPNTenantID":"stripped","containerName":"frontend-bundle-reports","protocol":"fuse2","storageAccount":"strippedaccount"},"volume_id":"frontend-storage-account#bundle-reports-container#handle"}
I0417 14:26:30.977622 1067992 blob.go:416] volumeID(frontend-storage-account#bundle-reports-container#handle) authEnv: [AZURE_STORAGE_SPN_CLIENT_ID=stripped AZURE_STORAGE_SPN_TENANT_ID=stripped AZURE_STORAGE_AUTH_TYPE=spn]
I0417 14:26:30.977661 1067992 nodeserver.go:355] target /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount
protocol fuse2

volumeId frontend-storage-account#bundle-reports-container#handle
context map[AzureStorageAuthType:spn AzureStorageSPNClientID:stripped AzureStorageSPNTenantID:stripped containerName:frontend-bundle-reports protocol:fuse2 storageAccount:strippedaccount]
mountflags [-o ro --log-level=LOG_DEBUG --virtual-directory=true -o allow_other]
mountOptions [-o ro --log-level=LOG_DEBUG --virtual-directory=true -o allow_other --use-https=true --cancel-list-on-mount-seconds=10 --empty-dir-check=false --tmp-path=/mnt/frontend-storage-account#bundle-reports-container#handle --container-name=frontend-bundle-reports --pre-mount-validate=true]
args /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount -o ro --log-level=LOG_DEBUG --virtual-directory=true -o allow_other --use-https=true --cancel-list-on-mount-seconds=10 --empty-dir-check=false --tmp-path=/mnt/frontend-storage-account#bundle-reports-container#handle --container-name=frontend-bundle-reports --pre-mount-validate=true
serverAddress strippedaccount.blob.core.windows.net
I0417 14:26:30.977682 1067992 nodeserver.go:154] start connecting to blobfuse proxy, protocol: fuse2, args: /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount -o ro --log-level=LOG_DEBUG --virtual-directory=true -o allow_other --use-https=true --cancel-list-on-mount-seconds=10 --empty-dir-check=false --tmp-path=/mnt/frontend-storage-account#bundle-reports-container#handle --container-name=frontend-bundle-reports --pre-mount-validate=true
I0417 14:26:30.978212 1067992 nodeserver.go:163] begin to mount with blobfuse proxy, protocol: fuse2, args: /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount -o ro --log-level=LOG_DEBUG --virtual-directory=true -o allow_other --use-https=true --cancel-list-on-mount-seconds=10 --empty-dir-check=false --tmp-path=/mnt/frontend-storage-account#bundle-reports-container#handle --container-name=frontend-bundle-reports --pre-mount-validate=true
I0417 14:26:47.366271 1067992 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
...many similar log messages...
I0417 14:26:57.966786 1067992 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 14:26:57.966899 1067992 nodeserver.go:591] blobfuse mount at /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount success
I0417 14:26:57.966917 1067992 nodeserver.go:409] volume(frontend-storage-account#bundle-reports-container#handle) mount on "/var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount" succeeded
I0417 14:26:57.966932 1067992 utils.go:82] GRPC response: {}
I0417 14:26:57.970113 1067992 utils.go:75] GRPC call: /csi.v1.Node/NodePublishVolume
I0417 14:26:57.970125 1067992 utils.go:76] GRPC request: {"readonly":true,"staging_target_path":"/var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount","target_path":"/var/lib/kubelet/pods/63f29c64-0850-42ce-a70f-e657bf08d79c/volumes/kubernetes.io~csi/bundle-reports-volume/mount","volume_capability":{"AccessType":{"Mount":{"mount_flags":["-o ro","--log-level=LOG_DEBUG","--virtual-directory=true","-o allow_other"]}},"access_mode":{"mode":3}},"volume_context":{"AzureStorageAuthType":"spn","AzureStorageSPNClientID":"stripped","AzureStorageSPNTenantID":"stripped","containerName":"frontend-bundle-reports","csi.storage.k8s.io/ephemeral":"false","csi.storage.k8s.io/pod.name":"nginx-proxy-578cbbb7c9-tnlgh","csi.storage.k8s.io/pod.namespace":"frontend-static","csi.storage.k8s.io/pod.uid":"63f29c64-0850-42ce-a70f-e657bf08d79c","csi.storage.k8s.io/serviceAccount.name":"default","protocol":"fuse2","storageAccount":"strippedaccount"},"volume_id":"frontend-storage-account#bundle-reports-container#handle"}
I0417 14:26:57.970768 1067992 nodeserver.go:127] NodePublishVolume: volume frontend-storage-account#bundle-reports-container#handle mounting /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount at /var/lib/kubelet/pods/63f29c64-0850-42ce-a70f-e657bf08d79c/volumes/kubernetes.io~csi/bundle-reports-volume/mount with mountOptions: [bind ro]
I0417 14:26:57.970844 1067992 mount_linux.go:244] Detected OS without systemd
I0417 14:26:57.970852 1067992 mount_linux.go:219] Mounting cmd (mount) with arguments ( -o bind /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount /var/lib/kubelet/pods/63f29c64-0850-42ce-a70f-e657bf08d79c/volumes/kubernetes.io~csi/bundle-reports-volume/mount)
I0417 14:26:57.971876 1067992 mount_linux.go:219] Mounting cmd (mount) with arguments ( -o bind,remount,ro /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount /var/lib/kubelet/pods/63f29c64-0850-42ce-a70f-e657bf08d79c/volumes/kubernetes.io~csi/bundle-reports-volume/mount)
I0417 14:26:57.972891 1067992 nodeserver.go:143] NodePublishVolume: volume frontend-storage-account#bundle-reports-container#handle mount /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount at /var/lib/kubelet/pods/63f29c64-0850-42ce-a70f-e657bf08d79c/volumes/kubernetes.io~csi/bundle-reports-volume/mount successfully
I0417 14:26:57.972906 1067992 utils.go:82] GRPC response: {}
I0417 14:32:36.524469 1067992 utils.go:75] GRPC call: /csi.v1.Node/NodeUnpublishVolume
I0417 14:32:36.524488 1067992 utils.go:76] GRPC request: {"target_path":"/var/lib/kubelet/pods/63f29c64-0850-42ce-a70f-e657bf08d79c/volumes/kubernetes.io~csi/bundle-reports-volume/mount","volume_id":"frontend-storage-account#bundle-reports-container#handle"}
I0417 14:32:36.524581 1067992 nodeserver.go:205] NodeUnpublishVolume: unmounting volume frontend-storage-account#bundle-reports-container#handle on /var/lib/kubelet/pods/63f29c64-0850-42ce-a70f-e657bf08d79c/volumes/kubernetes.io~csi/bundle-reports-volume/mount
I0417 14:32:36.524670 1067992 mount_helper_common.go:93] unmounting "/var/lib/kubelet/pods/63f29c64-0850-42ce-a70f-e657bf08d79c/volumes/kubernetes.io~csi/bundle-reports-volume/mount" (corruptedMount: false, mounterCanSkipMountPointChecks: true)
I0417 14:32:36.524682 1067992 mount_linux.go:361] Unmounting /var/lib/kubelet/pods/63f29c64-0850-42ce-a70f-e657bf08d79c/volumes/kubernetes.io~csi/bundle-reports-volume/mount
I0417 14:32:36.525981 1067992 mount_helper_common.go:150] Warning: deleting path "/var/lib/kubelet/pods/63f29c64-0850-42ce-a70f-e657bf08d79c/volumes/kubernetes.io~csi/bundle-reports-volume/mount"
I0417 14:32:36.526101 1067992 nodeserver.go:210] NodeUnpublishVolume: unmount volume frontend-storage-account#bundle-reports-container#handle on /var/lib/kubelet/pods/63f29c64-0850-42ce-a70f-e657bf08d79c/volumes/kubernetes.io~csi/bundle-reports-volume/mount successfully
I0417 14:32:36.526143 1067992 utils.go:82] GRPC response: {}
I0417 14:32:36.629320 1067992 utils.go:75] GRPC call: /csi.v1.Node/NodeUnstageVolume
I0417 14:32:36.629335 1067992 utils.go:76] GRPC request: {"staging_target_path":"/var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount","volume_id":"frontend-storage-account#bundle-reports-container#handle"}
I0417 14:32:36.629441 1067992 nodeserver.go:430] NodeUnstageVolume: volume frontend-storage-account#bundle-reports-container#handle unmounting on /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount
I0417 14:32:36.629459 1067992 mount_helper_common.go:93] unmounting "/var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount" (corruptedMount: false, mounterCanSkipMountPointChecks: true)
I0417 14:32:36.629469 1067992 mount_linux.go:361] Unmounting /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount
I0417 14:32:36.630756 1067992 mount_helper_common.go:150] Warning: deleting path "/var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount"
I0417 14:32:36.631132 1067992 nodeserver.go:435] NodeUnstageVolume: volume frontend-storage-account#bundle-reports-container#handle unmount on /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount successfully
I0417 14:32:36.631151 1067992 utils.go:82] GRPC response: {}
I0417 14:33:52.539896 1067992 utils.go:75] GRPC call: /csi.v1.Node/NodeStageVolume
I0417 14:33:52.539908 1067992 utils.go:76] GRPC request: {"secrets":"***stripped***","staging_target_path":"/var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount","volume_capability":{"AccessType":{"Mount":{"mount_flags":["-o ro","--log-level=LOG_DEBUG","--virtual-directory=true","-o allow_other"]}},"access_mode":{"mode":3}},"volume_context":{"AzureStorageAuthType":"spn","AzureStorageSPNClientID":"stripped","AzureStorageSPNTenantID":"stripped","containerName":"frontend-bundle-reports","protocol":"fuse2","storageAccount":"strippedaccount"},"volume_id":"frontend-storage-account#bundle-reports-container#handle"}
I0417 14:33:52.540471 1067992 blob.go:416] volumeID(frontend-storage-account#bundle-reports-container#handle) authEnv: [AZURE_STORAGE_AUTH_TYPE=spn AZURE_STORAGE_SPN_CLIENT_ID=stripped AZURE_STORAGE_SPN_TENANT_ID=stripped]
I0417 14:33:52.540504 1067992 nodeserver.go:355] target /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount
protocol fuse2

volumeId frontend-storage-account#bundle-reports-container#handle
context map[AzureStorageAuthType:spn AzureStorageSPNClientID:stripped AzureStorageSPNTenantID:stripped containerName:frontend-bundle-reports protocol:fuse2 storageAccount:strippedaccount]
mountflags [-o ro --log-level=LOG_DEBUG --virtual-directory=true -o allow_other]
mountOptions [-o ro --log-level=LOG_DEBUG --virtual-directory=true -o allow_other --tmp-path=/mnt/frontend-storage-account#bundle-reports-container#handle --container-name=frontend-bundle-reports --pre-mount-validate=true --use-https=true --cancel-list-on-mount-seconds=10 --empty-dir-check=false]
args /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount -o ro --log-level=LOG_DEBUG --virtual-directory=true -o allow_other --tmp-path=/mnt/frontend-storage-account#bundle-reports-container#handle --container-name=frontend-bundle-reports --pre-mount-validate=true --use-https=true --cancel-list-on-mount-seconds=10 --empty-dir-check=false
serverAddress strippedaccount.blob.core.windows.net
I0417 14:33:52.540523 1067992 nodeserver.go:154] start connecting to blobfuse proxy, protocol: fuse2, args: /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount -o ro --log-level=LOG_DEBUG --virtual-directory=true -o allow_other --tmp-path=/mnt/frontend-storage-account#bundle-reports-container#handle --container-name=frontend-bundle-reports --pre-mount-validate=true --use-https=true --cancel-list-on-mount-seconds=10 --empty-dir-check=false
I0417 14:33:52.540906 1067992 nodeserver.go:163] begin to mount with blobfuse proxy, protocol: fuse2, args: /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount -o ro --log-level=LOG_DEBUG --virtual-directory=true -o allow_other --tmp-path=/mnt/frontend-storage-account#bundle-reports-container#handle --container-name=frontend-bundle-reports --pre-mount-validate=true --use-https=true --cancel-list-on-mount-seconds=10 --empty-dir-check=false
I0417 14:34:08.203695 1067992 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
...many similar log messages...
I0417 14:34:18.923991 1067992 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 14:34:18.924141 1067992 nodeserver.go:591] blobfuse mount at /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount success
I0417 14:34:18.924168 1067992 nodeserver.go:409] volume(frontend-storage-account#bundle-reports-container#handle) mount on "/var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount" succeeded
I0417 14:34:18.924184 1067992 utils.go:82] GRPC response: {}
I0417 14:34:18.926532 1067992 utils.go:75] GRPC call: /csi.v1.Node/NodePublishVolume
I0417 14:34:18.926543 1067992 utils.go:76] GRPC request: {"readonly":true,"staging_target_path":"/var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount","target_path":"/var/lib/kubelet/pods/9356cc10-771e-4629-8f81-b0337b8d9b06/volumes/kubernetes.io~csi/bundle-reports-volume/mount","volume_capability":{"AccessType":{"Mount":{"mount_flags":["-o ro","--log-level=LOG_DEBUG","--virtual-directory=true","-o allow_other"]}},"access_mode":{"mode":3}},"volume_context":{"AzureStorageAuthType":"spn","AzureStorageSPNClientID":"stripped","AzureStorageSPNTenantID":"stripped","containerName":"frontend-bundle-reports","csi.storage.k8s.io/ephemeral":"false","csi.storage.k8s.io/pod.name":"nginx-proxy-578cbbb7c9-j97br","csi.storage.k8s.io/pod.namespace":"frontend-static","csi.storage.k8s.io/pod.uid":"9356cc10-771e-4629-8f81-b0337b8d9b06","csi.storage.k8s.io/serviceAccount.name":"default","protocol":"fuse2","storageAccount":"strippedaccount"},"volume_id":"frontend-storage-account#bundle-reports-container#handle"}
I0417 14:34:18.927082 1067992 nodeserver.go:127] NodePublishVolume: volume frontend-storage-account#bundle-reports-container#handle mounting /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount at /var/lib/kubelet/pods/9356cc10-771e-4629-8f81-b0337b8d9b06/volumes/kubernetes.io~csi/bundle-reports-volume/mount with mountOptions: [bind ro]
I0417 14:34:18.927099 1067992 mount_linux.go:219] Mounting cmd (mount) with arguments ( -o bind /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount /var/lib/kubelet/pods/9356cc10-771e-4629-8f81-b0337b8d9b06/volumes/kubernetes.io~csi/bundle-reports-volume/mount)
I0417 14:34:18.928076 1067992 mount_linux.go:219] Mounting cmd (mount) with arguments ( -o bind,remount,ro /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount /var/lib/kubelet/pods/9356cc10-771e-4629-8f81-b0337b8d9b06/volumes/kubernetes.io~csi/bundle-reports-volume/mount)
I0417 14:34:18.928980 1067992 nodeserver.go:143] NodePublishVolume: volume frontend-storage-account#bundle-reports-container#handle mount /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount at /var/lib/kubelet/pods/9356cc10-771e-4629-8f81-b0337b8d9b06/volumes/kubernetes.io~csi/bundle-reports-volume/mount successfully
I0417 14:34:18.929001 1067992 utils.go:82] GRPC response: {}
I0417 14:35:41.938721 1067992 utils.go:75] GRPC call: /csi.v1.Node/NodeUnpublishVolume
I0417 14:35:41.938742 1067992 utils.go:76] GRPC request: {"target_path":"/var/lib/kubelet/pods/9356cc10-771e-4629-8f81-b0337b8d9b06/volumes/kubernetes.io~csi/bundle-reports-volume/mount","volume_id":"frontend-storage-account#bundle-reports-container#handle"}
I0417 14:35:41.938800 1067992 nodeserver.go:205] NodeUnpublishVolume: unmounting volume frontend-storage-account#bundle-reports-container#handle on /var/lib/kubelet/pods/9356cc10-771e-4629-8f81-b0337b8d9b06/volumes/kubernetes.io~csi/bundle-reports-volume/mount
I0417 14:35:41.938821 1067992 mount_helper_common.go:93] unmounting "/var/lib/kubelet/pods/9356cc10-771e-4629-8f81-b0337b8d9b06/volumes/kubernetes.io~csi/bundle-reports-volume/mount" (corruptedMount: false, mounterCanSkipMountPointChecks: true)
I0417 14:35:41.938834 1067992 mount_linux.go:361] Unmounting /var/lib/kubelet/pods/9356cc10-771e-4629-8f81-b0337b8d9b06/volumes/kubernetes.io~csi/bundle-reports-volume/mount
I0417 14:35:41.940464 1067992 mount_helper_common.go:150] Warning: deleting path "/var/lib/kubelet/pods/9356cc10-771e-4629-8f81-b0337b8d9b06/volumes/kubernetes.io~csi/bundle-reports-volume/mount"
I0417 14:35:41.940523 1067992 nodeserver.go:210] NodeUnpublishVolume: unmount volume frontend-storage-account#bundle-reports-container#handle on /var/lib/kubelet/pods/9356cc10-771e-4629-8f81-b0337b8d9b06/volumes/kubernetes.io~csi/bundle-reports-volume/mount successfully
I0417 14:35:41.940559 1067992 utils.go:82] GRPC response: {}
I0417 14:35:42.043343 1067992 utils.go:75] GRPC call: /csi.v1.Node/NodeUnstageVolume
I0417 14:35:42.043356 1067992 utils.go:76] GRPC request: {"staging_target_path":"/var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount","volume_id":"frontend-storage-account#bundle-reports-container#handle"}
I0417 14:35:42.043389 1067992 nodeserver.go:430] NodeUnstageVolume: volume frontend-storage-account#bundle-reports-container#handle unmounting on /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount
I0417 14:35:42.043405 1067992 mount_helper_common.go:93] unmounting "/var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount" (corruptedMount: false, mounterCanSkipMountPointChecks: true)
I0417 14:35:42.043415 1067992 mount_linux.go:361] Unmounting /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount
I0417 14:35:42.045078 1067992 mount_helper_common.go:150] Warning: deleting path "/var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount"
I0417 14:35:42.045142 1067992 nodeserver.go:435] NodeUnstageVolume: volume frontend-storage-account#bundle-reports-container#handle unmount on /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount successfully
I0417 14:35:42.045151 1067992 utils.go:82] GRPC response: {}
I0417 14:37:51.517541 1067992 utils.go:75] GRPC call: /csi.v1.Node/NodeStageVolume
I0417 14:37:51.517555 1067992 utils.go:76] GRPC request: {"secrets":"***stripped***","staging_target_path":"/var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount","volume_capability":{"AccessType":{"Mount":{"mount_flags":["-o ro","--log-level=LOG_DEBUG","--virtual-directory=true","-o allow_other"]}},"access_mode":{"mode":3}},"volume_context":{"AzureStorageAuthType":"spn","AzureStorageSPNClientID":"stripped","AzureStorageSPNTenantID":"stripped","containerName":"frontend-bundle-reports","protocol":"fuse2","storageAccount":"strippedaccount"},"volume_id":"frontend-storage-account#bundle-reports-container#handle"}
I0417 14:37:51.518051 1067992 blob.go:416] volumeID(frontend-storage-account#bundle-reports-container#handle) authEnv: [AZURE_STORAGE_AUTH_TYPE=spn AZURE_STORAGE_SPN_CLIENT_ID=stripped AZURE_STORAGE_SPN_TENANT_ID=stripped]
I0417 14:37:51.518082 1067992 nodeserver.go:355] target /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount
protocol fuse2

volumeId frontend-storage-account#bundle-reports-container#handle
context map[AzureStorageAuthType:spn AzureStorageSPNClientID:stripped AzureStorageSPNTenantID:stripped containerName:frontend-bundle-reports protocol:fuse2 storageAccount:strippedaccount]
mountflags [-o ro --log-level=LOG_DEBUG --virtual-directory=true -o allow_other]
mountOptions [-o ro --log-level=LOG_DEBUG --virtual-directory=true -o allow_other --empty-dir-check=false --tmp-path=/mnt/frontend-storage-account#bundle-reports-container#handle --container-name=frontend-bundle-reports --pre-mount-validate=true --use-https=true --cancel-list-on-mount-seconds=10]
args /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount -o ro --log-level=LOG_DEBUG --virtual-directory=true -o allow_other --empty-dir-check=false --tmp-path=/mnt/frontend-storage-account#bundle-reports-container#handle --container-name=frontend-bundle-reports --pre-mount-validate=true --use-https=true --cancel-list-on-mount-seconds=10
serverAddress strippedaccount.blob.core.windows.net
I0417 14:37:51.518103 1067992 nodeserver.go:154] start connecting to blobfuse proxy, protocol: fuse2, args: /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount -o ro --log-level=LOG_DEBUG --virtual-directory=true -o allow_other --empty-dir-check=false --tmp-path=/mnt/frontend-storage-account#bundle-reports-container#handle --container-name=frontend-bundle-reports --pre-mount-validate=true --use-https=true --cancel-list-on-mount-seconds=10
I0417 14:37:51.518542 1067992 nodeserver.go:163] begin to mount with blobfuse proxy, protocol: fuse2, args: /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount -o ro --log-level=LOG_DEBUG --virtual-directory=true -o allow_other --empty-dir-check=false --tmp-path=/mnt/frontend-storage-account#bundle-reports-container#handle --container-name=frontend-bundle-reports --pre-mount-validate=true --use-https=true --cancel-list-on-mount-seconds=10
I0417 14:38:07.170599 1067992 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
...many similar log messages...
I0417 14:38:17.810169 1067992 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 14:38:17.810294 1067992 nodeserver.go:591] blobfuse mount at /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount success
I0417 14:38:17.810319 1067992 nodeserver.go:409] volume(frontend-storage-account#bundle-reports-container#handle) mount on "/var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount" succeeded
I0417 14:38:17.810340 1067992 utils.go:82] GRPC response: {}
I0417 14:38:17.812662 1067992 utils.go:75] GRPC call: /csi.v1.Node/NodePublishVolume
I0417 14:38:17.812675 1067992 utils.go:76] GRPC request: {"readonly":true,"staging_target_path":"/var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount","target_path":"/var/lib/kubelet/pods/62d8f9cc-2c8e-4ae4-849f-13afb0977fb2/volumes/kubernetes.io~csi/bundle-reports-volume/mount","volume_capability":{"AccessType":{"Mount":{"mount_flags":["-o ro","--log-level=LOG_DEBUG","--virtual-directory=true","-o allow_other"]}},"access_mode":{"mode":3}},"volume_context":{"AzureStorageAuthType":"spn","AzureStorageSPNClientID":"stripped","AzureStorageSPNTenantID":"stripped","containerName":"frontend-bundle-reports","csi.storage.k8s.io/ephemeral":"false","csi.storage.k8s.io/pod.name":"nginx-proxy-578cbbb7c9-6xk4f","csi.storage.k8s.io/pod.namespace":"frontend-static","csi.storage.k8s.io/pod.uid":"62d8f9cc-2c8e-4ae4-849f-13afb0977fb2","csi.storage.k8s.io/serviceAccount.name":"default","protocol":"fuse2","storageAccount":"strippedaccount"},"volume_id":"frontend-storage-account#bundle-reports-container#handle"}
I0417 14:38:17.813226 1067992 nodeserver.go:127] NodePublishVolume: volume frontend-storage-account#bundle-reports-container#handle mounting /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount at /var/lib/kubelet/pods/62d8f9cc-2c8e-4ae4-849f-13afb0977fb2/volumes/kubernetes.io~csi/bundle-reports-volume/mount with mountOptions: [bind ro]
I0417 14:38:17.813241 1067992 mount_linux.go:219] Mounting cmd (mount) with arguments ( -o bind /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount /var/lib/kubelet/pods/62d8f9cc-2c8e-4ae4-849f-13afb0977fb2/volumes/kubernetes.io~csi/bundle-reports-volume/mount)
I0417 14:38:17.814396 1067992 mount_linux.go:219] Mounting cmd (mount) with arguments ( -o bind,remount,ro /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount /var/lib/kubelet/pods/62d8f9cc-2c8e-4ae4-849f-13afb0977fb2/volumes/kubernetes.io~csi/bundle-reports-volume/mount)
I0417 14:38:17.816989 1067992 nodeserver.go:143] NodePublishVolume: volume frontend-storage-account#bundle-reports-container#handle mount /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount at /var/lib/kubelet/pods/62d8f9cc-2c8e-4ae4-849f-13afb0977fb2/volumes/kubernetes.io~csi/bundle-reports-volume/mount successfully
I0417 14:38:17.817019 1067992 utils.go:82] GRPC response: {}
blobfuse2 logs
Apr 17 14:26:37 node-01 blobfuse2[1270607]: LOG_WARNING [mount.go (364)]: mount: unsupported v1 CLI parameter: pre-mount-validate is always true in blobfuse2.
Apr 17 14:26:37 node-01 blobfuse2[1270607]: LOG_CRIT [mount.go (384)]: Starting Blobfuse2 Mount : 2.0.2 on [Ubuntu 18.04.6 LTS]
Apr 17 14:26:37 node-01 blobfuse2[1270607]: LOG_CRIT [mount.go (385)]: Logging level set to : LOG_DEBUG
Apr 17 14:26:37 node-01 blobfuse2[1270607]: LOG_TRACE [libfuse.go (220)]: Libfuse::Configure : libfuse
Apr 17 14:26:37 node-01 blobfuse2[1270607]: LOG_INFO [libfuse.go (260)]: Libfuse::Configure : read-only true, allow-other true, default-perm 511, entry-timeout 120, attr-time 120, negative-timeout 120, ignore-open-flags: true, nonempty false
Apr 17 14:26:37 node-01 blobfuse2[1270607]: LOG_TRACE [file_cache.go (197)]: FileCache::Configure : file_cache
Apr 17 14:26:37 node-01 blobfuse2[1270607]: LOG_ERR [file_cache.go (239)]: FileCache: config error [tmp-path does not exist. attempting to create tmp-path.]
Apr 17 14:26:37 node-01 blobfuse2[1270607]: LOG_INFO [file_cache.go (272)]: FileCache::Configure : Using default eviction policy
Apr 17 14:26:37 node-01 blobfuse2[1270607]: LOG_INFO [file_cache.go (291)]: FileCache::Configure : create-empty false, cache-timeout 120, tmp-path /mnt/frontend-storage-account#bundle-reports-container#handle, max-size-mb 0, high-mark 80, low-mark 60
Apr 17 14:26:37 node-01 blobfuse2[1270607]: LOG_TRACE [attr_cache.go (121)]: AttrCache::Configure : attr_cache
Apr 17 14:26:37 node-01 blobfuse2[1270607]: LOG_INFO [attr_cache.go (145)]: AttrCache::Configure : cache-timeout 120, symlink false, cache-on-list true
Apr 17 14:26:37 node-01 blobfuse2[1270607]: LOG_TRACE [azstorage.go (83)]: AzStorage::Configure : azstorage
Apr 17 14:26:37 node-01 blobfuse2[1270607]: LOG_TRACE [config.go (270)]: ParseAndValidateConfig : Parsing config
Apr 17 14:26:37 node-01 blobfuse2[1270607]: LOG_INFO [config.go (372)]: ParseAndValidateConfig : using the following proxy address from the config file:
Apr 17 14:26:37 node-01 blobfuse2[1270607]: LOG_INFO [config.go (376)]: ParseAndValidateConfig : sdk logging from the config file: false
Apr 17 14:26:37 node-01 blobfuse2[1270607]: LOG_TRACE [config.go (479)]: ParseAndReadDynamicConfig : Reparsing config
Apr 17 14:26:37 node-01 blobfuse2[1270607]: LOG_DEBUG [config.go (383)]: ParseAndValidateConfig : Getting auth type
Apr 17 14:26:37 node-01 blobfuse2[1270607]: LOG_INFO [config.go (467)]: ParseAndValidateConfig : Account: strippedaccount, Container: frontend-bundle-reports, AccountType: BLOCK, Auth: SPN, Prefix: , Endpoint: https://strippedaccount.blob.core.windows.net/, ListBlock: 10, MD5 : false false, Virtual Directory: true
Apr 17 14:26:37 node-01 blobfuse2[1270607]: LOG_INFO [config.go (471)]: ParseAndValidateConfig : Retry Config: Retry count 5, Max Timeout 900, BackOff Time 4, Max Delay 60
Apr 17 14:26:37 node-01 blobfuse2[1270607]: LOG_TRACE [block_blob.go (173)]: BlockBlob::SetupPipeline : Setting up
Apr 17 14:26:37 node-01 blobfuse2[1270607]: LOG_TRACE [block_blob.go (135)]: BlockBlob::getCredential : Getting credential
Apr 17 14:26:37 node-01 blobfuse2[1270607]: LOG_DEBUG [azauth.go (79)]: azAuth::getAzAuth : Account: strippedaccount, AccountType: BLOCK, Protocol: https, Endpoint: https://strippedaccount.blob.core.windows.net/
Apr 17 14:26:42 node-01 blobfuse2[1270607]: LOG_DEBUG [azauthspn.go (105)]: azAuthBlobSPN::getCredential : SPN Token retrieved ***stipped***
Apr 17 14:26:42 node-01 blobfuse2[1270607]: LOG_TRACE [block_blob.go (260)]: BlockBlob::SetPrefixPath : path
Apr 17 14:26:42 node-01 blobfuse2[1270607]: LOG_TRACE [block_blob.go (209)]: BlockBlob::TestPipeline : Validating
Apr 17 14:26:47 node-01 blobfuse2[1270607]: LOG_INFO [mount.go (392)]: mount: Mounting blobfuse2 on /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount
Apr 17 14:26:47 node-01 blobfuse2[1270607]: LOG_DEBUG [mount.go (410)]: mount: foreground disabled, child = false
Apr 17 14:26:52 node-01 blobfuse2[1271078]: LOG_WARNING [mount.go (364)]: mount: unsupported v1 CLI parameter: pre-mount-validate is always true in blobfuse2.
Apr 17 14:26:52 node-01 blobfuse2[1271078]: LOG_CRIT [mount.go (384)]: Starting Blobfuse2 Mount : 2.0.2 on [Ubuntu 18.04.6 LTS]
Apr 17 14:26:52 node-01 blobfuse2[1271078]: LOG_CRIT [mount.go (385)]: Logging level set to : LOG_DEBUG
Apr 17 14:26:52 node-01 blobfuse2[1271078]: LOG_TRACE [libfuse.go (220)]: Libfuse::Configure : libfuse
Apr 17 14:26:52 node-01 blobfuse2[1271078]: LOG_INFO [libfuse.go (260)]: Libfuse::Configure : read-only true, allow-other true, default-perm 511, entry-timeout 120, attr-time 120, negative-timeout 120, ignore-open-flags: true, nonempty false
Apr 17 14:26:52 node-01 blobfuse2[1271078]: LOG_TRACE [file_cache.go (197)]: FileCache::Configure : file_cache
Apr 17 14:26:52 node-01 blobfuse2[1271078]: LOG_INFO [file_cache.go (272)]: FileCache::Configure : Using default eviction policy
Apr 17 14:26:52 node-01 blobfuse2[1271078]: LOG_INFO [file_cache.go (291)]: FileCache::Configure : create-empty false, cache-timeout 120, tmp-path /mnt/frontend-storage-account#bundle-reports-container#handle, max-size-mb 0, high-mark 80, low-mark 60
Apr 17 14:26:52 node-01 blobfuse2[1271078]: LOG_TRACE [attr_cache.go (121)]: AttrCache::Configure : attr_cache
Apr 17 14:26:52 node-01 blobfuse2[1271078]: LOG_INFO [attr_cache.go (145)]: AttrCache::Configure : cache-timeout 120, symlink false, cache-on-list true
Apr 17 14:26:52 node-01 blobfuse2[1271078]: LOG_TRACE [azstorage.go (83)]: AzStorage::Configure : azstorage
Apr 17 14:26:52 node-01 blobfuse2[1271078]: LOG_TRACE [config.go (270)]: ParseAndValidateConfig : Parsing config
Apr 17 14:26:52 node-01 blobfuse2[1271078]: LOG_INFO [config.go (372)]: ParseAndValidateConfig : using the following proxy address from the config file:
Apr 17 14:26:52 node-01 blobfuse2[1271078]: LOG_INFO [config.go (376)]: ParseAndValidateConfig : sdk logging from the config file: false
Apr 17 14:26:52 node-01 blobfuse2[1271078]: LOG_TRACE [config.go (479)]: ParseAndReadDynamicConfig : Reparsing config
Apr 17 14:26:52 node-01 blobfuse2[1271078]: LOG_DEBUG [config.go (383)]: ParseAndValidateConfig : Getting auth type
Apr 17 14:26:52 node-01 blobfuse2[1271078]: LOG_INFO [config.go (467)]: ParseAndValidateConfig : Account: strippedaccount, Container: frontend-bundle-reports, AccountType: BLOCK, Auth: SPN, Prefix: , Endpoint: https://strippedaccount.blob.core.windows.net/, ListBlock: 10, MD5 : false false, Virtual Directory: true
Apr 17 14:26:52 node-01 blobfuse2[1271078]: LOG_INFO [config.go (471)]: ParseAndValidateConfig : Retry Config: Retry count 5, Max Timeout 900, BackOff Time 4, Max Delay 60
Apr 17 14:26:52 node-01 blobfuse2[1271078]: LOG_TRACE [block_blob.go (173)]: BlockBlob::SetupPipeline : Setting up
Apr 17 14:26:52 node-01 blobfuse2[1271078]: LOG_TRACE [block_blob.go (135)]: BlockBlob::getCredential : Getting credential
Apr 17 14:26:52 node-01 blobfuse2[1271078]: LOG_DEBUG [azauth.go (79)]: azAuth::getAzAuth : Account: strippedaccount, AccountType: BLOCK, Protocol: https, Endpoint: https://strippedaccount.blob.core.windows.net/
Apr 17 14:26:57 node-01 blobfuse2[1271078]: LOG_DEBUG [azauthspn.go (105)]: azAuthBlobSPN::getCredential : SPN Token retrieved ***stipped***
Apr 17 14:26:57 node-01 blobfuse2[1271078]: LOG_TRACE [block_blob.go (260)]: BlockBlob::SetPrefixPath : path
Apr 17 14:26:57 node-01 blobfuse2[1271078]: LOG_INFO [mount.go (392)]: mount: Mounting blobfuse2 on /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount
Apr 17 14:26:57 node-01 blobfuse2[1271078]: LOG_DEBUG [mount.go (410)]: mount: foreground disabled, child = true
Apr 17 14:26:57 node-01 blobfuse2[1271078]: LOG_DEBUG [mount.go (477)]: Mount::runPipeline : blobfuse2 pid = 1271078, transfer pipe = /tmp/transferPipe_1271078, polling pipe = /tmp/pollPipe_1271078
Apr 17 14:26:57 node-01 blobfuse2[1271078]: LOG_TRACE [azstorage.go (164)]: AzStorage::Start : Starting component azstorage
Apr 17 14:26:57 node-01 blobfuse2[1271078]: LOG_TRACE [attr_cache.go (103)]: AttrCache::Start : Starting component attr_cache
Apr 17 14:26:57 node-01 blobfuse2[1271078]: LOG_TRACE [file_cache.go (140)]: Starting component : file_cache
Apr 17 14:26:57 node-01 blobfuse2[1271078]: LOG_TRACE [lru_policy.go (108)]: lruPolicy::StartPolicy
Apr 17 14:26:57 node-01 blobfuse2[1271078]: LOG_TRACE [libfuse.go (136)]: Libfuse::Start : Starting component libfuse
Apr 17 14:26:57 node-01 blobfuse2[1271078]: LOG_TRACE [lru_policy.go (261)]: lruPolicy::ClearCache
Apr 17 14:26:57 node-01 blobfuse2[1271078]: LOG_TRACE [libfuse2_handler.go (116)]: Libfuse::initFuse : Initializing FUSE
Apr 17 14:26:57 node-01 blobfuse2[1271078]: LOG_TRACE [libfuse2_handler.go (159)]: Libfuse::initFuse : Registering fuse callbacks
Apr 17 14:26:57 node-01 blobfuse2[1271078]: LOG_TRACE [libfuse2_handler.go (163)]: Libfuse::initFuse : Populating fuse arguments
Apr 17 14:26:57 node-01 blobfuse2[1271078]: LOG_TRACE [libfuse2_handler.go (187)]: Libfuse::populateFuseArgs
Apr 17 14:26:57 node-01 blobfuse2[1271078]: LOG_DEBUG [libfuse2_handler.go (223)]: Libfuse::populateFuseArgs : opts : blobfuse2
Apr 17 14:26:57 node-01 blobfuse2[1271078]: LOG_DEBUG [libfuse2_handler.go (223)]: Libfuse::populateFuseArgs : opts : /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount
Apr 17 14:26:57 node-01 blobfuse2[1271078]: LOG_DEBUG [libfuse2_handler.go (223)]: Libfuse::populateFuseArgs : opts : -o
Apr 17 14:26:57 node-01 blobfuse2[1271078]: LOG_DEBUG [libfuse2_handler.go (223)]: Libfuse::populateFuseArgs : opts : entry_timeout=120,attr_timeout=120,negative_timeout=120,allow_other,ro
Apr 17 14:26:57 node-01 blobfuse2[1271078]: LOG_DEBUG [libfuse2_handler.go (223)]: Libfuse::populateFuseArgs : opts : -f
Apr 17 14:26:57 node-01 blobfuse2[1271078]: LOG_DEBUG [libfuse2_handler.go (223)]: Libfuse::populateFuseArgs : opts : -ofsname=blobfuse2
Apr 17 14:26:57 node-01 blobfuse2[1271078]: LOG_DEBUG [libfuse2_handler.go (223)]: Libfuse::populateFuseArgs : opts : -okernel_cache
Apr 17 14:26:57 node-01 blobfuse2[1271078]: LOG_INFO [libfuse2_handler.go (175)]: Libfuse::initFuse : Mounting with fuse2 library
Apr 17 14:26:57 node-01 blobfuse2[1271078]: LOG_TRACE [libfuse2_handler.go (243)]: Libfuse::libfuse2_init : init
Apr 17 14:26:57 node-01 blobfuse2[1271078]: LOG_INFO [libfuse2_handler.go (246)]: Libfuse::libfuse2_init : Kernel Caps : 4091
Apr 17 14:26:57 node-01 blobfuse2[1271078]: LOG_INFO [libfuse2_handler.go (249)]: Libfuse::libfuse2_init : Enable Capability : FUSE_CAP_ASYNC_READ
Apr 17 14:26:57 node-01 blobfuse2[1271078]: LOG_INFO [libfuse2_handler.go (254)]: Libfuse::libfuse2_init : Enable Capability : FUSE_CAP_BIG_WRITES
Apr 17 14:26:57 node-01 blobfuse2[1271078]: LOG_INFO [libfuse2_handler.go (260)]: Libfuse::libfuse2_init : Enable Capability : FUSE_CAP_SPLICE_WRITE
Apr 17 14:28:01 node-01 blobfuse2[1271078]: LOG_TRACE [file_cache.go (1149)]: FileCache::GetAttr : reports
Apr 17 14:28:01 node-01 blobfuse2[1271078]: LOG_TRACE [attr_cache.go (455)]: AttrCache::GetAttr : reports
Apr 17 14:28:01 node-01 blobfuse2[1271078]: LOG_TRACE [block_blob.go (522)]: BlockBlob::GetAttr : name reports
Apr 17 14:28:01 node-01 blobfuse2[1271078]: LOG_TRACE [block_blob.go (469)]: BlockBlob::getAttrUsingList : name reports
Apr 17 14:28:01 node-01 blobfuse2[1271078]: LOG_TRACE [block_blob.go (536)]: BlockBlob::List : prefix reports, marker
Apr 17 14:28:06 node-01 blobfuse2[1271078]: LOG_TRACE [block_blob.go (431)]: BlockBlob::getAttrUsingRest : name reports/
Apr 17 14:28:06 node-01 blobfuse2[1271078]: LOG_TRACE [block_blob.go (495)]: BlockBlob::getAttrUsingList : Item 0 Blob reports
Apr 17 14:28:06 node-01 blobfuse2[1271078]: LOG_TRACE [file_cache.go (1149)]: FileCache::GetAttr : strippedpath
Apr 17 14:28:06 node-01 blobfuse2[1271078]: LOG_TRACE [attr_cache.go (455)]: AttrCache::GetAttr : strippedpath
Apr 17 14:28:06 node-01 blobfuse2[1271078]: LOG_TRACE [block_blob.go (522)]: BlockBlob::GetAttr : name strippedpath
Apr 17 14:28:06 node-01 blobfuse2[1271078]: LOG_TRACE [block_blob.go (469)]: BlockBlob::getAttrUsingList : name strippedpath
Apr 17 14:28:06 node-01 blobfuse2[1271078]: LOG_TRACE [block_blob.go (536)]: BlockBlob::List : prefix strippedpath, marker
Apr 17 14:28:06 node-01 blobfuse2[1271078]: LOG_TRACE [block_blob.go (431)]: BlockBlob::getAttrUsingRest : name strippedpath/
Apr 17 14:28:06 node-01 blobfuse2[1271078]: LOG_TRACE [block_blob.go (495)]: BlockBlob::getAttrUsingList : Item 0 Blob stripped
Apr 17 14:28:06 node-01 blobfuse2[1271078]: LOG_TRACE [file_cache.go (1149)]: FileCache::GetAttr : strippedpath/admin
Apr 17 14:28:06 node-01 blobfuse2[1271078]: LOG_TRACE [attr_cache.go (455)]: AttrCache::GetAttr : strippedpath/admin
Apr 17 14:28:06 node-01 blobfuse2[1271078]: LOG_TRACE [block_blob.go (522)]: BlockBlob::GetAttr : name strippedpath/admin
Apr 17 14:28:06 node-01 blobfuse2[1271078]: LOG_TRACE [block_blob.go (469)]: BlockBlob::getAttrUsingList : name strippedpath/admin
Apr 17 14:28:06 node-01 blobfuse2[1271078]: LOG_TRACE [block_blob.go (536)]: BlockBlob::List : prefix strippedpath/admin, marker
Apr 17 14:28:06 node-01 blobfuse2[1271078]: LOG_TRACE [block_blob.go (431)]: BlockBlob::getAttrUsingRest : name strippedpath/admin/
Apr 17 14:28:06 node-01 blobfuse2[1271078]: LOG_TRACE [block_blob.go (495)]: BlockBlob::getAttrUsingList : Item 0 Blob admin
Apr 17 14:28:06 node-01 blobfuse2[1271078]: LOG_TRACE [file_cache.go (1149)]: FileCache::GetAttr : strippedpath/admin/bundle-report.html
Apr 17 14:28:06 node-01 blobfuse2[1271078]: LOG_TRACE [attr_cache.go (455)]: AttrCache::GetAttr : strippedpath/admin/bundle-report.html
Apr 17 14:28:06 node-01 blobfuse2[1271078]: LOG_TRACE [block_blob.go (522)]: BlockBlob::GetAttr : name strippedpath/admin/bundle-report.html
Apr 17 14:28:06 node-01 blobfuse2[1271078]: LOG_TRACE [block_blob.go (469)]: BlockBlob::getAttrUsingList : name strippedpath/admin/bundle-report.html
Apr 17 14:28:06 node-01 blobfuse2[1271078]: LOG_TRACE [block_blob.go (536)]: BlockBlob::List : prefix strippedpath/admin/bundle-report.html, marker
Apr 17 14:28:06 node-01 blobfuse2[1271078]: LOG_TRACE [block_blob.go (495)]: BlockBlob::getAttrUsingList : Item 0 Blob bundle-report.html
Apr 17 14:28:06 node-01 blobfuse2[1271078]: LOG_TRACE [libfuse2_handler.go (577)]: Libfuse::libfuse_open : strippedpath/admin/bundle-report.html
Apr 17 14:28:06 node-01 blobfuse2[1271078]: LOG_TRACE [file_cache.go (771)]: FileCache::OpenFile : name=strippedpath/admin/bundle-report.html, flags=34816, mode=-rwxrwxrwx
Apr 17 14:28:06 node-01 blobfuse2[1271078]: LOG_TRACE [lru_policy.go (185)]: lruPolicy::IsCached : /mnt/frontend-storage-account#bundle-reports-container#handle/strippedpath/admin/bundle-report.html
Apr 17 14:28:06 node-01 blobfuse2[1271078]: LOG_DEBUG [lru_policy.go (190)]: lruPolicy::IsCached : /mnt/frontend-storage-account#bundle-reports-container#handle/strippedpath/admin/bundle-report.html, deleted:false
Apr 17 14:28:06 node-01 blobfuse2[1271078]: LOG_DEBUG [file_cache.go (758)]: FileCache::isDownloadRequired : /mnt/frontend-storage-account#bundle-reports-container#handle/strippedpath/admin/bundle-report.html not present in local cache
Apr 17 14:28:06 node-01 blobfuse2[1271078]: LOG_DEBUG [file_cache.go (793)]: FileCache::OpenFile : Need to re-download strippedpath/admin/bundle-report.html
Apr 17 14:28:06 node-01 blobfuse2[1271078]: LOG_TRACE [attr_cache.go (455)]: AttrCache::GetAttr : strippedpath/admin/bundle-report.html
Apr 17 14:28:06 node-01 blobfuse2[1271078]: LOG_DEBUG [attr_cache.go (474)]: AttrCache::GetAttr : strippedpath/admin/bundle-report.html served from cache
Apr 17 14:28:06 node-01 blobfuse2[1271078]: LOG_TRACE [azstorage.go (478)]: AzStorage::CopyToFile : Read file strippedpath/admin/bundle-report.html
Apr 17 14:28:06 node-01 blobfuse2[1271078]: LOG_TRACE [block_blob.go (666)]: BlockBlob::ReadToFile : name strippedpath/admin/bundle-report.html, offset : 0, count 1808765
Apr 17 14:28:06 node-01 blobfuse2[1271078]: LOG_DEBUG [block_blob.go (692)]: BlockBlob::ReadToFile : Download complete of blob strippedpath/admin/bundle-report.html
Apr 17 14:28:06 node-01 blobfuse2[1271078]: LOG_DEBUG [file_cache.go (847)]: FileCache::OpenFile : Download of strippedpath/admin/bundle-report.html is complete
Apr 17 14:28:06 node-01 blobfuse2[1271078]: LOG_INFO [file_cache.go (897)]: FileCache::OpenFile : file=strippedpath/admin/bundle-report.html, fd=14
Apr 17 14:28:06 node-01 blobfuse2[1271078]: LOG_TRACE [libfuse2_handler.go (611)]: Libfuse::libfuse_open : strippedpath/admin/bundle-report.html, handle 1
Apr 17 14:28:06 node-01 blobfuse2[1271078]: LOG_TRACE [libfuse2_handler.go (685)]: Libfuse::libfuse_flush : strippedpath/admin/bundle-report.html, handle: 1
Apr 17 14:28:06 node-01 blobfuse2[1271078]: LOG_TRACE [libfuse2_handler.go (733)]: Libfuse::libfuse_release : strippedpath/admin/bundle-report.html, handle: 1
Apr 17 14:28:06 node-01 blobfuse2[1271078]: LOG_TRACE [file_cache.go (905)]: FileCache::CloseFile : name=strippedpath/admin/bundle-report.html, handle=1
Apr 17 14:28:06 node-01 blobfuse2[1271078]: LOG_TRACE [lru_policy.go (163)]: lruPolicy::CacheInvalidate : /mnt/frontend-storage-account#bundle-reports-container#handle/strippedpath/admin/bundle-report.html
Apr 17 14:28:06 node-01 blobfuse2[1271078]: LOG_TRACE [lru_policy.go (178)]: lruPolicy::CachePurge : /mnt/frontend-storage-account#bundle-reports-container#handle/strippedpath/admin/bundle-report.html
Apr 17 14:28:06 node-01 blobfuse2[1271078]: LOG_TRACE [lru_policy.go (306)]: lruPolicy::removeNode : /mnt/frontend-storage-account#bundle-reports-container#handle/strippedpath/admin/bundle-report.html
Apr 17 14:28:06 node-01 blobfuse2[1271078]: LOG_TRACE [lru_policy.go (266)]: lruPolicy::Clear-delete
Apr 17 14:28:06 node-01 blobfuse2[1271078]: LOG_TRACE [lru_policy.go (411)]: lruPolicy::deleteItem : Deleting /mnt/frontend-storage-account#bundle-reports-container#handle/strippedpath/admin/bundle-report.html
Apr 17 14:28:06 node-01 blobfuse2[1271078]: LOG_DEBUG [cache_policy.go (145)]: cachePolicy::deleteFile : attempting to delete /mnt/frontend-storage-account#bundle-reports-container#handle/strippedpath/admin/bundle-report.html
Apr 17 14:28:20 node-01 blobfuse2[1271078]: LOG_TRACE [libfuse2_handler.go (577)]: Libfuse::libfuse_open : strippedpath/admin/bundle-report.html
Apr 17 14:28:20 node-01 blobfuse2[1271078]: LOG_TRACE [file_cache.go (771)]: FileCache::OpenFile : name=strippedpath/admin/bundle-report.html, flags=34816, mode=-rwxrwxrwx
Apr 17 14:28:20 node-01 blobfuse2[1271078]: LOG_TRACE [lru_policy.go (185)]: lruPolicy::IsCached : /mnt/frontend-storage-account#bundle-reports-container#handle/strippedpath/admin/bundle-report.html
Apr 17 14:28:20 node-01 blobfuse2[1271078]: LOG_DEBUG [lru_policy.go (190)]: lruPolicy::IsCached : /mnt/frontend-storage-account#bundle-reports-container#handle/strippedpath/admin/bundle-report.html, deleted:false
Apr 17 14:28:20 node-01 blobfuse2[1271078]: LOG_DEBUG [file_cache.go (758)]: FileCache::isDownloadRequired : /mnt/frontend-storage-account#bundle-reports-container#handle/strippedpath/admin/bundle-report.html not present in local cache
Apr 17 14:28:20 node-01 blobfuse2[1271078]: LOG_DEBUG [file_cache.go (793)]: FileCache::OpenFile : Need to re-download strippedpath/admin/bundle-report.html
Apr 17 14:28:20 node-01 blobfuse2[1271078]: LOG_TRACE [attr_cache.go (455)]: AttrCache::GetAttr : strippedpath/admin/bundle-report.html
Apr 17 14:28:20 node-01 blobfuse2[1271078]: LOG_DEBUG [attr_cache.go (474)]: AttrCache::GetAttr : strippedpath/admin/bundle-report.html served from cache
Apr 17 14:28:20 node-01 blobfuse2[1271078]: LOG_TRACE [azstorage.go (478)]: AzStorage::CopyToFile : Read file strippedpath/admin/bundle-report.html
Apr 17 14:28:20 node-01 blobfuse2[1271078]: LOG_TRACE [block_blob.go (666)]: BlockBlob::ReadToFile : name strippedpath/admin/bundle-report.html, offset : 0, count 1808765
Apr 17 14:28:20 node-01 blobfuse2[1271078]: LOG_DEBUG [block_blob.go (692)]: BlockBlob::ReadToFile : Download complete of blob strippedpath/admin/bundle-report.html
Apr 17 14:28:20 node-01 blobfuse2[1271078]: LOG_DEBUG [file_cache.go (847)]: FileCache::OpenFile : Download of strippedpath/admin/bundle-report.html is complete
Apr 17 14:28:20 node-01 blobfuse2[1271078]: LOG_INFO [file_cache.go (897)]: FileCache::OpenFile : file=strippedpath/admin/bundle-report.html, fd=14
Apr 17 14:28:20 node-01 blobfuse2[1271078]: LOG_TRACE [libfuse2_handler.go (611)]: Libfuse::libfuse_open : strippedpath/admin/bundle-report.html, handle 2
Apr 17 14:28:20 node-01 blobfuse2[1271078]: LOG_TRACE [libfuse2_handler.go (685)]: Libfuse::libfuse_flush : strippedpath/admin/bundle-report.html, handle: 2
Apr 17 14:28:20 node-01 blobfuse2[1271078]: LOG_TRACE [libfuse2_handler.go (733)]: Libfuse::libfuse_release : strippedpath/admin/bundle-report.html, handle: 2
Apr 17 14:28:20 node-01 blobfuse2[1271078]: LOG_TRACE [file_cache.go (905)]: FileCache::CloseFile : name=strippedpath/admin/bundle-report.html, handle=2
Apr 17 14:28:20 node-01 blobfuse2[1271078]: LOG_TRACE [lru_policy.go (163)]: lruPolicy::CacheInvalidate : /mnt/frontend-storage-account#bundle-reports-container#handle/strippedpath/admin/bundle-report.html
Apr 17 14:28:20 node-01 blobfuse2[1271078]: LOG_TRACE [lru_policy.go (178)]: lruPolicy::CachePurge : /mnt/frontend-storage-account#bundle-reports-container#handle/strippedpath/admin/bundle-report.html
Apr 17 14:28:20 node-01 blobfuse2[1271078]: LOG_TRACE [lru_policy.go (306)]: lruPolicy::removeNode : /mnt/frontend-storage-account#bundle-reports-container#handle/strippedpath/admin/bundle-report.html
Apr 17 14:28:20 node-01 blobfuse2[1271078]: LOG_TRACE [lru_policy.go (266)]: lruPolicy::Clear-delete
Apr 17 14:28:20 node-01 blobfuse2[1271078]: LOG_TRACE [lru_policy.go (411)]: lruPolicy::deleteItem : Deleting /mnt/frontend-storage-account#bundle-reports-container#handle/strippedpath/admin/bundle-report.html
Apr 17 14:28:20 node-01 blobfuse2[1271078]: LOG_DEBUG [cache_policy.go (145)]: cachePolicy::deleteFile : attempting to delete /mnt/frontend-storage-account#bundle-reports-container#handle/strippedpath/admin/bundle-report.html
Apr 17 14:30:56 node-01 blobfuse2[1271078]: LOG_TRACE [file_cache.go (1149)]: FileCache::GetAttr : reports
Apr 17 14:30:56 node-01 blobfuse2[1271078]: LOG_TRACE [attr_cache.go (455)]: AttrCache::GetAttr : reports
Apr 17 14:30:56 node-01 blobfuse2[1271078]: LOG_TRACE [block_blob.go (522)]: BlockBlob::GetAttr : name reports
Apr 17 14:30:56 node-01 blobfuse2[1271078]: LOG_TRACE [block_blob.go (469)]: BlockBlob::getAttrUsingList : name reports
Apr 17 14:30:56 node-01 blobfuse2[1271078]: LOG_TRACE [block_blob.go (536)]: BlockBlob::List : prefix reports, marker
Apr 17 14:31:02 node-01 blobfuse2[1271078]: LOG_TRACE [block_blob.go (431)]: BlockBlob::getAttrUsingRest : name reports/
Apr 17 14:31:02 node-01 blobfuse2[1271078]: LOG_TRACE [block_blob.go (495)]: BlockBlob::getAttrUsingList : Item 0 Blob reports
Apr 17 14:31:02 node-01 blobfuse2[1271078]: LOG_TRACE [file_cache.go (1149)]: FileCache::GetAttr : strippedpath
Apr 17 14:31:02 node-01 blobfuse2[1271078]: LOG_TRACE [attr_cache.go (455)]: AttrCache::GetAttr : strippedpath
Apr 17 14:31:02 node-01 blobfuse2[1271078]: LOG_TRACE [block_blob.go (522)]: BlockBlob::GetAttr : name strippedpath
Apr 17 14:31:02 node-01 blobfuse2[1271078]: LOG_TRACE [block_blob.go (469)]: BlockBlob::getAttrUsingList : name strippedpath
Apr 17 14:31:02 node-01 blobfuse2[1271078]: LOG_TRACE [block_blob.go (536)]: BlockBlob::List : prefix strippedpath, marker
Apr 17 14:31:02 node-01 blobfuse2[1271078]: LOG_TRACE [block_blob.go (431)]: BlockBlob::getAttrUsingRest : name strippedpath/
Apr 17 14:31:02 node-01 blobfuse2[1271078]: LOG_TRACE [block_blob.go (495)]: BlockBlob::getAttrUsingList : Item 0 Blob stripped
Apr 17 14:31:02 node-01 blobfuse2[1271078]: LOG_TRACE [file_cache.go (1149)]: FileCache::GetAttr : strippedpath/admin
Apr 17 14:31:02 node-01 blobfuse2[1271078]: LOG_TRACE [attr_cache.go (455)]: AttrCache::GetAttr : strippedpath/admin
Apr 17 14:31:02 node-01 blobfuse2[1271078]: LOG_TRACE [block_blob.go (522)]: BlockBlob::GetAttr : name strippedpath/admin
Apr 17 14:31:02 node-01 blobfuse2[1271078]: LOG_TRACE [block_blob.go (469)]: BlockBlob::getAttrUsingList : name strippedpath/admin
Apr 17 14:31:02 node-01 blobfuse2[1271078]: LOG_TRACE [block_blob.go (536)]: BlockBlob::List : prefix strippedpath/admin, marker
Apr 17 14:31:02 node-01 blobfuse2[1271078]: LOG_TRACE [block_blob.go (431)]: BlockBlob::getAttrUsingRest : name strippedpath/admin/
Apr 17 14:31:02 node-01 blobfuse2[1271078]: LOG_TRACE [block_blob.go (495)]: BlockBlob::getAttrUsingList : Item 0 Blob admin
Apr 17 14:31:02 node-01 blobfuse2[1271078]: LOG_TRACE [file_cache.go (1149)]: FileCache::GetAttr : strippedpath/admin/bundle-report.html
Apr 17 14:31:02 node-01 blobfuse2[1271078]: LOG_TRACE [attr_cache.go (455)]: AttrCache::GetAttr : strippedpath/admin/bundle-report.html
Apr 17 14:31:02 node-01 blobfuse2[1271078]: LOG_TRACE [block_blob.go (522)]: BlockBlob::GetAttr : name strippedpath/admin/bundle-report.html
Apr 17 14:31:02 node-01 blobfuse2[1271078]: LOG_TRACE [block_blob.go (469)]: BlockBlob::getAttrUsingList : name strippedpath/admin/bundle-report.html
Apr 17 14:31:02 node-01 blobfuse2[1271078]: LOG_TRACE [block_blob.go (536)]: BlockBlob::List : prefix strippedpath/admin/bundle-report.html, marker
Apr 17 14:31:02 node-01 blobfuse2[1271078]: LOG_TRACE [block_blob.go (495)]: BlockBlob::getAttrUsingList : Item 0 Blob bundle-report.html
Apr 17 14:31:02 node-01 blobfuse2[1271078]: LOG_TRACE [libfuse2_handler.go (577)]: Libfuse::libfuse_open : strippedpath/admin/bundle-report.html
Apr 17 14:31:02 node-01 blobfuse2[1271078]: LOG_TRACE [file_cache.go (771)]: FileCache::OpenFile : name=strippedpath/admin/bundle-report.html, flags=34816, mode=-rwxrwxrwx
Apr 17 14:31:02 node-01 blobfuse2[1271078]: LOG_TRACE [lru_policy.go (185)]: lruPolicy::IsCached : /mnt/frontend-storage-account#bundle-reports-container#handle/strippedpath/admin/bundle-report.html
Apr 17 14:31:02 node-01 blobfuse2[1271078]: LOG_DEBUG [lru_policy.go (190)]: lruPolicy::IsCached : /mnt/frontend-storage-account#bundle-reports-container#handle/strippedpath/admin/bundle-report.html, deleted:false
Apr 17 14:31:02 node-01 blobfuse2[1271078]: LOG_DEBUG [file_cache.go (758)]: FileCache::isDownloadRequired : /mnt/frontend-storage-account#bundle-reports-container#handle/strippedpath/admin/bundle-report.html not present in local cache
Apr 17 14:31:02 node-01 blobfuse2[1271078]: LOG_DEBUG [file_cache.go (793)]: FileCache::OpenFile : Need to re-download strippedpath/admin/bundle-report.html
Apr 17 14:31:02 node-01 blobfuse2[1271078]: LOG_TRACE [attr_cache.go (455)]: AttrCache::GetAttr : strippedpath/admin/bundle-report.html
Apr 17 14:31:02 node-01 blobfuse2[1271078]: LOG_DEBUG [attr_cache.go (474)]: AttrCache::GetAttr : strippedpath/admin/bundle-report.html served from cache
Apr 17 14:31:02 node-01 blobfuse2[1271078]: LOG_TRACE [azstorage.go (478)]: AzStorage::CopyToFile : Read file strippedpath/admin/bundle-report.html
Apr 17 14:31:02 node-01 blobfuse2[1271078]: LOG_TRACE [block_blob.go (666)]: BlockBlob::ReadToFile : name strippedpath/admin/bundle-report.html, offset : 0, count 1808765
Apr 17 14:31:02 node-01 blobfuse2[1271078]: LOG_DEBUG [block_blob.go (692)]: BlockBlob::ReadToFile : Download complete of blob strippedpath/admin/bundle-report.html
Apr 17 14:31:02 node-01 blobfuse2[1271078]: LOG_DEBUG [file_cache.go (847)]: FileCache::OpenFile : Download of strippedpath/admin/bundle-report.html is complete
Apr 17 14:31:02 node-01 blobfuse2[1271078]: LOG_INFO [file_cache.go (897)]: FileCache::OpenFile : file=strippedpath/admin/bundle-report.html, fd=11
Apr 17 14:31:02 node-01 blobfuse2[1271078]: LOG_TRACE [libfuse2_handler.go (611)]: Libfuse::libfuse_open : strippedpath/admin/bundle-report.html, handle 3
Apr 17 14:31:02 node-01 blobfuse2[1271078]: LOG_TRACE [libfuse2_handler.go (685)]: Libfuse::libfuse_flush : strippedpath/admin/bundle-report.html, handle: 3
Apr 17 14:31:02 node-01 blobfuse2[1271078]: LOG_TRACE [libfuse2_handler.go (733)]: Libfuse::libfuse_release : strippedpath/admin/bundle-report.html, handle: 3
Apr 17 14:31:02 node-01 blobfuse2[1271078]: LOG_TRACE [file_cache.go (905)]: FileCache::CloseFile : name=strippedpath/admin/bundle-report.html, handle=3
Apr 17 14:31:02 node-01 blobfuse2[1271078]: LOG_TRACE [lru_policy.go (163)]: lruPolicy::CacheInvalidate : /mnt/frontend-storage-account#bundle-reports-container#handle/strippedpath/admin/bundle-report.html
Apr 17 14:31:02 node-01 blobfuse2[1271078]: LOG_TRACE [lru_policy.go (178)]: lruPolicy::CachePurge : /mnt/frontend-storage-account#bundle-reports-container#handle/strippedpath/admin/bundle-report.html
Apr 17 14:31:02 node-01 blobfuse2[1271078]: LOG_TRACE [lru_policy.go (306)]: lruPolicy::removeNode : /mnt/frontend-storage-account#bundle-reports-container#handle/strippedpath/admin/bundle-report.html
Apr 17 14:31:02 node-01 blobfuse2[1271078]: LOG_TRACE [lru_policy.go (266)]: lruPolicy::Clear-delete
Apr 17 14:31:02 node-01 blobfuse2[1271078]: LOG_TRACE [lru_policy.go (411)]: lruPolicy::deleteItem : Deleting /mnt/frontend-storage-account#bundle-reports-container#handle/strippedpath/admin/bundle-report.html
Apr 17 14:31:02 node-01 blobfuse2[1271078]: LOG_DEBUG [cache_policy.go (145)]: cachePolicy::deleteFile : attempting to delete /mnt/frontend-storage-account#bundle-reports-container#handle/strippedpath/admin/bundle-report.html
Apr 17 14:32:36 node-01 blobfuse2[1271078]: LOG_TRACE [libfuse2_handler.go (357)]: Libfuse::libfuse_statfs :
Apr 17 14:32:36 node-01 blobfuse2[1271078]: LOG_TRACE [libfuse2_handler.go (357)]: Libfuse::libfuse_statfs :
Apr 17 14:32:36 node-01 blobfuse2[1271078]: LOG_TRACE [libfuse2_handler.go (275)]: Libfuse::libfuse_destroy : destroy
Apr 17 14:32:36 node-01 blobfuse2[1271078]: LOG_TRACE [libfuse.go (159)]: Libfuse::Stop : Stopping component libfuse
Apr 17 14:32:36 node-01 blobfuse2[1271078]: LOG_TRACE [libfuse2_handler.go (237)]: Libfuse::destroyFuse : Destroying FUSE
Apr 17 14:32:36 node-01 blobfuse2[1271078]: LOG_TRACE [file_cache.go (166)]: Stopping component : file_cache
Apr 17 14:32:36 node-01 blobfuse2[1271078]: LOG_TRACE [lru_policy.go (137)]: lruPolicy::ShutdownPolicy
Apr 17 14:32:36 node-01 blobfuse2[1271078]: LOG_ERR [file_cache.go (179)]: FileCache::TempCacheCleanup : Cleaning up temp directory /mnt/frontend-storage-account#bundle-reports-container#handle
Apr 17 14:32:36 node-01 blobfuse2[1271078]: LOG_TRACE [attr_cache.go (113)]: AttrCache::Stop : Stopping component attr_cache
Apr 17 14:32:36 node-01 blobfuse2[1271078]: LOG_TRACE [azstorage.go (177)]: AzStorage::Stop : Stopping component azstorage
Apr 17 14:33:57 node-01 blobfuse2[1281912]: LOG_WARNING [mount.go (364)]: mount: unsupported v1 CLI parameter: pre-mount-validate is always true in blobfuse2.
Apr 17 14:33:57 node-01 blobfuse2[1281912]: LOG_CRIT [mount.go (384)]: Starting Blobfuse2 Mount : 2.0.2 on [Ubuntu 18.04.6 LTS]
Apr 17 14:33:57 node-01 blobfuse2[1281912]: LOG_CRIT [mount.go (385)]: Logging level set to : LOG_DEBUG
Apr 17 14:33:57 node-01 blobfuse2[1281912]: LOG_TRACE [libfuse.go (220)]: Libfuse::Configure : libfuse
Apr 17 14:33:57 node-01 blobfuse2[1281912]: LOG_INFO [libfuse.go (260)]: Libfuse::Configure : read-only true, allow-other true, default-perm 511, entry-timeout 120, attr-time 120, negative-timeout 120, ignore-open-flags: true, nonempty false
Apr 17 14:33:57 node-01 blobfuse2[1281912]: LOG_TRACE [file_cache.go (197)]: FileCache::Configure : file_cache
Apr 17 14:33:57 node-01 blobfuse2[1281912]: LOG_INFO [file_cache.go (272)]: FileCache::Configure : Using default eviction policy
Apr 17 14:33:57 node-01 blobfuse2[1281912]: LOG_INFO [file_cache.go (291)]: FileCache::Configure : create-empty false, cache-timeout 120, tmp-path /mnt/frontend-storage-account#bundle-reports-container#handle, max-size-mb 0, high-mark 80, low-mark 60
Apr 17 14:33:57 node-01 blobfuse2[1281912]: LOG_TRACE [attr_cache.go (121)]: AttrCache::Configure : attr_cache
Apr 17 14:33:57 node-01 blobfuse2[1281912]: LOG_INFO [attr_cache.go (145)]: AttrCache::Configure : cache-timeout 120, symlink false, cache-on-list true
Apr 17 14:33:57 node-01 blobfuse2[1281912]: LOG_TRACE [azstorage.go (83)]: AzStorage::Configure : azstorage
Apr 17 14:33:57 node-01 blobfuse2[1281912]: LOG_TRACE [config.go (270)]: ParseAndValidateConfig : Parsing config
Apr 17 14:33:57 node-01 blobfuse2[1281912]: LOG_INFO [config.go (372)]: ParseAndValidateConfig : using the following proxy address from the config file:
Apr 17 14:33:57 node-01 blobfuse2[1281912]: LOG_INFO [config.go (376)]: ParseAndValidateConfig : sdk logging from the config file: false
Apr 17 14:33:57 node-01 blobfuse2[1281912]: LOG_TRACE [config.go (479)]: ParseAndReadDynamicConfig : Reparsing config
Apr 17 14:33:57 node-01 blobfuse2[1281912]: LOG_DEBUG [config.go (383)]: ParseAndValidateConfig : Getting auth type
Apr 17 14:33:57 node-01 blobfuse2[1281912]: LOG_INFO [config.go (467)]: ParseAndValidateConfig : Account: strippedaccount, Container: frontend-bundle-reports, AccountType: BLOCK, Auth: SPN, Prefix: , Endpoint: https://strippedaccount.blob.core.windows.net/, ListBlock: 10, MD5 : false false, Virtual Directory: true
Apr 17 14:33:57 node-01 blobfuse2[1281912]: LOG_INFO [config.go (471)]: ParseAndValidateConfig : Retry Config: Retry count 5, Max Timeout 900, BackOff Time 4, Max Delay 60
Apr 17 14:33:57 node-01 blobfuse2[1281912]: LOG_TRACE [block_blob.go (173)]: BlockBlob::SetupPipeline : Setting up
Apr 17 14:33:57 node-01 blobfuse2[1281912]: LOG_TRACE [block_blob.go (135)]: BlockBlob::getCredential : Getting credential
Apr 17 14:33:57 node-01 blobfuse2[1281912]: LOG_DEBUG [azauth.go (79)]: azAuth::getAzAuth : Account: strippedaccount, AccountType: BLOCK, Protocol: https, Endpoint: https://strippedaccount.blob.core.windows.net/
Apr 17 14:34:03 node-01 blobfuse2[1281912]: LOG_DEBUG [azauthspn.go (105)]: azAuthBlobSPN::getCredential : SPN Token retrieved ***stipped***
Apr 17 14:34:03 node-01 blobfuse2[1281912]: LOG_TRACE [block_blob.go (260)]: BlockBlob::SetPrefixPath : path
Apr 17 14:34:03 node-01 blobfuse2[1281912]: LOG_TRACE [block_blob.go (209)]: BlockBlob::TestPipeline : Validating
Apr 17 14:34:08 node-01 blobfuse2[1281912]: LOG_INFO [mount.go (392)]: mount: Mounting blobfuse2 on /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount
Apr 17 14:34:08 node-01 blobfuse2[1281912]: LOG_DEBUG [mount.go (410)]: mount: foreground disabled, child = false
Apr 17 14:34:13 node-01 blobfuse2[1282217]: LOG_WARNING [mount.go (364)]: mount: unsupported v1 CLI parameter: pre-mount-validate is always true in blobfuse2.
Apr 17 14:34:13 node-01 blobfuse2[1282217]: LOG_CRIT [mount.go (384)]: Starting Blobfuse2 Mount : 2.0.2 on [Ubuntu 18.04.6 LTS]
Apr 17 14:34:13 node-01 blobfuse2[1282217]: LOG_CRIT [mount.go (385)]: Logging level set to : LOG_DEBUG
Apr 17 14:34:13 node-01 blobfuse2[1282217]: LOG_TRACE [libfuse.go (220)]: Libfuse::Configure : libfuse
Apr 17 14:34:13 node-01 blobfuse2[1282217]: LOG_INFO [libfuse.go (260)]: Libfuse::Configure : read-only true, allow-other true, default-perm 511, entry-timeout 120, attr-time 120, negative-timeout 120, ignore-open-flags: true, nonempty false
Apr 17 14:34:13 node-01 blobfuse2[1282217]: LOG_TRACE [file_cache.go (197)]: FileCache::Configure : file_cache
Apr 17 14:34:13 node-01 blobfuse2[1282217]: LOG_INFO [file_cache.go (272)]: FileCache::Configure : Using default eviction policy
Apr 17 14:34:13 node-01 blobfuse2[1282217]: LOG_INFO [file_cache.go (291)]: FileCache::Configure : create-empty false, cache-timeout 120, tmp-path /mnt/frontend-storage-account#bundle-reports-container#handle, max-size-mb 0, high-mark 80, low-mark 60
Apr 17 14:34:13 node-01 blobfuse2[1282217]: LOG_TRACE [attr_cache.go (121)]: AttrCache::Configure : attr_cache
Apr 17 14:34:13 node-01 blobfuse2[1282217]: LOG_INFO [attr_cache.go (145)]: AttrCache::Configure : cache-timeout 120, symlink false, cache-on-list true
Apr 17 14:34:13 node-01 blobfuse2[1282217]: LOG_TRACE [azstorage.go (83)]: AzStorage::Configure : azstorage
Apr 17 14:34:13 node-01 blobfuse2[1282217]: LOG_TRACE [config.go (270)]: ParseAndValidateConfig : Parsing config
Apr 17 14:34:13 node-01 blobfuse2[1282217]: LOG_INFO [config.go (372)]: ParseAndValidateConfig : using the following proxy address from the config file:
Apr 17 14:34:13 node-01 blobfuse2[1282217]: LOG_INFO [config.go (376)]: ParseAndValidateConfig : sdk logging from the config file: false
Apr 17 14:34:13 node-01 blobfuse2[1282217]: LOG_TRACE [config.go (479)]: ParseAndReadDynamicConfig : Reparsing config
Apr 17 14:34:13 node-01 blobfuse2[1282217]: LOG_DEBUG [config.go (383)]: ParseAndValidateConfig : Getting auth type
Apr 17 14:34:13 node-01 blobfuse2[1282217]: LOG_INFO [config.go (467)]: ParseAndValidateConfig : Account: strippedaccount, Container: frontend-bundle-reports, AccountType: BLOCK, Auth: SPN, Prefix: , Endpoint: https://strippedaccount.blob.core.windows.net/, ListBlock: 10, MD5 : false false, Virtual Directory: true
Apr 17 14:34:13 node-01 blobfuse2[1282217]: LOG_INFO [config.go (471)]: ParseAndValidateConfig : Retry Config: Retry count 5, Max Timeout 900, BackOff Time 4, Max Delay 60
Apr 17 14:34:13 node-01 blobfuse2[1282217]: LOG_TRACE [block_blob.go (173)]: BlockBlob::SetupPipeline : Setting up
Apr 17 14:34:13 node-01 blobfuse2[1282217]: LOG_TRACE [block_blob.go (135)]: BlockBlob::getCredential : Getting credential
Apr 17 14:34:13 node-01 blobfuse2[1282217]: LOG_DEBUG [azauth.go (79)]: azAuth::getAzAuth : Account: strippedaccount, AccountType: BLOCK, Protocol: https, Endpoint: https://strippedaccount.blob.core.windows.net/
Apr 17 14:34:18 node-01 blobfuse2[1282217]: LOG_DEBUG [azauthspn.go (105)]: azAuthBlobSPN::getCredential : SPN Token retrieved ***stipped***
Apr 17 14:34:18 node-01 blobfuse2[1282217]: LOG_TRACE [block_blob.go (260)]: BlockBlob::SetPrefixPath : path
Apr 17 14:34:18 node-01 blobfuse2[1282217]: LOG_INFO [mount.go (392)]: mount: Mounting blobfuse2 on /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount
Apr 17 14:34:18 node-01 blobfuse2[1282217]: LOG_DEBUG [mount.go (410)]: mount: foreground disabled, child = true
Apr 17 14:34:18 node-01 blobfuse2[1282217]: LOG_DEBUG [mount.go (477)]: Mount::runPipeline : blobfuse2 pid = 1282217, transfer pipe = /tmp/transferPipe_1282217, polling pipe = /tmp/pollPipe_1282217
Apr 17 14:34:18 node-01 blobfuse2[1282217]: LOG_TRACE [azstorage.go (164)]: AzStorage::Start : Starting component azstorage
Apr 17 14:34:18 node-01 blobfuse2[1282217]: LOG_TRACE [attr_cache.go (103)]: AttrCache::Start : Starting component attr_cache
Apr 17 14:34:18 node-01 blobfuse2[1282217]: LOG_TRACE [file_cache.go (140)]: Starting component : file_cache
Apr 17 14:34:18 node-01 blobfuse2[1282217]: LOG_TRACE [lru_policy.go (108)]: lruPolicy::StartPolicy
Apr 17 14:34:18 node-01 blobfuse2[1282217]: LOG_TRACE [libfuse.go (136)]: Libfuse::Start : Starting component libfuse
Apr 17 14:34:18 node-01 blobfuse2[1282217]: LOG_TRACE [lru_policy.go (261)]: lruPolicy::ClearCache
Apr 17 14:34:18 node-01 blobfuse2[1282217]: LOG_TRACE [libfuse2_handler.go (116)]: Libfuse::initFuse : Initializing FUSE
Apr 17 14:34:18 node-01 blobfuse2[1282217]: LOG_TRACE [libfuse2_handler.go (159)]: Libfuse::initFuse : Registering fuse callbacks
Apr 17 14:34:18 node-01 blobfuse2[1282217]: LOG_TRACE [libfuse2_handler.go (163)]: Libfuse::initFuse : Populating fuse arguments
Apr 17 14:34:18 node-01 blobfuse2[1282217]: LOG_TRACE [libfuse2_handler.go (187)]: Libfuse::populateFuseArgs
Apr 17 14:34:18 node-01 blobfuse2[1282217]: LOG_DEBUG [libfuse2_handler.go (223)]: Libfuse::populateFuseArgs : opts : blobfuse2
Apr 17 14:34:18 node-01 blobfuse2[1282217]: LOG_DEBUG [libfuse2_handler.go (223)]: Libfuse::populateFuseArgs : opts : /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount
Apr 17 14:34:18 node-01 blobfuse2[1282217]: LOG_DEBUG [libfuse2_handler.go (223)]: Libfuse::populateFuseArgs : opts : -o
Apr 17 14:34:18 node-01 blobfuse2[1282217]: LOG_DEBUG [libfuse2_handler.go (223)]: Libfuse::populateFuseArgs : opts : entry_timeout=120,attr_timeout=120,negative_timeout=120,allow_other,ro
Apr 17 14:34:18 node-01 blobfuse2[1282217]: LOG_DEBUG [libfuse2_handler.go (223)]: Libfuse::populateFuseArgs : opts : -f
Apr 17 14:34:18 node-01 blobfuse2[1282217]: LOG_DEBUG [libfuse2_handler.go (223)]: Libfuse::populateFuseArgs : opts : -ofsname=blobfuse2
Apr 17 14:34:18 node-01 blobfuse2[1282217]: LOG_DEBUG [libfuse2_handler.go (223)]: Libfuse::populateFuseArgs : opts : -okernel_cache
Apr 17 14:34:18 node-01 blobfuse2[1282217]: LOG_INFO [libfuse2_handler.go (175)]: Libfuse::initFuse : Mounting with fuse2 library
Apr 17 14:34:18 node-01 blobfuse2[1282217]: LOG_TRACE [libfuse2_handler.go (243)]: Libfuse::libfuse2_init : init
Apr 17 14:34:18 node-01 blobfuse2[1282217]: LOG_INFO [libfuse2_handler.go (246)]: Libfuse::libfuse2_init : Kernel Caps : 4091
Apr 17 14:34:18 node-01 blobfuse2[1282217]: LOG_INFO [libfuse2_handler.go (249)]: Libfuse::libfuse2_init : Enable Capability : FUSE_CAP_ASYNC_READ
Apr 17 14:34:18 node-01 blobfuse2[1282217]: LOG_INFO [libfuse2_handler.go (254)]: Libfuse::libfuse2_init : Enable Capability : FUSE_CAP_BIG_WRITES
Apr 17 14:34:18 node-01 blobfuse2[1282217]: LOG_INFO [libfuse2_handler.go (260)]: Libfuse::libfuse2_init : Enable Capability : FUSE_CAP_SPLICE_WRITE
Apr 17 14:35:41 node-01 blobfuse2[1282217]: LOG_TRACE [libfuse2_handler.go (357)]: Libfuse::libfuse_statfs :
Apr 17 14:35:42 node-01 blobfuse2[1282217]: LOG_TRACE [libfuse2_handler.go (357)]: Libfuse::libfuse_statfs :
Apr 17 14:35:42 node-01 blobfuse2[1282217]: LOG_TRACE [libfuse2_handler.go (275)]: Libfuse::libfuse_destroy : destroy
Apr 17 14:35:42 node-01 blobfuse2[1282217]: LOG_TRACE [libfuse.go (159)]: Libfuse::Stop : Stopping component libfuse
Apr 17 14:35:42 node-01 blobfuse2[1282217]: LOG_TRACE [libfuse2_handler.go (237)]: Libfuse::destroyFuse : Destroying FUSE
Apr 17 14:35:42 node-01 blobfuse2[1282217]: LOG_TRACE [file_cache.go (166)]: Stopping component : file_cache
Apr 17 14:35:42 node-01 blobfuse2[1282217]: LOG_TRACE [lru_policy.go (137)]: lruPolicy::ShutdownPolicy
Apr 17 14:35:42 node-01 blobfuse2[1282217]: LOG_TRACE [attr_cache.go (113)]: AttrCache::Stop : Stopping component attr_cache
Apr 17 14:35:42 node-01 blobfuse2[1282217]: LOG_TRACE [azstorage.go (177)]: AzStorage::Stop : Stopping component azstorage
Apr 17 14:37:56 node-01 blobfuse2[1288352]: LOG_WARNING [mount.go (364)]: mount: unsupported v1 CLI parameter: pre-mount-validate is always true in blobfuse2.
Apr 17 14:37:56 node-01 blobfuse2[1288352]: LOG_CRIT [mount.go (384)]: Starting Blobfuse2 Mount : 2.0.2 on [Ubuntu 18.04.6 LTS]
Apr 17 14:37:56 node-01 blobfuse2[1288352]: LOG_CRIT [mount.go (385)]: Logging level set to : LOG_DEBUG
Apr 17 14:37:56 node-01 blobfuse2[1288352]: LOG_TRACE [libfuse.go (220)]: Libfuse::Configure : libfuse
Apr 17 14:37:56 node-01 blobfuse2[1288352]: LOG_INFO [libfuse.go (260)]: Libfuse::Configure : read-only true, allow-other true, default-perm 511, entry-timeout 120, attr-time 120, negative-timeout 120, ignore-open-flags: true, nonempty false
Apr 17 14:37:56 node-01 blobfuse2[1288352]: LOG_TRACE [file_cache.go (197)]: FileCache::Configure : file_cache
Apr 17 14:37:56 node-01 blobfuse2[1288352]: LOG_INFO [file_cache.go (272)]: FileCache::Configure : Using default eviction policy
Apr 17 14:37:56 node-01 blobfuse2[1288352]: LOG_INFO [file_cache.go (291)]: FileCache::Configure : create-empty false, cache-timeout 120, tmp-path /mnt/frontend-storage-account#bundle-reports-container#handle, max-size-mb 0, high-mark 80, low-mark 60
Apr 17 14:37:56 node-01 blobfuse2[1288352]: LOG_TRACE [attr_cache.go (121)]: AttrCache::Configure : attr_cache
Apr 17 14:37:56 node-01 blobfuse2[1288352]: LOG_INFO [attr_cache.go (145)]: AttrCache::Configure : cache-timeout 120, symlink false, cache-on-list true
Apr 17 14:37:56 node-01 blobfuse2[1288352]: LOG_TRACE [azstorage.go (83)]: AzStorage::Configure : azstorage
Apr 17 14:37:56 node-01 blobfuse2[1288352]: LOG_TRACE [config.go (270)]: ParseAndValidateConfig : Parsing config
Apr 17 14:37:56 node-01 blobfuse2[1288352]: LOG_INFO [config.go (372)]: ParseAndValidateConfig : using the following proxy address from the config file:
Apr 17 14:37:56 node-01 blobfuse2[1288352]: LOG_INFO [config.go (376)]: ParseAndValidateConfig : sdk logging from the config file: false
Apr 17 14:37:56 node-01 blobfuse2[1288352]: LOG_TRACE [config.go (479)]: ParseAndReadDynamicConfig : Reparsing config
Apr 17 14:37:56 node-01 blobfuse2[1288352]: LOG_DEBUG [config.go (383)]: ParseAndValidateConfig : Getting auth type
Apr 17 14:37:56 node-01 blobfuse2[1288352]: LOG_INFO [config.go (467)]: ParseAndValidateConfig : Account: strippedaccount, Container: frontend-bundle-reports, AccountType: BLOCK, Auth: SPN, Prefix: , Endpoint: https://strippedaccount.blob.core.windows.net/, ListBlock: 10, MD5 : false false, Virtual Directory: true
Apr 17 14:37:56 node-01 blobfuse2[1288352]: LOG_INFO [config.go (471)]: ParseAndValidateConfig : Retry Config: Retry count 5, Max Timeout 900, BackOff Time 4, Max Delay 60
Apr 17 14:37:56 node-01 blobfuse2[1288352]: LOG_TRACE [block_blob.go (173)]: BlockBlob::SetupPipeline : Setting up
Apr 17 14:37:56 node-01 blobfuse2[1288352]: LOG_TRACE [block_blob.go (135)]: BlockBlob::getCredential : Getting credential
Apr 17 14:37:56 node-01 blobfuse2[1288352]: LOG_DEBUG [azauth.go (79)]: azAuth::getAzAuth : Account: strippedaccount, AccountType: BLOCK, Protocol: https, Endpoint: https://strippedaccount.blob.core.windows.net/
Apr 17 14:38:02 node-01 blobfuse2[1288352]: LOG_DEBUG [azauthspn.go (105)]: azAuthBlobSPN::getCredential : SPN Token retrieved ***stipped***
Apr 17 14:38:02 node-01 blobfuse2[1288352]: LOG_TRACE [block_blob.go (260)]: BlockBlob::SetPrefixPath : path
Apr 17 14:38:02 node-01 blobfuse2[1288352]: LOG_TRACE [block_blob.go (209)]: BlockBlob::TestPipeline : Validating
Apr 17 14:38:07 node-01 blobfuse2[1288352]: LOG_INFO [mount.go (392)]: mount: Mounting blobfuse2 on /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount
Apr 17 14:38:07 node-01 blobfuse2[1288352]: LOG_DEBUG [mount.go (410)]: mount: foreground disabled, child = false
Apr 17 14:38:12 node-01 blobfuse2[1288719]: LOG_WARNING [mount.go (364)]: mount: unsupported v1 CLI parameter: pre-mount-validate is always true in blobfuse2.
Apr 17 14:38:12 node-01 blobfuse2[1288719]: LOG_CRIT [mount.go (384)]: Starting Blobfuse2 Mount : 2.0.2 on [Ubuntu 18.04.6 LTS]
Apr 17 14:38:12 node-01 blobfuse2[1288719]: LOG_CRIT [mount.go (385)]: Logging level set to : LOG_DEBUG
Apr 17 14:38:12 node-01 blobfuse2[1288719]: LOG_TRACE [libfuse.go (220)]: Libfuse::Configure : libfuse
Apr 17 14:38:12 node-01 blobfuse2[1288719]: LOG_INFO [libfuse.go (260)]: Libfuse::Configure : read-only true, allow-other true, default-perm 511, entry-timeout 120, attr-time 120, negative-timeout 120, ignore-open-flags: true, nonempty false
Apr 17 14:38:12 node-01 blobfuse2[1288719]: LOG_TRACE [file_cache.go (197)]: FileCache::Configure : file_cache
Apr 17 14:38:12 node-01 blobfuse2[1288719]: LOG_INFO [file_cache.go (272)]: FileCache::Configure : Using default eviction policy
Apr 17 14:38:12 node-01 blobfuse2[1288719]: LOG_INFO [file_cache.go (291)]: FileCache::Configure : create-empty false, cache-timeout 120, tmp-path /mnt/frontend-storage-account#bundle-reports-container#handle, max-size-mb 0, high-mark 80, low-mark 60
Apr 17 14:38:12 node-01 blobfuse2[1288719]: LOG_TRACE [attr_cache.go (121)]: AttrCache::Configure : attr_cache
Apr 17 14:38:12 node-01 blobfuse2[1288719]: LOG_INFO [attr_cache.go (145)]: AttrCache::Configure : cache-timeout 120, symlink false, cache-on-list true
Apr 17 14:38:12 node-01 blobfuse2[1288719]: LOG_TRACE [azstorage.go (83)]: AzStorage::Configure : azstorage
Apr 17 14:38:12 node-01 blobfuse2[1288719]: LOG_TRACE [config.go (270)]: ParseAndValidateConfig : Parsing config
Apr 17 14:38:12 node-01 blobfuse2[1288719]: LOG_INFO [config.go (372)]: ParseAndValidateConfig : using the following proxy address from the config file:
Apr 17 14:38:12 node-01 blobfuse2[1288719]: LOG_INFO [config.go (376)]: ParseAndValidateConfig : sdk logging from the config file: false
Apr 17 14:38:12 node-01 blobfuse2[1288719]: LOG_TRACE [config.go (479)]: ParseAndReadDynamicConfig : Reparsing config
Apr 17 14:38:12 node-01 blobfuse2[1288719]: LOG_DEBUG [config.go (383)]: ParseAndValidateConfig : Getting auth type
Apr 17 14:38:12 node-01 blobfuse2[1288719]: LOG_INFO [config.go (467)]: ParseAndValidateConfig : Account: strippedaccount, Container: frontend-bundle-reports, AccountType: BLOCK, Auth: SPN, Prefix: , Endpoint: https://strippedaccount.blob.core.windows.net/, ListBlock: 10, MD5 : false false, Virtual Directory: true
Apr 17 14:38:12 node-01 blobfuse2[1288719]: LOG_INFO [config.go (471)]: ParseAndValidateConfig : Retry Config: Retry count 5, Max Timeout 900, BackOff Time 4, Max Delay 60
Apr 17 14:38:12 node-01 blobfuse2[1288719]: LOG_TRACE [block_blob.go (173)]: BlockBlob::SetupPipeline : Setting up
Apr 17 14:38:12 node-01 blobfuse2[1288719]: LOG_TRACE [block_blob.go (135)]: BlockBlob::getCredential : Getting credential
Apr 17 14:38:12 node-01 blobfuse2[1288719]: LOG_DEBUG [azauth.go (79)]: azAuth::getAzAuth : Account: strippedaccount, AccountType: BLOCK, Protocol: https, Endpoint: https://strippedaccount.blob.core.windows.net/
Apr 17 14:38:17 node-01 blobfuse2[1288719]: LOG_DEBUG [azauthspn.go (105)]: azAuthBlobSPN::getCredential : SPN Token retrieved ***stipped***
Apr 17 14:38:17 node-01 blobfuse2[1288719]: LOG_TRACE [block_blob.go (260)]: BlockBlob::SetPrefixPath : path
Apr 17 14:38:17 node-01 blobfuse2[1288719]: LOG_INFO [mount.go (392)]: mount: Mounting blobfuse2 on /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount
Apr 17 14:38:17 node-01 blobfuse2[1288719]: LOG_DEBUG [mount.go (410)]: mount: foreground disabled, child = true
Apr 17 14:38:17 node-01 blobfuse2[1288719]: LOG_DEBUG [mount.go (477)]: Mount::runPipeline : blobfuse2 pid = 1288719, transfer pipe = /tmp/transferPipe_1288719, polling pipe = /tmp/pollPipe_1288719
Apr 17 14:38:17 node-01 blobfuse2[1288719]: LOG_TRACE [azstorage.go (164)]: AzStorage::Start : Starting component azstorage
Apr 17 14:38:17 node-01 blobfuse2[1288719]: LOG_TRACE [attr_cache.go (103)]: AttrCache::Start : Starting component attr_cache
Apr 17 14:38:17 node-01 blobfuse2[1288719]: LOG_TRACE [file_cache.go (140)]: Starting component : file_cache
Apr 17 14:38:17 node-01 blobfuse2[1288719]: LOG_TRACE [lru_policy.go (108)]: lruPolicy::StartPolicy
Apr 17 14:38:17 node-01 blobfuse2[1288719]: LOG_TRACE [libfuse.go (136)]: Libfuse::Start : Starting component libfuse
Apr 17 14:38:17 node-01 blobfuse2[1288719]: LOG_TRACE [libfuse2_handler.go (116)]: Libfuse::initFuse : Initializing FUSE
Apr 17 14:38:17 node-01 blobfuse2[1288719]: LOG_TRACE [lru_policy.go (261)]: lruPolicy::ClearCache
Apr 17 14:38:17 node-01 blobfuse2[1288719]: LOG_TRACE [libfuse2_handler.go (159)]: Libfuse::initFuse : Registering fuse callbacks
Apr 17 14:38:17 node-01 blobfuse2[1288719]: LOG_TRACE [libfuse2_handler.go (163)]: Libfuse::initFuse : Populating fuse arguments
Apr 17 14:38:17 node-01 blobfuse2[1288719]: LOG_TRACE [libfuse2_handler.go (187)]: Libfuse::populateFuseArgs
Apr 17 14:38:17 node-01 blobfuse2[1288719]: LOG_DEBUG [libfuse2_handler.go (223)]: Libfuse::populateFuseArgs : opts : blobfuse2
Apr 17 14:38:17 node-01 blobfuse2[1288719]: LOG_DEBUG [libfuse2_handler.go (223)]: Libfuse::populateFuseArgs : opts : /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount
Apr 17 14:38:17 node-01 blobfuse2[1288719]: LOG_DEBUG [libfuse2_handler.go (223)]: Libfuse::populateFuseArgs : opts : -o
Apr 17 14:38:17 node-01 blobfuse2[1288719]: LOG_DEBUG [libfuse2_handler.go (223)]: Libfuse::populateFuseArgs : opts : entry_timeout=120,attr_timeout=120,negative_timeout=120,allow_other,ro
Apr 17 14:38:17 node-01 blobfuse2[1288719]: LOG_DEBUG [libfuse2_handler.go (223)]: Libfuse::populateFuseArgs : opts : -f
Apr 17 14:38:17 node-01 blobfuse2[1288719]: LOG_DEBUG [libfuse2_handler.go (223)]: Libfuse::populateFuseArgs : opts : -ofsname=blobfuse2
Apr 17 14:38:17 node-01 blobfuse2[1288719]: LOG_DEBUG [libfuse2_handler.go (223)]: Libfuse::populateFuseArgs : opts : -okernel_cache
Apr 17 14:38:17 node-01 blobfuse2[1288719]: LOG_INFO [libfuse2_handler.go (175)]: Libfuse::initFuse : Mounting with fuse2 library
Apr 17 14:38:17 node-01 blobfuse2[1288719]: LOG_TRACE [libfuse2_handler.go (243)]: Libfuse::libfuse2_init : init
Apr 17 14:38:17 node-01 blobfuse2[1288719]: LOG_INFO [libfuse2_handler.go (246)]: Libfuse::libfuse2_init : Kernel Caps : 4091
Apr 17 14:38:17 node-01 blobfuse2[1288719]: LOG_INFO [libfuse2_handler.go (249)]: Libfuse::libfuse2_init : Enable Capability : FUSE_CAP_ASYNC_READ
Apr 17 14:38:17 node-01 blobfuse2[1288719]: LOG_INFO [libfuse2_handler.go (254)]: Libfuse::libfuse2_init : Enable Capability : FUSE_CAP_BIG_WRITES
Apr 17 14:38:17 node-01 blobfuse2[1288719]: LOG_INFO [libfuse2_handler.go (260)]: Libfuse::libfuse2_init : Enable Capability : FUSE_CAP_SPLICE_WRITE
Apr 17 14:39:55 node-01 blobfuse2[1288719]: LOG_TRACE [file_cache.go (1149)]: FileCache::GetAttr : reports
Apr 17 14:39:55 node-01 blobfuse2[1288719]: LOG_TRACE [attr_cache.go (455)]: AttrCache::GetAttr : reports
Apr 17 14:39:55 node-01 blobfuse2[1288719]: LOG_TRACE [block_blob.go (522)]: BlockBlob::GetAttr : name reports
Apr 17 14:39:55 node-01 blobfuse2[1288719]: LOG_TRACE [block_blob.go (469)]: BlockBlob::getAttrUsingList : name reports
Apr 17 14:39:55 node-01 blobfuse2[1288719]: LOG_TRACE [block_blob.go (536)]: BlockBlob::List : prefix reports, marker
Apr 17 14:40:00 node-01 blobfuse2[1288719]: LOG_TRACE [block_blob.go (431)]: BlockBlob::getAttrUsingRest : name reports/
Apr 17 14:40:00 node-01 blobfuse2[1288719]: LOG_TRACE [block_blob.go (495)]: BlockBlob::getAttrUsingList : Item 0 Blob reports
Apr 17 14:40:00 node-01 blobfuse2[1288719]: LOG_TRACE [file_cache.go (1149)]: FileCache::GetAttr : strippedpath
Apr 17 14:40:00 node-01 blobfuse2[1288719]: LOG_TRACE [attr_cache.go (455)]: AttrCache::GetAttr : strippedpath
Apr 17 14:40:00 node-01 blobfuse2[1288719]: LOG_TRACE [block_blob.go (522)]: BlockBlob::GetAttr : name strippedpath
Apr 17 14:40:00 node-01 blobfuse2[1288719]: LOG_TRACE [block_blob.go (469)]: BlockBlob::getAttrUsingList : name strippedpath
Apr 17 14:40:00 node-01 blobfuse2[1288719]: LOG_TRACE [block_blob.go (536)]: BlockBlob::List : prefix strippedpath, marker
Apr 17 14:40:00 node-01 blobfuse2[1288719]: LOG_TRACE [block_blob.go (431)]: BlockBlob::getAttrUsingRest : name strippedpath/
Apr 17 14:40:00 node-01 blobfuse2[1288719]: LOG_TRACE [block_blob.go (495)]: BlockBlob::getAttrUsingList : Item 0 Blob stripped
Apr 17 14:40:00 node-01 blobfuse2[1288719]: LOG_TRACE [file_cache.go (1149)]: FileCache::GetAttr : strippedpath/admin
Apr 17 14:40:00 node-01 blobfuse2[1288719]: LOG_TRACE [attr_cache.go (455)]: AttrCache::GetAttr : strippedpath/admin
Apr 17 14:40:00 node-01 blobfuse2[1288719]: LOG_TRACE [block_blob.go (522)]: BlockBlob::GetAttr : name strippedpath/admin
Apr 17 14:40:00 node-01 blobfuse2[1288719]: LOG_TRACE [block_blob.go (469)]: BlockBlob::getAttrUsingList : name strippedpath/admin
Apr 17 14:40:00 node-01 blobfuse2[1288719]: LOG_TRACE [block_blob.go (536)]: BlockBlob::List : prefix strippedpath/admin, marker
Apr 17 14:40:00 node-01 blobfuse2[1288719]: LOG_TRACE [block_blob.go (431)]: BlockBlob::getAttrUsingRest : name strippedpath/admin/
Apr 17 14:40:00 node-01 blobfuse2[1288719]: LOG_TRACE [block_blob.go (495)]: BlockBlob::getAttrUsingList : Item 0 Blob admin
Apr 17 14:40:00 node-01 blobfuse2[1288719]: LOG_TRACE [file_cache.go (1149)]: FileCache::GetAttr : strippedpath/admin/bundle-report.html
Apr 17 14:40:00 node-01 blobfuse2[1288719]: LOG_TRACE [attr_cache.go (455)]: AttrCache::GetAttr : strippedpath/admin/bundle-report.html
Apr 17 14:40:00 node-01 blobfuse2[1288719]: LOG_TRACE [block_blob.go (522)]: BlockBlob::GetAttr : name strippedpath/admin/bundle-report.html
Apr 17 14:40:00 node-01 blobfuse2[1288719]: LOG_TRACE [block_blob.go (469)]: BlockBlob::getAttrUsingList : name strippedpath/admin/bundle-report.html
Apr 17 14:40:00 node-01 blobfuse2[1288719]: LOG_TRACE [block_blob.go (536)]: BlockBlob::List : prefix strippedpath/admin/bundle-report.html, marker
Apr 17 14:40:00 node-01 blobfuse2[1288719]: LOG_TRACE [block_blob.go (495)]: BlockBlob::getAttrUsingList : Item 0 Blob bundle-report.html
Apr 17 14:40:00 node-01 blobfuse2[1288719]: LOG_TRACE [libfuse2_handler.go (577)]: Libfuse::libfuse_open : strippedpath/admin/bundle-report.html
Apr 17 14:40:00 node-01 blobfuse2[1288719]: LOG_TRACE [file_cache.go (771)]: FileCache::OpenFile : name=strippedpath/admin/bundle-report.html, flags=34816, mode=-rwxrwxrwx
Apr 17 14:40:00 node-01 blobfuse2[1288719]: LOG_TRACE [lru_policy.go (185)]: lruPolicy::IsCached : /mnt/frontend-storage-account#bundle-reports-container#handle/strippedpath/admin/bundle-report.html
Apr 17 14:40:00 node-01 blobfuse2[1288719]: LOG_DEBUG [lru_policy.go (190)]: lruPolicy::IsCached : /mnt/frontend-storage-account#bundle-reports-container#handle/strippedpath/admin/bundle-report.html, deleted:false
Apr 17 14:40:00 node-01 blobfuse2[1288719]: LOG_DEBUG [file_cache.go (758)]: FileCache::isDownloadRequired : /mnt/frontend-storage-account#bundle-reports-container#handle/strippedpath/admin/bundle-report.html not present in local cache
Apr 17 14:40:00 node-01 blobfuse2[1288719]: LOG_DEBUG [file_cache.go (793)]: FileCache::OpenFile : Need to re-download strippedpath/admin/bundle-report.html
Apr 17 14:40:00 node-01 blobfuse2[1288719]: LOG_TRACE [attr_cache.go (455)]: AttrCache::GetAttr : strippedpath/admin/bundle-report.html
Apr 17 14:40:00 node-01 blobfuse2[1288719]: LOG_DEBUG [attr_cache.go (474)]: AttrCache::GetAttr : strippedpath/admin/bundle-report.html served from cache
Apr 17 14:40:00 node-01 blobfuse2[1288719]: LOG_TRACE [azstorage.go (478)]: AzStorage::CopyToFile : Read file strippedpath/admin/bundle-report.html
Apr 17 14:40:00 node-01 blobfuse2[1288719]: LOG_TRACE [block_blob.go (666)]: BlockBlob::ReadToFile : name strippedpath/admin/bundle-report.html, offset : 0, count 1808765
Apr 17 14:40:00 node-01 blobfuse2[1288719]: LOG_DEBUG [block_blob.go (692)]: BlockBlob::ReadToFile : Download complete of blob strippedpath/admin/bundle-report.html
Apr 17 14:40:00 node-01 blobfuse2[1288719]: LOG_DEBUG [file_cache.go (847)]: FileCache::OpenFile : Download of strippedpath/admin/bundle-report.html is complete
Apr 17 14:40:00 node-01 blobfuse2[1288719]: LOG_INFO [file_cache.go (897)]: FileCache::OpenFile : file=strippedpath/admin/bundle-report.html, fd=11
Apr 17 14:40:00 node-01 blobfuse2[1288719]: LOG_TRACE [libfuse2_handler.go (611)]: Libfuse::libfuse_open : strippedpath/admin/bundle-report.html, handle 1
Apr 17 14:40:00 node-01 blobfuse2[1288719]: LOG_TRACE [libfuse2_handler.go (685)]: Libfuse::libfuse_flush : strippedpath/admin/bundle-report.html, handle: 1
Apr 17 14:40:00 node-01 blobfuse2[1288719]: LOG_TRACE [libfuse2_handler.go (733)]: Libfuse::libfuse_release : strippedpath/admin/bundle-report.html, handle: 1
Apr 17 14:40:00 node-01 blobfuse2[1288719]: LOG_TRACE [file_cache.go (905)]: FileCache::CloseFile : name=strippedpath/admin/bundle-report.html, handle=1
Apr 17 14:40:00 node-01 blobfuse2[1288719]: LOG_TRACE [lru_policy.go (163)]: lruPolicy::CacheInvalidate : /mnt/frontend-storage-account#bundle-reports-container#handle/strippedpath/admin/bundle-report.html
Apr 17 14:40:00 node-01 blobfuse2[1288719]: LOG_TRACE [lru_policy.go (178)]: lruPolicy::CachePurge : /mnt/frontend-storage-account#bundle-reports-container#handle/strippedpath/admin/bundle-report.html
Apr 17 14:40:00 node-01 blobfuse2[1288719]: LOG_TRACE [lru_policy.go (306)]: lruPolicy::removeNode : /mnt/frontend-storage-account#bundle-reports-container#handle/strippedpath/admin/bundle-report.html
Apr 17 14:40:00 node-01 blobfuse2[1288719]: LOG_TRACE [lru_policy.go (266)]: lruPolicy::Clear-delete
Apr 17 14:40:00 node-01 blobfuse2[1288719]: LOG_TRACE [lru_policy.go (411)]: lruPolicy::deleteItem : Deleting /mnt/frontend-storage-account#bundle-reports-container#handle/strippedpath/admin/bundle-report.html
Apr 17 14:40:00 node-01 blobfuse2[1288719]: LOG_DEBUG [cache_policy.go (145)]: cachePolicy::deleteFile : attempting to delete /mnt/frontend-storage-account#bundle-reports-container#handle/strippedpath/admin/bundle-report.html

@vibhansa-msft
Copy link
Member

@kvet great to hear that.

@vibhansa-msft
Copy link
Member

Blobfuse logs shared above looks clean to me.

@andyzhangx
Copy link
Contributor

@kvet csi driver logs shows it's costing 27s to mount complete, and in v1.19.4, we set mount path timeout as 1min, that's why it works now:

I0417 14:26:30.977682 1067992 nodeserver.go:154] start connecting to blobfuse proxy, protocol: fuse2, args: /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount -o ro --log-level=LOG_DEBUG --virtual-directory=true -o allow_other --use-https=true --cancel-list-on-mount-seconds=10 --empty-dir-check=false --tmp-path=/mnt/frontend-storage-account#bundle-reports-container#handle --container-name=frontend-bundle-reports --pre-mount-validate=true
I0417 14:26:30.978212 1067992 nodeserver.go:163] begin to mount with blobfuse proxy, protocol: fuse2, args: /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount -o ro --log-level=LOG_DEBUG --virtual-directory=true -o allow_other --use-https=true --cancel-list-on-mount-seconds=10 --empty-dir-check=false --tmp-path=/mnt/frontend-storage-account#bundle-reports-container#handle --container-name=frontend-bundle-reports --pre-mount-validate=true
I0417 14:26:47.366271 1067992 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
...many similar log messages...
I0417 14:26:57.966786 1067992 mount_linux.go:283] Detected umount with safe 'not mounted' behavior
I0417 14:26:57.966899 1067992 nodeserver.go:591] blobfuse mount at /var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount success
I0417 14:26:57.966917 1067992 nodeserver.go:409] volume(frontend-storage-account#bundle-reports-container#handle) mount on "/var/lib/kubelet/plugins/kubernetes.io/csi/blob.csi.azure.com/0996b15fb1f08f675cc4771ab8245e3b68ed7ed3abec8f2f45d196e3d33a1d43/globalmount" succeeded

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment