天天看點

Ceph常用的指令

一、Ceph常用指令(待整理)

  一)ceph mon常用指令

ceph df #檢視ceph存儲空間

ceph auth list #檢視ceph叢集中的認證使用者及相關的key

ceph mon stat#檢視mon的狀态資訊

ceph mon dump#檢視你ceph映射資訊

ceph mon remove node1 #删除一個mon節點  ceph-deploy mon destroy {host-name [host-name]...}

ceph mon add node1 node1_ip #添加一個mon節點  ceph-deploy mon create {host-name [host-name]...} 

mon節點的/var/lib/ceph/mon/ceph-node2/store.db檔案内容一緻,添加mon注意先改配置目錄配置檔案,再推送到所有節點

ceph-deploy --overwrite-conf config push  node1 node2 node3      

  二)ceph mds常用指令

ceph mds stat #檢視msd狀态

ceph mds dump #msd的映射資訊

ceph mds rm 0 mds.node1#删除一個mds節點

ceph-deploy mds create {host-name}[:{daemon-name}] [{host-name}[:{daemon-name}] ...]      

  三)ceph osd常用指令

ceph osd stat #檢視osd狀态

ceph osd dump #osd的映射資訊

ceph osd tree#檢視osd目錄樹

ceph osd down 0   #down掉osd.0節點

ceph osd rm 0#叢集删除一個osd硬碟

ceph osd crush remove osd.4#删除标記

ceph osd getmaxosd#檢視最大osd個數

ceph osd setmaxosd 10#設定osd的個數

ceph osd out osd.3#把一個osd節點逐出叢集

ceph osd in osd.3#把逐出的osd加入叢集

ceph osd pause#暫停osd (暫停後整個叢集不再接收資料)

ceph osd unpause#再次開啟osd (開啟後再次接收資料)      

  四)ceph pg常用指令

ceph pg stat#檢視pg狀态

ceph pg dump#檢視pg組的映射資訊

ceph pg map 0.3f#檢視一個pg的map

ceph pg  0.26 query#檢視pg詳細資訊

ceph pg dump --format plain#顯示一個叢集中的所有的pg統計      

  五)ceph osd pool管理指令

ceph osd lspools#檢視ceph叢集中的pool數量

ceph osd pool create jiayuan 100#建立一個pool  這裡的100指的是PG組

ceph osd pool delete jiayuan  jiayuan  --yes-i-really-really-mean-it  #叢集名字需要重複兩次

rados df#顯示叢集中pool的詳細資訊

ceph osd pool get data pg_num  #檢視data池的pg數量

ceph osd pool set data target_max_bytes 100000000000000#設定data池的最大存儲空間為100T(預設是1T)

ceph osd pool set data size 3  #設定data池的副本數是3

ceph osd pool set data min_size 2 #設定data池能接受寫操作的最小副本為2

ceph osd pool set data pg_num 100#設定一個pool的pg數量

ceph osd pool set data pgp_num 100#設定一個pool的pgp數量

rados lspools#檢視ceph叢集中有多少個pool (隻是檢視pool)

rados df #檢視ceph叢集中有多少個pool,并且每個pool容量及利用情況

rados mkpool test#建立一個pool

rados create test-object -p test#建立一個對象object 

rados rm test-object-1 -p test#删除一個對象object 

rados -p test ls

rbd ls pool_name#檢視ceph中一個pool裡的所有鏡像

rbd info -p pool_name --image 74cb427c-cee9-47d0-b467-af217a67e60a #檢視ceph pool中一個鏡像的資訊

rbd create -p test --size 10000 zhanguo#在test池中建立一個命名為zhanguo的10000M的鏡像

rbd rm  -p test  lizhanguo #删除一個鏡像

 

rbd resize -p test --size 20000 zhanguo  #調整一個鏡像的尺寸 

ceph-deploy disk zap {osd-server-name}:{disk-name}   #擦淨磁盤

ceph-deploy osd prepare {node-name}:{disk}[:{path/to/journal}]

ceph-deploy osd prepare osdserver1:sdb:/dev/ssd1

ceph-deploy osd activate {node-name}:{path/to/disk}[:{path/to/journal}]

ceph-deploy osd activate osdserver1:/dev/sdb1:/dev/ssd1

把改過的配置檔案分發給叢集内各主機

ceph-deploy config push {host-name [host-name]...}

ceph osd getcrushmap -o MAP   #擷取一個CRUSH映射

crushtool -d MAP -o MAP.TXT   #反編譯一個CRUSH映射

crushtool -c MAP.TXT -o MAP   #編譯一個CRUSH映射

ceph osd setcrushmap -i MAP    #設定一個CRUSH映射

cept mon dump #檢視監控映射

cept osd dump  #檢視一個OSD映射

ceph mds dump  #要檢視MDS映射

ceph -w         #檢視叢集正在發生的事件

ceph health或ceph -s或ceph status #檢視叢集健康狀态      

  六)塊裝置的一些指令

機關為M,預設在rbd pool中

建立塊裝置:rbd create {image-name}  --size {megabytes}  --pool {pool-name}

列出塊裝置:rbd ls {poolname} -l

檢索塊資訊:rbd --image {image-name} info

更改塊大小:rbd resize --image {image-name} --size {megabytes}

删除塊裝置:rbd rm {image-name}

映射塊裝置:rbd map {image-name} --pool {pool-name} --id {user-name}

檢視已映射塊裝置:rbd showmapped

取消映射:rbd unmap /dev/rbd/{poolname}/{imagename}      

  七)快照和克隆相關指令

建立快照:

rbd --pool {pool-name} snap create --snap {snap-name} {image-name}

rbd snap create {pool-name}/{image-name}@{snap-name}

快照復原:

rbd --pool {pool-name} snap rollback --snap {snap-name} {image-name}

rbd snap rollback {pool-name}/{image-name}@{snap-name}

 

清除快照:

rbd --pool {pool-name} snap purge {image-name}

rbd snap purge {pool-name}/{image-name}

删除快照:

rbd --pool {pool-name} snap rm --snap {snap-name} {image-name}

rbd snap rm {pool-name}/{image-name}@{snap-name}

列出快照:

rbd --pool {pool-name} snap ls {image-name}

rbd snap ls {pool-name}/{image-name}

保護快照:

rbd --pool {pool-name} snap protect --image {image-name} --snap {snapshot-name}

rbd snap protect {pool-name}/{image-name}@{snapshot-name}

取消保護快照:

rbd --pool {pool-name} snap unprotect --image {image-name} --snap {snapshot-name}

rbd snap unprotect {pool-name}/{image-name}@{snapshot-name}

快照克隆

rbd clone {pool-name}/{parent-image}@{snap-name} {pool-name}/{child-image-name}

檢視快照的克隆

rbd --pool {pool-name} children --image {image-name} --snap {snap-name}

rbd children {pool-name}/{image-name}@{snapshot-name}      

快照克隆相關例子:

建立快照:rbd  snap create vms/yjk01@yjk01_s1

列出快照:rbd snap list  --pool vms yjk01

快照復原:rbd snap rollback vms/yjk01@yjk01_s1(先解除安裝已挂載目錄)

删除快照:rbd snap rm vms/yjk01@yjk01_s2(單個)

清除快照:rbd snap purge vms/yjk01(所有)

保護快照:rbd snap protect vms/yjk01@yjk01_s1

取消保護:rbd snap unprotect vms/yjk01@yjk01_s1

快照克隆:rbd clone vms/yjk01@yjk01_s3 vms/yjk01_s3_clone1

檢視克隆:rbd children vms/yjk01@yjk01_s3

克隆隻能基于快照,并且隻能快照處于保護狀态,而且ceph僅支援克隆format 2映像。      
下一篇: Ceph學習

繼續閱讀