本系统基于Kubernetes持久化存储实现完善的存储管理方案。Kubernetes持久化存储涉及PV、PVC、StorageClass三大概念:
PV:Persistent Volume,后端存储的一块存储空间,由管理员创建和维护。
PVC:Persistent Volume Claim,对PV的申请,通常由普通用户创建和维护。用户创建一个PVC,指明存储资源的容量大小和访问模式(比如只读)等信息,Kubernetes 即会查找并提供满足条件的PV。
StorageClass:用于实现PV的动态创建。
本系统基于以上概念,支持通过动态供给、静态供给和PVC三种方式配置存储卷。
静态供给:系统管理员需手动设置好可分配给用户使用的存储卷大小。支持NFS、iSCSI、FC、ceph四种存储类型。
系统管理员对接后端存储并设置其可分配给用户使用的容量大小,将后端存储划分为多个PV。
用户在部署应用服务时配置所需存储卷容量大小等信息创建PVC,系统即会自动为该PVC匹配合适的PV。
动态供给:系统管理员无需设置可分配给用户使用的存储卷大小,只需要将后端存储对接到系统中,系统即会自动根据用户需求分配存储卷大小。支持NFS、ceph两种存储类型。
系统管理员对接后端存储创建StorageClass,不需要为其划分容量大小。
用户在部署应用服务时配置所需存储卷容量大小创建PVC,系统即会动态的从StorageClass中划分并创建匹配PVC的PV。
PVC:系统管理员对接后端存储,并划分PV或创建StorageClass后,直接创建好PVC,用户在部署应用服务时直接选择使用。支持NFS、iSCSI、FC、ceph四种存储类型。
在顶部导航栏中单击[资源]菜单项。
在左侧导航树单击[容器]菜单项,进入集群管理页面。
单击待添加存储的集群名称链接,进入到集群详情页面。
单击[存储]菜单项,进入存储管理页面。
单击左侧导航树“PV”中后端存储类型,进入相应存储类型管理页面。
单击<添加存储卷>按钮,弹出<添加存储卷>窗口。配置静态供给存储卷参数。
存储卷类型 |
参数 |
说明 |
ISCSI |
目标路径 |
iSCSI存储卷在容器集群中的映射路径。 |
IP地址 |
iSCSI服务器的IP地址。 |
|
存储信息 |
单击<获取存储信息>按钮,如IP地址配置正确,即自动识别出iSCSI存储卷资源,选择存储卷。 |
|
是否格式化 |
开启后会把存储卷中的数据全部删除。 |
|
NFS |
IP |
NFS服务器的IP地址。 |
路径 |
NFS存储卷在容器集群中的映射路径。 |
|
容量 |
可分配给用户使用的容量大小。 |
|
访问模式 |
包括单节点读写和多节点读写。
|
|
回收策略 |
仅支持保留策略,代表删除与其关联的PVC时,该PV将变成释放状态,不会被删除。 |
|
标签 |
创建PVC时可通过该标签匹配此PV。 |
|
FC |
存储信息 |
选择一个FC存储卷 |
标签 |
创建PVC时可通过该标签匹配此PV。 |
|
ceph |
容量 |
可分配给用户使用的容量大小。 |
访问模式 |
仅支持单节点读写,即支持以read-write模式mount到单个节点。 |
|
回收策略 |
仅支持保留策略,代表删除与其关联的PVC时,该PV将变成释放状态,不会被删除。 |
|
监听器IP/端口号 |
Ceph存储集群的Monitor地址和端口号,也即Ceph服务主机(如提供Onestor存储服务的主机)的业务网IP和端口号。从ceph存储端获取相关信息的参考方法如下: 登录提供Ceph存储服务的主机后台界面,通过ceph mon_status命令查看。 |
|
存储池 |
Ceph存储集群中提供Ceph存储服务的存储池名称。从ceph存储端获取相关信息的参考方法如下: 登录提供Ceph存储服务的主机后台界面,通过ceph osd lspools命令查看,选择后缀带.rbd的存储池即可。 |
|
image名称 |
Ceph存储集群块设备中的磁盘镜像文件。从ceph存储端获取相关信息的参考方法如下: 登录提供Ceph存储服务的主机后台界面,通过rbd list pool命令查看存储池下的镜像文件名称,pool表示存储池。 |
|
User ID |
访问Ceph存储集群使用的用户ID,通常为admin。需根据ceph存储端的实际配置填写。 |
|
keyring |
Ceph集群认证需要的密钥环信息。对于admin用户,其keyring通常存储在创建Ceph存储集群时生成的ceph.client.admin.keyring中。从ceph存储端获取相关信息的参考方法如下: 登录提供Ceph存储服务的主机后台界面,通过ceph auth get client.admin命令,获取key值。 |
|
标签 |
创建PVC时可通过该标签匹配此PV。 |
单击<确认>按钮,完成操作。
在顶部导航栏中单击[资源]菜单项。
在左侧导航树单击[容器]菜单项,进入集群管理页面。
单击待添加存储的集群名称链接,进入到集群详情页面。
单击[存储]菜单项,进入存储管理页面。
单击左侧导航树“StorageClass”,进入StorageClass管理页面。
单击<创建>按钮,弹出<创建StorageClass >窗口。配置动态供给存储卷参数。
参数 |
说明 |
||
驱动类型 |
NFS |
IP |
NFS服务器的IP地址。 |
路径 |
NFS存储卷在容器集群中的映射路径。 |
||
回收策略 |
仅支持保留策略,删除与其关联的PVC时,该StorageClass关联的PV将变成释放状态,不会被删除。 |
||
Ceph RBD |
监听器 |
需从ceph存储端获取相关信息并填写。关于参数说明和参考获取方式如下:
|
|
存储池 |
|||
管理员ID/keyring |
|||
用户ID/keyring |
|||
回收策略 |
仅支持保留策略,删除与其关联的PVC时,该StorageClass关联的PV将变成释放状态,不会被删除。 |
||
标签 |
创建PVC时可通过该标签匹配StorageClass。 |
单击<确认>按钮,完成操作。
PVC依赖于PV或StorageClass,因此创建PVC前需要保证系统中存在已配置好的PV或StorageClass。 |
在顶部导航栏中单击[资源]菜单项。
在左侧导航树单击[容器]菜单项,进入集群管理页面。
单击待添加存储的集群名称链接,进入到集群详情页面。
单击[存储]菜单项,进入存储管理页面。
单击左侧导航树“PVC”,进入PVC管理页面。
单击<创建>按钮,弹出<创建PVC >窗口。配置PVC参数。
配置存储卷参数。
参数 |
说明 |
命名空间 |
选择命名空间,仅部署在该命名空间中的应用可使用此PVC。 |
容量 |
该PVC的容量大小。 |
访问模式 |
配置该PVC对节点的访问权限。
|
存储类 |
如需使用动态供给方式,可配置本参数选择已创建的StorageClass,配置后PV标签选择器和PV表达式选择器不可编辑。 |
PV标签选择器/PV表达式选择器 |
如需使用静态供给方式,可配置标签或表达式选择已创建的PV。如不配置,系统则将根据容量大小、访问模式选择匹配的PV。 |
单击<确认>按钮,完成操作。