跳到主要内容

Rainbond 对接外部存储配置

初始化集群时如果不配置存储,则默认安装 NFS 作为存储。

本文介绍对接外部存储的三种方式:

  • 对接阿里云 NAS
  • 对接 GlusterFS
  • 对接其他 StorageClass

对接阿里云NAS

在集群初始化时修改以下参数,参考集群初始化配置

在阿里云NAS页面获取server地址,替换下面 NAS_SERVER_ADDR。

apiVersion: rainbond.io/v1alpha1
kind: RainbondCluster
metadata:
name: rainbondcluster
namespace: rbd-system
spec:
rainbondVolumeSpecRWX:
csiPlugin:
aliyunNas: {}
storageClassParameters:
mountOptions:
- "nolock,tcp,noresvport"
- "vers=4"
- "minorversion=0"
- "rsize=1048576"
- "wsize=1048576"
- "timeo=600"
- "retrans=2"
- "hard"
parameters:
volumeAs: subpath
archiveOnDelete: "true"
server: <NAS_SERVER_ADDR>

对接GlusterFS

参考安装Gluster分布式存储文档进行安装。

安装完成后,在集群初始化时修改以下参数,参考集群初始化配置

通过命令 kubectl get sc 获取 storageClassName 替换 GFS_CLASS_NAME。

如有挂载参数请在 storageClassParameters 中指定。

apiVersion: rainbond.io/v1alpha1
kind: RainbondCluster
metadata:
name: rainbondcluster
namespace: rbd-system
spec:
rainbondVolumeSpecRWX:
storageClassName: <GFS_CLASS_NAME>
storageClassParameters: {}
# mountOptions:
# - "vers=4"

对接其他StorageClass

如需对接其他 StorageClass,Rainbond的要求如下:

  • StorageClass创建出来的PV必须是 spec.nfs spec.glusterfs,以下是示例:
spec:
accessModes:
- ReadWriteMany
capacity:
storage: 1Gi
# nfs or glusterfs
nfs:
path: /export/pvc-94cd9160-adba-4950-a7b0-ed6779ec13fb
server: 10.43.92.23
persistentVolumeReclaimPolicy: Retain
storageClassName: rainbondvolumerwx
volumeMode: Filesystem

如上述内容确认没问题,在集群初始化时修改以下参数,参考集群初始化配置

通过命令 kubectl get sc 获取 storageClassName 替换 CLASS_NAME。

如有挂载参数请在 storageClassParameters 中指定。

apiVersion: rainbond.io/v1alpha1
kind: RainbondCluster
metadata:
name: rainbondcluster
namespace: rbd-system
spec:
rainbondVolumeSpecRWX:
storageClassName: <CLASS_NAME>
storageClassParameters: {}
# mountOptions:
# - "vers=4"
  • 如需对接外部NFS存储请参考文档