阿里云 a c k 挂载 n a s 数据卷

记录在阿里云购买、配置、挂载 NAS 数据卷到 Kubernetes 集群,由于官方文档没有及时更新,可以看做是对官方文档的补充。

作者 guoxudong 发表于 2019年7月8日 更新于 2023年1月10日

前言

今天接到一个将 NAS 数据卷挂载到 Kubernetes 集群的需求,需要将一个 NAS 数据卷挂载到集群中。这一很简单的操作由于好久没有操作了,去翻看了一下官方文档,发现官方文档还在停留在去年7月份…为了防止之后还有相似情况的发生,这里将所有操作做一个简单记录。

购买存储包(创建文件系统)

在挂载 NAS 之前,首先要先购买 NAS 文件存储,这里推荐购买存储包,100G 的 SSD 急速型一年只需1400多,而容量型只要279,对于我这种只有少量 NAS 存储需求的人来说是是靠谱的,因为我只需要5G的左右的存储空间,SSD 急速型 NAS 一年只要18块,完美。

image

选择想要创建 NAS 所在 VPC 和 区域

添加挂载点

  • 点击添加挂载点 image

  • 选择 VPC 网络、交换机和权限组 image

Linux 挂载 NAS 数据卷

在挂载点创建成功后,就可以将 NAS 数据卷挂载到 Linux 系统,这里以 CentOS 为例:

安装 NFS 客户端

如果 Linux 系统要挂载 NAS ,首先需要安装 NFS 客户端

sudo yum install nfs-utils

挂载 NFS 文件系统

这里阿里云早就进行了优化,点击创建的文件系统,页面上就可以 copy 挂载命令。页面提供了挂载地址的 copy 和挂载命令的 copy 功能。

image

挂载命令:

sudo mount -t nfs -o vers=4,minorversion=0,noresvport xxxxx.cn-shanghai.nas.aliyuncs.com:/ /mnt

查看挂载结果

直接在挂载数据卷所在服务上执行命令:

df -h

就可以看到结果:

image

Kubernetes 集群挂载 NAS 数据卷

K8S 的持久数据卷挂载大同小异,流程都是:创建PV -> 创建PVC -> 使用PVC

下面就简单介绍在阿里云上的操作:

创建存储卷(PV)

首先要创建存储卷,选择 容器服务 -> 存储卷 -> 创建

这里要注意的是:挂载点域名使用上面面的挂载地址

image

创建存储声明(PVC)

选择 NAS -> 已有存储卷

选择刚才创建的存储卷

image

使用PVC

使用的方法这里就不做详细介绍了,相关文章也比较多,这里就只记录 Deployment 中使用的 yaml 片段:

...
volumeMounts:
- mountPath: /data      # 挂载路径
    name: volume-nas-test
...
volumes:
- name: volume-nas-test
persistentVolumeClaim:
    claimName: nas-test     # PVC 名称
...

结语

这里只是做一个简单的记录,仅适用于阿里云 ACK 容器服务,同时也是 ACK 的一个简单应用。由于不经常对数据卷进行操作,这里做简单的记录,防止以后使用还要再看一遍文档。