我正在将一些kubernetes yaml文件转换为Terraform。我几乎所有工作都可以进行,但是我仍然无法使用我的storageClass。我需要使用azurefile,但我无法解决如何设置安装文件的权限。
据我所知,这是受支持的语法:
resource "kubernetes_storage_class" "azurefile" {
metadata {
name = "azurefile"
}
storage_provisioner = "kubernetes.io/azure-file"
reclaim_policy = "Retain"
parameters {
skuName = "Standard_LRS"
}
}
但是我不知道在哪里可以指定挂载选项。
这是我要开始的Yaml:
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
是否有支持添加挂载选项的方法?如果没有,我将无法使用azure文件。有没有人能够做到这一点,如果没有,您有解决方法吗?
我知道我可以使用local_exec(我已经做过了),但这就是我试图摆脱的地方。
答案 0 :(得分:0)
是的,看着this似乎还不支持terraform支持mountOptions。
答案 1 :(得分:0)
只是更新线程,mount_options现在在最新版本的terraform中可用(截至2020年2月)。 terraform_provider_kubernetes v1.11.0及更高版本具有可用的mount_options。
resource "kubernetes_storage_class" "azurefile" {
metadata {
name = "azurefile"
}
storage_provisioner = "kubernetes.io/azure-file"
reclaim_policy = "Retain"
parameters {
skuName = "Standard_LRS"
}
mount_options = ["file_mode=0777", "dir_mode=0777", "uid=1000", "gid=1000"]
}