开发者社区> 阚俊宝> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

阿里云Kubernetes CSI实践 - 静态NAS卷

简介: 环境准备 集群创建、依赖配置、CSI插件部署等请参考:CSI部署详解 创建NAS卷 到NAS控制台创建NAS盘:参考文档 到NAS控制台创建NAS挂载点:参考文档 注意:NAS挂载点需要和集群节点在同一个vpc内; 创建静态PV、PVC 通过下面模板创建静态卷PV、PVC: apiVersion:...
+关注继续查看

环境准备

集群创建、依赖配置、CSI插件部署等请参考:CSI部署详解

创建NAS卷

到NAS控制台创建NAS盘:参考文档

到NAS控制台创建NAS挂载点:参考文档

注意:NAS挂载点需要和集群节点在同一个vpc内;

创建静态PV、PVC

通过下面模板创建静态卷PV、PVC:

apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: nas-pvc
spec:
  accessModes:
  - ReadWriteOnce
  resources:
    requests:
      storage: 5Gi
---
apiVersion: v1
kind: PersistentVolume
metadata:
  name: nas-csi-pv
spec:
  capacity:
    storage: 5Gi
  accessModes:
    - ReadWriteOnce
  persistentVolumeReclaimPolicy: Retain
  csi:
    driver: nasplugin.csi.alibabacloud.com
    volumeHandle: 0790b4a325
    volumeAttributes:
      host: "0790b4a325-xyn4.cn-hangzhou.nas.aliyuncs.com"
      path: "/csi"
      vers: "3"

驱动类型为:nasplugin.csi.alibabacloud.com,表示使用阿里云NAS CSI插件;

volumeHandle:PV Handler,可以配置为一个随机值;

host、path、vers:分别表示NAS挂载点、挂载子目录、nas目标版本;

# kubectl get pvc
NAME      STATUS   VOLUME       CAPACITY   ACCESS MODES   STORAGECLASS   AGE
nas-pvc   Bound    nas-csi-pv   5Gi        RWO                           34m

# kubectl get pv
NAME         CAPACITY   ACCESS MODES   RECLAIM POLICY   STATUS   CLAIM             STORAGECLASS   REASON   AGE
nas-csi-pv   5Gi        RWO            Retain           Bound    default/nas-pvc                           34m

创建应用

apiVersion: apps/v1
kind: Deployment
metadata:
  name: nginx-nas
  labels:
    app: nginx
spec:
  selector:
    matchLabels:
      app: nginx
  template:
    metadata:
      labels:
        app: nginx
    spec:
      containers:
      - name: nginx
        image: nginx:1.7.9
        ports:
        - containerPort: 80
        volumeMounts:
          - name: nas-pvc
            mountPath: "/data"
      volumes:
        - name: nas-pvc
          persistentVolumeClaim:
            claimName: nas-pvc

验证挂载、高可用

查看pod,验证NAS挂载成功,创建测试文件;
# kubectl get pod
NAME                         READY   STATUS    RESTARTS   AGE
nginx-nas-6744df4f6b-krqc2   1/1     Running   0          20m

# kubectl exec nginx-nas-6744df4f6b-krqc2 mount | grep nfs
0790b4a325-xyn4.cn-hangzhou.nas.aliyuncs.com:/csi on /data type nfs (rw,relatime,vers=3,rsize=1048576,wsize=1048576,namlen=255,hard,nolock,noresvport,proto=tcp,timeo=600,retrans=2,sec=sys,mountaddr=192.168.1.252,mountvers=3,mountport=4002,mountproto=tcp,local_lock=all,addr=192.168.1.252)

# kubectl exec nginx-nas-6744df4f6b-krqc2 ls /data
# kubectl exec nginx-nas-6744df4f6b-krqc2 touch /data/test
# kubectl exec nginx-nas-6744df4f6b-krqc2 ls /data
test

删除Pod,查看重建Pod是否数据稳定;
# kubectl delete pod nginx-nas-6744df4f6b-krqc2
pod "nginx-nas-6744df4f6b-krqc2" deleted

# kubectl get pod
NAME                         READY   STATUS    RESTARTS   AGE
nginx-nas-6744df4f6b-d6ds9   1/1     Running   0          10s

# kubectl exec nginx-nas-6744df4f6b-d6ds9 ls /data
test

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
阿里云 Kubernetes CSI 实践--部署详解
Kubernetes 作为一个可以自动部署、扩展和管理容器化应用程序的开源系统,深受开发者喜爱,那么在 Kubernetes 系统中应该如何来部署 CSI 插件呢?本文将以阿里云 ACK 环境为例,为大家详细介绍如何在 Kubernetes 系统中部署 CSI 插件。
150 0
阿里云Kubernetes CSI实践 - 部署详解
本文以阿里云ACK环境为例介绍如何在Kubernetes系统中部署CSI插件; CSI部署拓扑: 分为CSI Provisioner和CSI Plugin两部分: Provisioner:目前只支持云盘,提供云盘数据卷动态创建的功能; Plugin:云盘、NAS、OSS均需实现plugin;云盘...
13580 0
Kubernetes 多集群管理平台 OCM v0.9.0 发布:进一步改善托管集群安全性问题
随着 OpenClusterManagement(OCM)项目的持续发展,我们觉得有必要周期性向大家同步近期项目的一些进展了,包括我们我们下一步未来发展的方向以及作为贡献者如何参与进来我们的社区。2022 年的尾声即将到来,让我们来进一步看一下项目研发方面的新内容吧!
0 0
部署Kubernetes集群+Dashboard可视化页面-1.18.6版本(二)
部署Kubernetes集群+Dashboard可视化页面-1.18.6版本(二)
0 0
部署Kubernetes集群+Dashboard可视化页面-1.18.6版本(一)
部署Kubernetes集群+Dashboard可视化页面-1.18.6版本(一)
0 0
【公开课】手把手基于阿里云 ACK 环境创建 Kubernetes 集群及部署应用|学习笔记
快速学习【公开课】手把手基于阿里云 ACK 环境创建 Kubernetes 集群及部署应用。
0 0
Kubeadm 初始化高可用 kubernetes v1.17.2集群 | 学习笔记
快速学习 Kubeadm 初始化高可用 kubernetes v1.17.2集群
0 0
【云原生Kubernetes】二进制搭建Kubernetes集群(下)——部署多master(2)
本文接上一篇文章,前面两篇文章中已部署了Kubernetes单master集群。 本文将完成多master集群的部署,即部署master02,以及nginx负载均衡、keepalived高可用。
0 0
+关注
阚俊宝
阿里云容器服务开发,专注Kubernetes、Docker、云存储;
文章
问答
来源圈子
更多
容器服务 Kubernetes 版(简称 ACK)提供高性能可伸缩的容器应用管理能力,支持企业级 Kubernetes 容器化应用的全生命周期管理。容器服务 Kubernetes 版简化集群的搭建和扩容等工作,整合阿里云虚拟化、存储、网络和安全能力,打造云端最佳的 Kubernetes 容器化应用运行环境。
+ 订阅
文章排行榜
最热
最新
相关电子书
更多
《阿里云文件存储 NAS 在容器场景的最佳实践》PDF
立即下载
《拥抱容器存储,使用阿里云容器服务 ACK +文件存储 NAS 构建现代化企业应用》
立即下载
腾讯云多Kubernetes集群高可用运维实践
立即下载