Document URL: https://docs.openshift.com/container-platform/3.5/install_config/persistent_storage/persistent_storage_azure_file.html Section Number and Name: NA (missing prerequisite) Describe the issue: Without installing cifs-utils package, OpenShift failed to mount PVC with Persistent Storage using Azure file. ``` Jun 06 03:54:17 tatanaka-node2 atomic-openshift-node[2476]: E0606 03:54:17.817771 2476 mount_linux.go:119] Mount failed: exit status 32 Jun 06 03:54:17 tatanaka-node2 atomic-openshift-node[2476]: Mounting command: mount Jun 06 03:54:17 tatanaka-node2 atomic-openshift-node[2476]: Mounting arguments: //tatanaka01861043disk.file.core.windows.net/example /var/lib/origin/openshift.local.volumes/pods/83ffb893-4a6b-11e7-9689-000d3a510 Jun 06 03:54:17 tatanaka-node2 atomic-openshift-node[2476]: Output: mount: wrong fs type, bad option, bad superblock on //tatanaka01861043disk.file.core.windows.net/example, Jun 06 03:54:17 tatanaka-node2 atomic-openshift-node[2476]: missing codepage or helper program, or other error Jun 06 03:54:17 tatanaka-node2 atomic-openshift-node[2476]: (for several filesystems (e.g. nfs, cifs) you might Jun 06 03:54:17 tatanaka-node2 atomic-openshift-node[2476]: need a /sbin/mount.<type> helper program) Jun 06 03:54:17 tatanaka-node2 atomic-openshift-node[2476]: In some cases useful info is found in syslog - try Jun 06 03:54:17 tatanaka-node2 atomic-openshift-node[2476]: dmesg | tail or so. ``` After installing "cifs-utils" according to the Microsoft Azure doc, OCP can mount Azure file share and create a pod. https://docs.microsoft.com/en-us/azure/storage/storage-how-to-use-files-linux#mount-the-file-share Suggestions for improvement: Adding prerequisite that a user must install cifs-utils on each node. Additional information:
I found another issue related to this BZ. Even if installing "yum cifs-utils" a pod can start mount with Azure File Share, but a pod fails to write or execute file/directory under shared directory. //in the pod $ df -h /data/ Filesystem Size Used Avail Use% Mounted on //tatanaka01861043files.file.core.windows.net/example 5.0T 0 5.0T 0% /data $ ls /data ls: cannot open directory /data: Permission denied $ touch /data/a.txt touch: cannot touch '/data/a': Permission denied Hasn't CIFS share fully supported yet? https://bugzilla.redhat.com/show_bug.cgi?id=1402598 Also, from our internal document, a pod can write by enabling SELinux boolean on the node. # /usr/sbin/setsebool -P virt_use_samba on
upstream document PR for adding this feature. https://github.com/openshift/openshift-docs/pull/4463
Besides, cifs module is still experimental in RHEL 7.3. https://bugzilla.redhat.com/show_bug.cgi?id=1428116 https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/7/html/7.3_Release_Notes/new_features_authentication_and_interoperability.html Do we fully support this feature?
updated documentation to include suggested prerequisites. Please review https://github.com/openshift/openshift-docs/pull/5020
Commit pushed to master at https://github.com/openshift/openshift-docs https://github.com/openshift/openshift-docs/commit/9ebb8841d56ca1227f43649bc033a6b822cd8f89 Merge pull request #5020 from gaurav-nelson/Bug1459010Fixes Bug#1459010 fixes - Added prerequisites for persistent storage with Azure File
The updates are live at https://docs.openshift.com/container-platform/latest/install_config/persistent_storage/persistent_storage_azure_file.html