我正在学习kubernetes(AKS),
我在azure
周围玩耍。我有一种情况,我需要在azure存储帐户中创建多个文件共享,并且能够使用一组命令进行创建,但是不同之处在于,我需要根据要求动态创建这些文件。
示例:我有两个应用程序都需要一个Azure存储帐户,而不是创建两个不同的存储帐户,我可以在同一存储帐户下创建两个文件共享。在这里,我想随着应用程序开始部署动态地创建文件共享。因为我可能需要第二个应用程序,或者我可以启动第三个应用程序。因此,与其在我想按要求创建文件共享之前创建多个文件共享。
在谷歌搜索之后,我发现了一条this文章,但是这里还必须已经在存储帐户中创建了共享名。
我的问题是,这可以实现吗?是的吗?
更新
storageClass
和PersistentVolumeClaim
的YML
---
kind: StorageClass
apiVersion: storage.k8s.io/v1
metadata:
name: mystorageclass
provisioner: kubernetes.io/azure-file
mountOptions:
- dir_mode=0777
- file_mode=0777
- uid=1000
- gid=1000
parameters:
skuName: Standard_LRS
storageAccount: mystrg
location: eastus
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: mypvc
spec:
accessModes:
- ReadWriteMany
storageClassName: mystorageclass
resources:
requests:
storage: 5Gi
storageClass
已成功创建,但是PersistentVolumeClaim
的状态为待定,找不到错误资源storageAccount
。它会尝试在Kubernetes创建的资源组下找到storageAccount
吗?
答案 0 :(得分:1)
简短的回答是。使用从Azure文件共享创建的AKS动态持久卷时,可以先创建存储帐户,然后可以在存储类中使用该存储帐户,如下所示:
kind: StorageClass
apiVersion: storage.k8s.io/v1
metadata:
name: azurefile
provisioner: kubernetes.io/azure-file
mountOptions:
- dir_mode=0777
- file_mode=0777
- uid=1000
- gid=1000
parameters:
skuName: Standard_LRS
storageAccount: azureaksstore
location: eastus
当您使用此SC创建PVC时,Azure将为您在此存储帐户中创建文件共享。它在存储帐户中显示如下:
有关更多详细信息,请参见Dynamically create and use a persistent volume with Azure Files in Azure Kubernetes Service (AKS)。