OpenShift Container Storage is now OpenShift Data Foundation starting with version 4.9.
10.5.2.2. 使用 YAML 添加 IBM COS 命名空间存储桶
先决条件
- 正在运行的 OpenShift Data Foundation 平台。
- 访问多云对象网关(MCG),请参阅第 2 章,使用应用程序访问多云对象网关
流程
使用凭证创建 secret:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
您必须使用 Base64 提供和编码您自己的 IBM COS 访问密钥 ID 和 secret 访问密钥,并使用结果代替
<IBM COS ACCESS KEY ID ENCODED IN BASE64>
和<IBM COS SECRET ACCESS KEY ENCODED IN BASE64>
。 -
使用一个唯一的名称替换
<namespacestore-secret-name>
。
-
您必须使用 Base64 提供和编码您自己的 IBM COS 访问密钥 ID 和 secret 访问密钥,并使用结果代替
使用 OpenShift 自定义资源定义 (CRD) 创建 NamespaceStore 资源。NamespaceStore 代表底层存储,用作 MCG 命名空间存储桶中数据的读取或写入目标。要创建 NamespaceStore 资源,请应用以下 YAML:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
将
<IBM COS ENDPOINT>
替换为适当的 IBM COS 端点。 -
将
<namespacestore-secret-name>
替换为在第 1 步中创建的 secret。 -
将
<namespace-secret>
替换为可找到 secret 的命名空间。 -
将
<target-bucket>
替换为您为 NamespaceStore 创建的目标存储桶。
-
将
创建一个命名空间存储桶类,为命名空间存储桶定义命名空间策略。命名空间策略的类型需要是
single
或multi
。一个类型为
single
的命名空间策略需要以下配置:Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
将
<my-bucket-class>
替换为唯一的命名空间存储桶类名称。 -
将
<resource>
替换为单个 namespace-store 的名称,该存储将定义命名空间存储桶的读取和写入目标。
-
将
一个类型为
multi
的命名空间策略需要以下配置:Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
将
<my-bucket-class>
替换为唯一的存储桶类名称。 -
将
<write-resource>
替换为定义命名空间存储桶写入目标的单一命名空间存储名称。 -
将
<read-resources>
替换为定义命名空间存储桶读取目标的 namespace-store 的名称列表。
-
将
应用以下 YAML,以使用对象 Bucket Class (OBC) 资源创建 bucket,该资源使用第 2 步中定义的 bucket 类。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注意对于 IBM Power 和 IBM Z 基础架构,
storageClassName
作为openshift-storage.noobaa.io
-
将
<resource-name>
替换为您要提供给资源的名称。 -
将
<my-bucket>
替换为您要提供给存储桶的名称。 -
将
<my-bucket-class>
替换为上一步中创建的存储桶类。
-
将
当 Operator 置备 OBC 后,会在 MCG 中创建存储桶,Operator 会创建一个名称相同且位于 OBC 同一命名空间上的 Secret 和 ConfigMap。