如何解决将现有的 azure 文件共享挂载为持久卷而不使用机密
将azure文件挂载为PV的方法如下教程所示:
apiVersion: v1
kind: PersistentVolume
metadata:
name: azurefile
spec:
capacity:
storage: 5Gi
accessModes:
- ReadWriteMany
azureFile:
secretName: azure-secret
shareName: aksshare
readOnly: false
mountOptions:
- dir_mode=0777
- file_mode=0777
- uid=1000
- gid=1000
- mfsymlinks
- nobrl
目前我需要使用存储帐户密钥创建一个秘密,以使 pv 正常工作。 有没有办法在不创建秘密的情况下挂载文件共享,最好使用环境变量?例如,将帐户密钥放在环境变量中或使用服务主体凭据。
我也尝试使用 kustomise secretGenerator 从 env 变量创建秘密,但每次的秘密名称都不一样,我无法在 pv yaml 文件中使用它。
解决方法
Kubernetes 是 secret 或 configmap 是仅向部署注入机密的一种方式。
如果您要秘密存储某些内容,则意味着您可以将其作为环境变量访问。
您可以创建一个存储类并像这样使用它:
kind: StorageClass
apiVersion: storage.k8s.io/v1
metadata:
name: azurefile
provisioner: kubernetes.io/azure-file
mountOptions:
- dir_mode=0777
- file_mode=0777
- uid=0
- gid=0
- mfsymlinks
- cache=strict
- actimeo=30
parameters:
skuName: Standard_LRS
只有这样,您才能添加机密,因此您不必多次添加。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。