概述
在配置rgw使用,一般习惯性熟练配置realm、zonegroup、zone、user和bucket create,此处不展开。本文主要介绍一下如何是dashboard监控对象存储集群数据
dashboard
在配置完成dasrboard和rgw后,发现dashboard和rgw都能正常启动和访问,并且dashborad界面的service能监控到rgw服务,但查询不到集群对象存储相关信息。
会提示报错
“No RGW credentials found”
对象存储默认都是私有桶和默认user acl,当我们使用一组用户aksk去进行listbucket或者listobject时候都只能看到自己为owner的桶和对象(除非另配bucket policy,bucket policy后面会单独文章讲)
因此需要额外配置一个专门为dashboard监控的用户,需要系统级别权限,用来管理所有桶。
解决办法
首先另外创建一个system用户
radosgw-admin user create --uid=<user_id> --display-name=<display_name> --system
实际命令如下:
radosgw-admin user create --uid=dashboard --display-name=dashboard --system
并将结果中的ak,sk保存下来(只保存实际aksk字符串即可,不需要其他格式),存在ak.file,sk.file。
如果已有system用户,可以直接查询其aksk并保存
radosgw-admin user info --uid=test1
得到系统用户aksk文件后,为dashboard注入认证。
ceph dashboard set-rgw-api-access-key -i <file-containing-access-key>
ceph dashboard set-rgw-api-secret-key -i <file-containing-secret-key>
实际执行命令如下:
ceph dashboard set-rgw-api-access-key -i ak.file #上一步保存的
ceph dashboard set-rgw-api-secret-key -i sk.file #上一步保存的
刷新页面,即可看到告警消失,objectgateway部分可以看到用户和桶详情。
其他
ceph对象存储用户和桶信息等都单独存在系统资源池,如果频繁list会导致系统io过高。因此dashboard和s3browser都不会实时刷新存储集群信息,可能会提示:Warning The user list data might be stale. If needed, you can manually reload。无需格外担心,想查询时再刷新界面即可。