27.17.3.6. GlusterFS 对象定义


glusterfs-storageclass.yaml

kind: StorageClass
apiVersion: storage.k8s.io/v1
metadata:
  name: slow
provisioner: kubernetes.io/glusterfs
parameters: 1
  resturl: http://127.0.0.1:8081 2
  restuser: admin 3
  secretName: heketi-secret 4
  secretNamespace: default 5
  gidMin: "40000" 6
  gidMax: "50000" 7
  volumeoptions: group metadata-cache, nl-cache on 8
  volumetype: replicate:3 9
  volumenameprefix: custom 10

1
列出是必须的,以及几个可选参数。如需了解更多参数,请参阅 注册 存储类。
2
heketi (用于 Gluster 的卷管理 REST 服务)URL,可按需置备 GlusterFS 卷。常规格式应为 {http/https}://{IPaddress}:{Port}。这是 GlusterFS 动态置备程序强制参数。如果 heketi 服务作为可路由的服务在 OpenShift Container Platform 中公开,它将具有可解析的完全限定域名 (FQDN) 和 heketi 服务 URL。
3
heketi 用户有权访问创建卷。通常为 "admin"。
4
识别包含与 heketi 对话时使用的用户密码的 Secret。可选;当省略 secretNamespacesecretName 时,将使用空密码。提供的 secret 必须是 "kubernetes.io/glusterfs" 类型。
5
上述 secretName 的命名空间。可选;当省略 secretNamespacesecretName 时,将使用空密码。提供的 secret 必须是 "kubernetes.io/glusterfs" 类型。
6
可选。这个 StorageClass 的卷的 GID 范围最小值。
7
可选。这个 StorageClass 的卷的 GID 范围的最大值。
8
可选。新创建的卷的选项。它允许性能调整。如需了解更多 GlusterFS 卷选项,请参阅调整 卷选项。
9
可选。要使用的卷类型
10
可选。启用自定义卷名称支持,其格式如下:<volumenameprefix>_<namespace>_<claimname>_UUID。如果您使用这个 storageClass 在项目 project1 中创建一个名为 myclaim 的新 PVC,则卷名称是 custom-project1-myclaim-UUID
注意

如果没有指定 gidMingidMax 值,其默认值分别为 2000 和 2147483647。每个动态置备的卷都将获得这个范围中的 GID(gidMin-gidMax)。当相应的卷被删除时,池中会发布这个 GID。GID 池为每个 StorageClass 使用。如果两个或多个存储类具有 GID 范围,则置备程序可能会分配重复的 GID。

当使用 heketi 身份验证时,包含 admin 键的 Secret 也应存在:

heketi-secret.yaml

apiVersion: v1
kind: Secret
metadata:
  name: heketi-secret
  namespace: default
data:
  key: bXlwYXNzd29yZA== 1
type: kubernetes.io/glusterfs

1
base64 编码的密码,例如 echo -n "mypassword" | base64
注意

当 PV 被动态置备时,GlusterFS 插件会自动创建一个 Endpoints 和一个无头服务,名为 gluster-dynamic-<claimname>。删除 PVC 时,这些动态资源会被自动删除。

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.