创建一个名字叫data的pool,它由10个pg组成, 用于存放object
[harvis@centos7 build]
cephosdpoolcreatedata10也可以用命令rados来创建,pg的大小默认为8[harvis@centos7libradosexample]
rados mkpool data
successfully created pool data
[harvis@centos7 librados_example]$ ceph osd pool get data pg_num
pg_num: 8
删除一个 pool 的方法,pool 的名字要出现两次
[harvis@centos7 librados_example]$ rados rmpool data data –yes-i-really-really-mean-it
successfully deleted pool data
查看 pool 对应的crush_rule
[harvis@centos7 librados_example]$ ceph osd pool get data crush_rule
crush_rule: replicated_ruleset
查看所有的 pool, 打印所有 pool 的名字
[harvis@centos7 librados_example]$ rados lspools
rbd
cephfs_data_a
cephfs_metadata_a
data
rados 命令的详细用法
[harvis@centos7 librados_example]$ rados –help
usage: rados [options] [commands]
POOL COMMANDS
lspools list pools
mkpool [123[ 4]] create pool ’
[with auid 123[and using crush rule 4]]
cppool copy content of a pool
rmpool [ –yes-i-really-really-mean-it]
remove pool ’
purge –yes-i-really-really-mean-it
remove all objects from pool without removing it
df show per-pool and total usage
ls list objects in pool
chown 123 change the pool owner to auid 123
POOL SNAP COMMANDS
lssnap list snaps
mksnap create snap
rmsnap remove snap
OBJECT COMMANDS
get [outfile] fetch object
put [infile] [–offset offset]
write object write object start offset(default:0)
append [infile] append object
truncate length truncate object
create create object
rm …[–force-full] [force no matter full or not]remove object(s)
cp [target-obj] copy object
listxattr
getxattr attr
setxattr attr val
rmxattr attr
stat objname stat the named object
mapext
rollback roll back object to snap
listsnaps list the snapshots of this object
bench write|seq|rand [-t concurrent_operations] [–no-cleanup] [–run-name run_name] [–no-hints]
default is 16 concurrent IOs and 4 MB ops
default is to clean up after write benchmark
default run-name is ‘benchmark_last_metadata’
cleanup [–run-name run_name] [–prefix prefix]
clean up a previous benchmark operation
default run-name is ‘benchmark_last_metadata’
load-gen [options] generate load on the cluster
listomapkeys list the keys in the object map
listomapvals list the keys and vals in the object map
getomapval [file] show the value for the specified key
in the object’s object map
setomapval
rmomapkey
getomapheader [file]
setomapheader
tmap-to-omap convert tmap keys/values to omap
watch add watcher on this object
notify notify watcher of this object with message
listwatchers list the watchers of this object
set-alloc-hint
set allocation hint for an object
IMPORT AND EXPORT
export [filename]
Serialize pool contents to a file or standard out.
import [–dry-run] [–no-overwrite] < filename | - >
Load pool contents from a file or standard in
ADVISORY LOCKS
lock list
List all advisory locks on an object
lock get
Try to acquire a lock
lock break
Try to break a lock acquired by another client
lock info
Show lock information
options:
–lock-tag Lock tag, all locks operation should use
the same tag
–lock-cookie Locker cookie
–lock-description Description of lock
–lock-duration Lock duration (in seconds)
–lock-type Lock type (shared, exclusive)
SCRUB AND REPAIR:
list-inconsistent-pg list inconsistent PGs in given pool
list-inconsistent-obj list inconsistent objects in given pg
list-inconsistent-snapset list inconsistent snapsets in the given pg
CACHE POOLS: (for testing/development only)
cache-flush flush cache pool object (blocking)
cache-try-flush flush cache pool object (non-blocking)
cache-evict evict cache pool object
cache-flush-evict-all flush+evict all objects
cache-try-flush-evict-all try-flush+evict all objects
GLOBAL OPTIONS:
–object_locator object_locator
set object_locator for operation
-p pool
–pool=pool
select given pool by name
–target-pool=pool
select target pool by name
-b op_size
set the block size for put/get ops and for write benchmarking
-o object_size
set the object size for put/get ops and for write benchmarking
–max-objects
set the max number of objects for write benchmarking
-s name
–snap name
select given snap name for (read) IO
-i infile
–create
create the pool or directory that was specified
-N namespace
–namespace=namespace
specify the namespace to use for the object
–all
Use with ls to list objects in all namespaces
Put in CEPH_ARGS environment variable to make this the default
–default
Use with ls to list objects in default namespace
Takes precedence over –all in case –all is in environment
–target-locator
Use with cp to specify the locator of the new object
–target-nspace
Use with cp to specify the namespace of the new object
–striper
Use radostriper interface rather than pure rados
Available for stat, get, put, truncate, rm, ls and
all xattr related operations
BENCH OPTIONS:
-t N
–concurrent-ios=N
Set number of concurrent I/O operations
–show-time
prefix output with date/time
–no-verify
do not verify contents of read objects
–write-object
write contents to the objects
–write-omap
write contents to the omap
–write-xattr
write contents to the extended attributes
LOAD GEN OPTIONS:
–num-objects total number of objects
–min-object-size min object size
–max-object-size max object size
–min-op-len min io size of operations
–max-op-len max io size of operations
–max-ops max number of operations
–max-backlog max backlog size
–read-percent percent of operations that are read
–target-throughput target throughput (in bytes)
–run-length total time (in seconds)
CACHE POOLS OPTIONS:
–with-clones include clones when doing flush or evict
OMAP OPTIONS:
–omap-key-file file read the omap key from a file
[harvis@centos7 librados_example]$