創建存儲池
ceph osd pool create cephfs_metadata 64 64
ceph osd pool create cephfs_data 64 64
ceph osd pool create rbd 64 64
創建文件系統
ceph fs new cephfs cephfs_metadata cephfs_data
修改存儲池副本數
ceph osd pool set cephfs_metadata size 2
ceph osd pool set cephfs_metadata min_size 1
ceph osd pool set cephfs_data size 2
ceph osd pool set cephfs_data min_size 1
ceph osd pool set rbd size 2
ceph osd pool set rbd min_size 1
查看存儲池詳細信息
ceph osd pool ls detail
ceph osd crush tree
crush常用操作命令
ceph osd crush tree
ceph osd crush rule ls
ceph osd crush rule dump
ceph osd crush tree
ceph osd crush set {name} {weight} root={root} [{bucket-type}={bucket-name} ...]
ceph osd crush reweight {name} {weight}
ceph osd crush remove {name}
ceph osd crush add-bucket {bucket-name} {bucket-type}
ceph osd crush move {bucket-name} {bucket-type}={bucket-name}, [...]
ceph osd crush remove {bucket-name}
為存儲池創建規則
ceph osd crush rule create-replicated {name} {root} {failure-domain-type} [{class}]
ceph osd crush rule create-replicated ssd-rule root-ssd host
ceph osd crush rule create-replicated sas-rule root-sas host
啟用存儲池
ceph osd pool application enable rbd rbd
ceph osd pool application enable cephfs_data cephfs
ceph osd pool application enable cephfs_metadata cephfs
ceph osd pool application enable rgw rgw
注意:這里CephFS使用應用程序名稱cephfs,RBD使用應用程序名稱rbd,RGW使用應用程序名稱rgw。
啟用dashboard
$ ceph mgr module enable dashboard
其他操作命令
# mgr操作命令
root@ceph1:~# ceph mgr module ls
{
"enabled_modules": [
"balancer",
"dashboard",
"restful",
"status"
],
"disabled_modules": [
"influx",
"localpool",
"prometheus",
"selftest",
"zabbix"
]
}
root@ceph1:~# ceph mgr services
{
"dashboard": "http://ceph1:7000/"
}
ceph mgr module enable balancer
ceph balancer status
ceph balancer on
ceph balancer off
# 為存儲池指定新規則命令
ceph osd pool set <pool-name> crush_rule <rule-name>
# 創建存儲池命令
ceph osd pool create {pool-name} {pg-num} [{pgp-num}] [replicated] [crush-rule-name] [expected-num-objects]
ceph osd pool create {pool-name} {pg-num} {pgp-num} erasure [erasure-code-profile] [crush-rule-name] [expected_num_objects]
# 將池關聯到application命令
ceph osd pool application enable {pool-name} {application-name}
# 注意:CephFS使用應用程序名稱cephfs,RBD使用應用程序名稱rbd,RGW使用應用程序名稱rgw。
# 刪除池命令
ceph osd pool delete {pool-name} [{pool-name} --yes-i-really-really-mean-it]
# 要刪除池,必須在Monitor的配置中將mon_allow_pool_delete標志設置為true。否則他們將拒絕刪除池。
# 顯示池統計信息命令
rados df
# 制作池的快照命令
ceph osd pool mksnap {pool-name} {snap-name}
# 刪除池的快照命令
ceph osd pool rmsnap {pool-name} {snap-name}
# 設置池參數命令
ceph osd pool set {pool-name} {key} {value}
您可以為以下鍵設置值:
鍵名:compression_algorithm
說明:設置用於底層BlueStore的內聯壓縮算法。此設置將覆蓋全局設置的。bluestore compression algorithm
類型:字符串
有效設置:lz4,snappy,zlib,zstd
鍵名:compression_mode
描述:為基礎BlueStore設置內聯壓縮算法的策略。此設置將覆蓋全局設置的。bluestore compression mode
類型:字符串
有效設置:none,passive,aggressive,force
鍵名:compression_min_blob_size
描述:小於此的塊不會被壓縮。此設置將覆蓋全局設置的。bluestore compression min blob *
類型:無符號整數
鍵名:compression_max_blob_size
描述:大於此的塊compression_max_blob_size在被壓縮之前被分解為較小的斑點尺寸 。
類型:無符號整數
鍵名:size
描述:設置池中對象的副本數。有關更多詳細信息,請參閱設置對象副本數。僅限復制池。
類型:整數
鍵名:min_size
描述:設置I / O所需的最小副本數。有關更多詳細信息,請參閱設置對象副本數。僅限復制池。
類型:整數
版本:0.54 以上
鍵名:pg_num
描述:計算數據放置時要使用的有效展示位置組數。
類型:整數
有效范圍:優於pg_num當前價值。
鍵名:pgp_num
描述:計算數據展示位置時要使用的展示位置組的有效數量。
類型:整數
有效范圍:等於或小於pg_num。
鍵名:crush_rule
描述:用於在集群中映射對象放置的規則。
類型:整數
# 獲取池參數值命令
ceph osd pool get {pool-name} {key}
# 刪除cephfs和mds步驟
(1)停止ceph mds服務
# systemctl stop ceph-mds.target
(2)刪除cephfs,有mds daemons的cephfs刪除會報錯,然后去mds daemon機器上停止mds服務即可
# ceph fs rm tstfs
Error EINVAL: all MDS daemons must be inactive before removing filesystem
# ceph fs rm tstfs2
Error EPERM: this is a DESTRUCTIVE operation and will make data in your filesystem permanentlyinaccessible.
Add --yes-i-really-mean-it if you are sure you wish to continue.
# ceph fs rm tstfs2 --yes-i-really-mean-it
# ceph fs rm tstfs --yes-i-really-mean-it
(3)刪除ceph nonactive mds,mds的id默認從0開始,指定不存在的id並不會報錯
# ceph mds rm 0
mds gid 0 dne
# ceph mds rm 1
mds gid 1 dne
# ceph mds rm 2
mds gid 2 dne
(4)刪除cephfs使用的pool
# ceph osd pool delete cephfs_metadata cephfs_metadata --yes-i-really-really-mean-it
# ceph osd pool delete cephfs_data cephfs_data --yes-i-really-really-mean-it