4.2. 使用 Multicloud 对象网关作为 OpenShift Image Registry 后端存储
您可以在 OpenShift 部署中使用 Multicloud Object Gateway (MCG)作为 OpenShift Container Platform (OCP) Image Registry 后端存储。
要将 MCG 配置为 OCP 镜像 registry 的后端存储,请按照流程中介绍的步骤操作。
先决条件
- OCP Web 控制台的管理访问权限.
- 使用 MCG 运行 OpenShift Data Foundation 集群。
流程
-
按照创建对象 Bucket Claim 中的步骤创建
Object
BucketClaim。 创建
image-registry-private-configuration-user
secret。- 进入 OpenShift web-console。
- 点 ObjectBucketClaim -→ ObjectBucketClaim Data。
-
在 ObjectBucketClaim 数据 中,在
openshift-image-registry namespace
中查找MCG access key
和MCG secret key
。 使用以下命令创建 secret:
oc create secret generic image-registry-private-configuration-user --from-literal=REGISTRY_STORAGE_S3_ACCESSKEY=<MCG Accesskey> --from-literal=REGISTRY_STORAGE_S3_SECRETKEY=<MCG Secretkey> --namespace openshift-image-registry
$ oc create secret generic image-registry-private-configuration-user --from-literal=REGISTRY_STORAGE_S3_ACCESSKEY=<MCG Accesskey> --from-literal=REGISTRY_STORAGE_S3_SECRETKEY=<MCG Secretkey> --namespace openshift-image-registry
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
将 Image Registry Operator 的
managementState
改为 Managed。oc patch configs.imageregistry.operator.openshift.io/cluster --type merge -p '{"spec": {"managementState": "Managed"}}'
$ oc patch configs.imageregistry.operator.openshift.io/cluster --type merge -p '{"spec": {"managementState": "Managed"}}'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 编辑 Image Registry Operator 配置文件的
spec.storage
部分:从 Web 控制台获取 Object Bucket Claim Data 部分下的
unique-bucket-name
和regionEndpoint
,或者也可以使用以下命令获取 regionEndpoint 和 unique-bucket-name 的信息:oc describe noobaa
$ oc describe noobaa
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 将
regionEndpoint
添加为 http://<Endpoint-name>:<port> 如果-
StorageClass 是
ceph-rgw
存储类, - 端点指向来自 openshift-storage 命名空间中的内部 SVC。
-
StorageClass 是
在对 Operator registry 配置文件进行更改后,
image-registry
pod 会生成。Copy to Clipboard Copied! Toggle word wrap Toggle overflow
将镜像 registry 设置重置为默认值。
oc get pods -n openshift-image-registry
$ oc get pods -n openshift-image-registry
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
验证步骤
运行以下命令检查是否成功将 MCG 配置为 OpenShift Image Registry 后端存储。
oc get pods -n openshift-image-registry
$ oc get pods -n openshift-image-registry
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 输出示例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow (可选)您也可以运行以下命令来验证是否将 MCG 配置为 OpenShift Image Registry 后端存储。
oc describe pod <image-registry-name>
$ oc describe pod <image-registry-name>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 输出示例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow