Bug 1601757

Summary: [DOCS] Add a limitation for Azure File when using template such as MySQL, PostgreSQL etc
Product: OpenShift Container Platform Reporter: Takayoshi Tanaka <tatanaka>
Component: DocumentationAssignee: Gaurav Nelson <gnelson>
Status: CLOSED CURRENTRELEASE QA Contact: Wenqi He <wehe>
Severity: unspecified Docs Contact: Vikram Goyal <vigoyal>
Priority: unspecified    
Version: 3.9.0CC: aos-bugs, jokerman, mmccomas, tatanaka
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2018-08-06 23:46:32 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Takayoshi Tanaka 2018-07-17 07:58:02 UTC
Document URL: 
https://docs.openshift.com/container-platform/3.9/install_config/persistent_storage/persistent_storage_azure_file.html

Section Number and Name: 
"Before you begin" or add a new section

Describe the issue: 
Azure File has some limitations other than block device storage provider such as Azure Disk.
We should note the limitation in order that the customer won't hit the limitations.

Suggestions for improvement: 
Adding the following two limitations.

- The owner UID of the Azure File mounted directory is not the UID of a container.
Some containers such as MySQL and PostgreSQL try to change the file permission, e.g. the file owner, in the mounted directory. Due to the mismatch between the owner UID and container process, this operation fails.
If you want to run MySQL with Azure File, you have to specify the UID in "runAsUser" in pod and the "uid" in mount options.

~~~
  mountOptions:
  - dir_mode=0777
  - file_mode=0774
  - uid=1000125000
  - gid=0
~~~

~~~
    spec:
      containers:
        ...
      securityContext:
        runAsUser: 1000125000
~~~

- Azure File doesn't support symbolic link
https://docs.microsoft.com/en-us/rest/api/storageservices/features-not-supported-by-the-azure-file-service
Some containers such as PostgreSQL try to create a symbolic link in the Azure File Directory. Since it's not supported, the pod fails to start.


Additional information:

Comment 1 Gaurav Nelson 2018-07-20 01:10:14 UTC
Tracking this in https://github.com/openshift/openshift-docs/pull/10930

@Takayoshi Tanaka Please take a look.

Comment 3 Wenqi He 2018-07-26 08:58:54 UTC
This update is LGTM. Thanks!

Comment 4 Gaurav Nelson 2018-07-27 04:42:38 UTC
@Takayoshi Tanaka

Can you please explain the following:
>Azure File doesn't support symbolic link
>Some containers such as PostgreSQL try to create a symbolic link in the Azure
>File Directory. Since it's not supported, the pod fails to start.

Does all PostgreSQL containers try to create symbolic links? 
OR does this mean:
Azure File doesn't support symbolic link. If you try to create a PostgreSQL containers with symbolic links, the pod will fail?

Comment 5 Takayoshi Tanaka 2018-07-27 05:02:45 UTC
@Gaurav Nelson

> Does all PostgreSQL containers try to create symbolic links? 
Since I'm not a product or QA engineer for postresql, I can't say "all" PostgreSQL containers try to create symbolic link.
At I found a Red Hat provided PostgreSQL 9.6 container image tries to create the symbolic link during the initialization process by default. I'm not sure we can avoid creating symbolic link by some configurations. I'd like to ask PostgreSQL product engineers to check this issue. If no one is found, we can say Red Hat provided PostgreSQL image doesn't support Azure File.


[1] https://access.redhat.com/containers/?tab=images&platform=openshift#/registry.access.redhat.com/rhscl/postgresql-96-rhel7

Comment 6 Gaurav Nelson 2018-07-31 00:04:47 UTC
Created an issue in 
sclorg/postgresql-container repository to get some help.

> https://github.com/sclorg/postgresql-container/issues/286

Comment 7 Gaurav Nelson 2018-07-31 10:25:52 UTC
@Takayoshi Tanaka

I got few responses for Postgresql.
> https://github.com/sclorg/postgresql-container/issues/286#issuecomment-409122015
> https://github.com/sclorg/postgresql-container/issues/286#issuecomment-409142324

They want more information to help with this. Can you please update the logs here?

Comment 8 openshift-github-bot 2018-08-05 23:43:48 UTC
Commit pushed to master at https://github.com/openshift/openshift-docs

https://github.com/openshift/openshift-docs/commit/9e7a7d36fb8b7874bdbbcd83fe5b39e2cb885759
Merge pull request #10930 from gaurav-nelson/bug1601757-fixes

BZ#1601757 - added considerations for using MySQL and PostgreSQL with azure file

Comment 10 Red Hat Bugzilla 2023-09-15 00:10:51 UTC
The needinfo request[s] on this closed bug have been removed as they have been unresolved for 500 days