[TOC]
0 参考
- https://kubernetes.io/docs/concepts/storage/storage-classes/
- http://tingcream.com/blogArticle/detail/28acd1174a49432ba733cf6bbfa077a5
1 简介
Kubernetes集群管理员通过提供不同的存储类,可以满足用户不同的服务质量级别、备份策略和任意策略要求的存储需求。动态存储卷供应使用StorageClass进行实现,其允许存储卷按需被创建。如果没有动态存储供应,Kubernetes集群的管理员将不得不通过手工的方式类创建新的存储卷。通过动态存储卷,Kubernetes将能够按照用户的需要,自动创建其需要的存储。
比如,我们可能会在kubernetes集群中安装一些带持久化数据功能的服务,例如redis、mysql、mq、es等。因此,当有这类需求时,我们必须给整个集群给定一个特定的存储方案。本章我们是NFS的网络存储方案
2 部署
2.1 NFS服务器
1 | yum install rpcbind nfs-utils |
编辑/etc/exports,内容如下:
1 | /nfs_data 192.168.11.0/24(rw,no_root_squash) |
启动nfs服务
1 | service nfs start #启动nfs服务 |
1 | showmount -e 192.168.11.24 #查看共享盘 ok |
2.2 使用helm部署nfs-client
1 | helm search nfs-client |
编辑helm的values文件
1 | nfs.server=192.168.11.24 |
安装
1 | helm install .... |
3 测试
创建一个pvc使用默认的storageclass,查看pv是否自动创建成功
如果没有将nfs-client设为默认的storageclass,可使用以下命令进行操作
1 | # 这里的 `<your-class-name>` 是您选择的 StorageClass 的名字。 |