AKS使用Azure File实现动态持久化存储

时间:2021-07-15 | 标签: | 作者:Q8 | 来源:搪瓷小娃娃网络

小提示:您能找到这篇{AKS使用Azure File实现动态持久化存储}绝对不是偶然,我们能帮您找到潜在客户,解决您的困扰。如果您对本页介绍的AKS使用Azure File实现动态持久化存储内容感兴趣,有相关需求意向欢迎拨打我们的服务热线,或留言咨询,我们将第一时间联系您!

< ">如我们所知,Kubernetes通过Volume为集群中的容器提供存储,通过Persistent Volume和Persistent Volume Claim实现Volume的静态供给和动态供给。Azure File和Azure Disk也在Kubernetes支持的动态供给PV的Provisioner之列(如下图:https://kubernetes.io/docs/concepts/storage/storage-classes/#provisioner),本篇文章就带领大家操作一遍,如何动态创建Azure File文件共享,以供集群中的多个Pod使用。

< font-size: 16px;">

< font-size: 16px;">(1)准备工作:

< font-size: 16px;">创建好一个AKS集群,并且升级Azure CLI到最新版本

< font-size: 16px;">登录到你创建好的集群中,确认下各Node节点状态是否正常:

< font-size: 16px;">

< font-size: 16px;">(2)添加StorageClass:

< font-size: 16px;">创建一个azure-file-sc.yaml文件并编辑如下:

< font-size: 16px;">

< font-size: 16px;">如上我们创建的这个Storage Class封装的名称(name)为azurefile,provisioner指定为kubernetes.io/azure-file,参数parameter部分,指定冗余形式,目前支持Standard的三张,其他暂不支持:

< font-size: 16px;">Standard_LRS-standard locally redundant抽奖宣传海报 storage(LRS)

< font-size: 16px;">Standard_GRS-standard geo-redundant storage(GRS)

< font-size: 16px;">Standard_RAGRS-standard read-access geo-redundant storage(RA-GRS)

< font-size: 16px;">创建好之后执行kubectl apply-f azure-file-sc.yaml。

< font-size: 16px;">(3)创建集群角色并绑定

< font-size: 16px;">作为Azure平台上的服务,AKS仍然使用的RBAC去控制集群的权限和安全。为了使Azure平台能够创建所需要的存储资源,这一步我们需要添加一个集群角色:

---

apiVersion: rbac.authorization.k8s.io/v1

kind: ClusterRole

metadata:

  name: system:azure-cloud-provider

rules:

- apiGroups: ['']

  resources: ['secrets']

  verbs:     ['get','create']

---

apiVersion: rbac.authorization.k8s.io/v1

kind: ClusterRoleBinding

metadata:

  name: system:azure-cloud-provider

roleRef:

  kind: ClusterRole

  apiGroup: rbac.authorization.k8s.io

  name: system:azure-cloud-provider

subjects:

- kind: ServiceAccount

  name: persistent-volume-binder

  namespace: kube-system

< font-size: 16px;">执行kubectl apply-f azure-pvc-roles.yaml如下:

< font-size: 16px;">

< font-size: 16px;">(4)创建PVC:

< font-size: 16px;">这一步就是动态申请存储资源的文件了,命名这个PVC yaml文件为azure-file-pvc.yml,编辑如下,指定metadata为第(2)步中的StorageClassName,配置好访问模式和容量,编辑好保存并运行,可以看到这个PVC已经被成功创建。

   apiVersion: v1

kind: PersistentVolumeClaim

metadata:

  name: azurefile

spec:

  accessModes:



    - ReadWriteMany

  storageClassName: azurefile

  resou杭州代运营排名rces:

    requests:

      storage: 5Gi

< font-size: 16px;">(5)使用并检验

< font-size: 16px;">首先我们创建一个pod,命令为mypod1.yml,这个pod运行的是一个busybox镜像,通过PVC将Azure File mount到容器的/datatest目录中。

< font-size: 16px;">

apiVersion: v1

kind: Pod

metadata:

  name: mypod1

spec:

  containers:

  - image: busybox

    name: mycontainer1

    volumeMounts:



    - mountPath: /datatest

      name: datatest

    args:

    - /bin/sh

    - -c

    - sleep 30000

  volumes:

  - name: datatest

    persistentVolumeClaim:

      claimName: my-azurefile-pvc

< font-size: 16px;">然后依次执行:

< font-size: 16px;">

kubectl apply -f mypod1.yaml

#查看pod状态

kubectl get pod -o wide

#在pod里的datatest目录下创建一个名字为hello的文件

kubectl exec mypod1 touch /datatest/hello

< font-size: 16px;">如上是截图,在pod中创建完名字为hello的文件后,我们检验下这个文件有没有更新到Azure File中,这里说明一下,AKS动态配置完后的AzureFile会默认创建在MC_的集群中,portal上找到这个存储账户进去,找到Azure File下面的文件,如截图,发现hello.txt已经存在了。

< font-size: 16px;">

< font-size: 16px;">

< font-size: 16px;">以上就是整个实验过程,演示了AKS如何使用Azure File实现动态持久化存储。希望对大家有用。

AKS使用Azure File实现动态持久化存储

上一篇:充分利用Azure流分析Visual Studio工具的5个技巧
下一篇:如何轻松阻止智能手机上的WhatsApp?


版权声明:以上主题为“AKS使用Azure File实现动态持久化存储"的内容可能是本站网友自行发布,或者来至于网络。如有侵权欢迎联系我们客服QQ处理,谢谢。
相关内容
推荐内容
扫码咨询
    AKS使用Azure File实现动态持久化存储
    打开微信扫码或长按识别二维码

小提示:您应该对本页介绍的“AKS使用Azure File实现动态持久化存储”相关内容感兴趣,若您有相关需求欢迎拨打我们的服务热线或留言咨询,我们尽快与您联系沟通AKS使用Azure File实现动态持久化存储的相关事宜。

关键词:AKS使用Azure,File实现动态持

关于 | 业务 | 案例 | 免责 | 隐私
客服邮箱:sales@1330.com.cn
电话:400-021-1330 | 客服QQ:865612759
沪ICP备12034177号 | 沪公网安备31010702002418号