创建一个存储池
# 32PG,32PGP
[root@node1 ~]# ceph osd pool create mypool 32 32
pool 'mypool' created
查看存储池
[root@node1 ~]# ceph osd pool ls
.mgr
mypool
## 或者使用如下命令
[root@node1 ~]# rados lspools
.mgr
mypool
使用rados命令往存储池上传文件
# 把/var/log/nginx-error.log上传到mypool,并指定对象的id为nginx.log
[root@node1 ~]# rados put nginx.log /var/log/nginx-error.log --pool=mypool
列出文件
[root@node1 ~]# rados ls --pool=mypool
nginx.log
查看文件信息
ceph osd map命令可以获取到存储池中数据对象的具体位置信息
[root@node1 ~]# ceph osd map mypool nginx.log
osdmap e21 pool 'mypool' (2) object 'nginx.log' -> pg 2.bb481e1c (2.1c) -> up ([2,1,0], p2) acting ([2,1,0], p2)
# 说明:
表示文件放在了存储池id为2的bb481e1c的PG上,1c为当前PG的id,2.1c表示数据是在id为2的存储池当中id为1c的PG中存储,在线的OSD编号15,13,10,主OSD为2,
从存储池下载文件
[root@node1 ~]# rados get nginx.log --pool=mypool /root/nginx.log
[root@node1 ~]# ls nginx.log -al
-rw-r--r-- 1 root root 666 Oct 27 06:51 nginx.log
删除文件
[root@node1 ~]# rados rm nginx.log --pool=mypool
测试完后删除pool
[root@node1 ~]# rados purge mypool --yes-i-really-really-mean-it
Warning: using slow linear search
Removed 2 objects
successfully purged pool mypool