作为direct mount或persistent volume claim,Azure文档显示了如何将Azure文件存储帐户安装到Kubernetes窗格。这会将整个存储安装为已安装路径。我该如何将Azure文件存储中的文件夹安装到Kubernetes?
在Azure文件上,我具有以下内容:
AzureFiles
|- folder1
|- file1
|- folder2
|- file2
当我将Azure文件存储帐户安装到Kubernetes(到/mnt/azure
)时,我看到了:
/mnt
|- azure
|- folder1
|- file1
|- folder2
|- file2
相反,当我挂载Azure文件的路径folder1
时,我想看到这个:
/mnt
|- azure
|- file1
如何更改Pod definition以指定此路径:
apiVersion: v1
kind: Pod
metadata:
name: mypod
spec:
containers:
- // ... snip ...
volumeMounts:
- name: azure
mountPath: /mnt/azure
volumes:
- name: azure
azureFile:
secretName: azure-secret
shareName: aksshare
readOnly: false
// TODO: how to specify path in aksshare
答案 0 :(得分:1)
修改
搜索几天后,我了解了如何将Azure File Share的子文件夹安装到AKS窗格。您可以这样设置yaml文件:
volumes:
- name: azure
azureFile:
secretName: azure-secret
shareName: share/subfolder
readOnly: false
只需在目录中设置共享名,请注意,不要在末尾附加/
。结果的屏幕截图在这里:
有关更多详细信息,请参见Naming and Referencing Shares, Directories, Files, and Metadata。
答案 1 :(得分:0)
我相信您可以使用subPath
。像这样:
apiVersion: v1
kind: Pod
metadata:
name: mypod
spec:
containers:
- // ... snip ...
volumeMounts:
- name: azure
mountPath: /mnt/azure
subPath: folder1
volumes:
- name: azure
azureFile:
secretName: azure-secret
shareName: aksshare
readOnly: false
// TODO: how to specify path in aksshare