1、ceph osd tree
#檢視目前cluster 狀態
`df -h /mnt/ceph-vol1` #確保node1掛載了rbd, 在節點 node1上執行
2、在節點node4上安裝ceph ,並複製ceph.conf到其相應位置,同時在/etc/hosts裡新增節點node4和相應ip,並推送到所有節點
3、檢視node4上可用的硬碟以新增osd
`ceph-deploy disk list ceph-node4`
4、確保node1上有充足的空間進行寫資料,執行下面寫命令的同時擴充套件集群:
`dd if=/dev/zero of=/mnt/ceph-vol1/file1 count=10240 bs=1m` #node1節點
`ceph-deploy disk zap ceph-node4:sdb ceph-node4:sdc ceph-node4:sdd` #node4節點
`ceph-deploy osd create ceph-node4:sdb ceph-node4:sdc ceph-node4:sdd` #node4節點
`watch ceph status`
在node4硬碟新增完成,集群會恢復健康
5、ceph osd tree
檢視擴充套件後的cluster 狀態
1、ceph osd tree
檢視節點node4上的所有osd,比如說是(osd.9 osd.10 osd.11三個)
2、把node4上的所有osd 踢出集群: #node1節點執行
`ceph osd out osd.9`
`ceph osd out osd.10`
`ceph osd out osd.11`
3、讓node4上的所有osd 停止工作: # node4執行
` service ceph stop osd.9`
`service ceph stop osd.10`
`service ceph stop osd.11`
4、檢視node4上osd的狀態是否為 down,權重為0
`ceph osd tree`
5、移除node4上的所有osd:
`ceph osd crush remove osd.9`
`ceph osd crush remove osd.10`
`ceph osd crush remove osd.11`
6、刪除 node4上所有osd的配置key:
`ceph auth del osd.9`
`ceph auth del osd.10`
`ceph auth del osd.11`
7、刪除節點node4:
`ceph osd crush remove ceph-node4`
首先ceph osd tree
檢視down掉的osd ;把重啟無效,因硬碟問題down掉的osd 及相關key移除(比如是node1節點上的osd.0)。
ceph osd out osd.0 #都在node1節點下執行
ceph osd crush rm osd.0
ceph auth del osd.0
ceph osd rm osd.0
如果是物理機,可直接新增硬碟;虛擬環境的話,需要先關機然後新增硬碟,再開機。
1、檢視新新增的磁碟的資訊(比如是sdb):
`ceph-deploy disk list node1`
2、zap新磁碟:
`ceph-deploy disk zap node1:sdb`
3、在此磁碟新建乙個osd,ceph會把它新增為osd.0:
`ceph-deploy --overwrite-conf osd create node1:sdb`
一旦osd新建成功,ceph將會進行恢復操作,把pgs 從副osd上移到新的osd上;恢復結束後,集群狀態還是ok
例項:
在node1 掛3個ssd盤,即ssd-node;node2 node3 掛sata盤
1、修改 crush map 配置檔案:
get---反編譯---修改
(參考:
1.1 用 root ssd 和 root sata 桶 代替 root default 桶;
root ssd 有乙個item,即node1;root sata 有2個item,即:node2 、node3。
root ssd
root sata
1.2 修改rules,把 step take default 改為 step take sata/ssd
rule sata
rule ssd
2、編譯 inject 修改後的crush map
`crushtool -c crushmap-decompiled -o crushmap-compiled`
`ceph osd setcrushmap -i crushmap-compiled`
等集群恢復
3、新建不同型別的資源池:
`ceph osd pool create sata 64 64`
`ceph osd pool create ssd 64 64`
4、為新建的池設定ruleset:
`ceph osd pool set sata crush_ruleset 3`
`ceph osd pool set ssd crush_ruleset 4`
5、檢視資源池ssd 和 sata 的資訊:
`ceph osd dump | egrep -i "ssd|sata"`
6、測試新建池
`dd if=/dev/zero of=sata.pool bs=1m count=32 conv=fsync`
`dd if=/dev/zero of=ssd.pool bs=1m count=32 conv=fsync`
7、把檔案放到不同的池子裡:
`rados -p ssd put ssd.pool.object ssd.pool`
`rados -p sata put sata.pool.object sata.pool`
8、最後 檢視這些檔案的 map 資訊:
`ceph osd map ssd ssd.pool.object`
`ceph osd map sata sata.pool.object`
增加 刪除 OSD
新增和拆除 ceph 的 osd 程序相比其它兩種要多幾步。osd 守護程序把資料寫入磁碟和日誌,所以你得相應地提供一 osd 資料盤和日誌分割槽路徑 這是最常見的配置,但你可以按需調整 從 ceph v0.60 起,ceph 支援 dm crypt 加密的硬碟,在準備 osd 時你可以用 dm c...
hadoop新增節點配置步驟
新加datanode的安裝步驟 1 ssh無密碼配置和上面詳細步驟一樣,在新datanode上的 root 上建乙個 ssh的目錄,把namenode的authorized keys複製到新datanode的 ssh目錄上。在namenode上ssh驗證一下是否需要密碼。2 修改機器名,和上面詳細步...
JS新增和刪除節點
1 doctype html 2 html 3 head 4 meta charset utf 8 5 title 無標題文件 title 6 div id div1 7 p id p1 這是乙個段落 p 8 p id p2 這是另乙個段落 p 9div 10head 1112 body 13 sc...