做者:田逸(sery@163.com)
web
剛躺下,就收到proxmox虛擬機集羣報警的郵件,順便瞧了一眼,發現問題。數據庫
磁盤空間滿了,致使備份失敗。仔細一看,備份目錄爲/var/lib/vz/dump,這個是本地文件系統的目錄,但我之前設定的備份目錄是外掛的nfs,空間大得很啊!bash
擔憂proxmox集羣因系統根分區被塞滿而影響整個集羣的服務,畢竟全部的業務都從阿里雲回遷到該超融合私有云集羣上。趕忙爬起來,***撥號,登陸到四個物理節點。執行指令:ide
root@pve10:~# ceph osd tree
半天沒反應,其它幾個機器皆然。大概等待了數分鐘,輸出提示鏈接超時。再從proxmox集羣web管理界面查看,crush map 沒有輸出。阿里雲
繼續點菜單「監視器」,quorum列的值所有爲否。spa
再點擊管理界面下部任務日誌信息,確實是備份錯誤所引發。3d
再雙擊錯誤信息,可看到更詳細而有用的信息。日誌
幸運的是,雖然ceph異常,但運行的其上的虛擬機及應用,竟然還能正常訪問,只是速度慢了不少。還好,凌晨沒什麼訪問量了。先嚐試刪掉全部物理節點全部的備份,無論它們是否是被成功的備份。blog
root@pve10:/var/lib/vz/dump#rm -rf
root@pve10:/var/lib/vz/dump#rm -rf虛擬機 |
釋放空間,以便ceph相關的服務能向根分區寫入日誌。其中ceph日誌的默認路徑爲/var/log/ceph ,若是資金預算許可,建議單獨用一個物理磁盤來存放ceph日誌。即建立一個分區,掛接到目錄/var。
刪除備份文件之後,磁盤空間得以釋放,而後電話詢問其它人,這幾天有沒有人到管理後臺去操做,並強烈建議把集羣的管理權限收回來(非系統管理的技術人員有全部權限)。
通知完之後,再切換到宿主機系統查看ceph日誌,主要是ceph.log及ceph-osd.log,發現輸出已經沒有報錯信息。由此判斷,故障已經排除。Proxmox web管理界面,選中某個物理節點,強制啓動監視器。
啓動後,「quorum」列的值由「否「變成」是「。
再點左側菜單OSD,磁盤都出來了!
切換到宿主機系統debian,查看osd,也能正常工做了。
root@pve10:/var/log/ceph# ceph osd tree ID CLASS WEIGHT TYPE NAME STATUS REWEIGHT PRI-AFF -1 34.92139 root default -3 8.73035 host pve10 0 hdd 2.18259 osd.0 up 1.00000 1.00000 1 hdd 2.18259 osd.1 up 1.00000 1.00000 2 hdd 2.18259 osd.2 up 1.00000 1.00000 3 hdd 2.18259 osd.3 up 1.00000 1.00000 -5 8.73035 host pve20 4 hdd 2.18259 osd.4 up 1.00000 1.00000 5 hdd 2.18259 osd.5 up 1.00000 1.00000 6 hdd 2.18259 osd.6 up 1.00000 1.00000 7 hdd 2.18259 osd.7 up 1.00000 1.00000 -7 8.73035 host pve30 8 hdd 2.18259 osd.8 up 1.00000 1.00000 9 hdd 2.18259 osd.9 up 1.00000 1.00000 10 hdd 2.18259 osd.10 up 1.00000 1.00000 11 hdd 2.18259 osd.11 up 1.00000 1.00000 -9 8.73035 host pve40 12 hdd 2.18259 osd.12 up 1.00000 1.00000 13 hdd 2.18259 osd.13 up 1.00000 1.00000 14 hdd 2.18259 osd.14 up 1.00000 1.00000 15 hdd 2.18259 osd.15 up 1.00000 1.00000
root@pve10:/var/log/ceph# ceph osd tree ID CLASS WEIGHT TYPE NAME STATUS REWEIGHT PRI-AFF -1 34.92139 root default -3 8.73035 host pve10 0 hdd 2.18259 osd.0 up 1.00000 1.00000 1 hdd 2.18259 osd.1 up 1.00000 1.00000 2 hdd 2.18259 osd.2 up 1.00000 1.00000 3 hdd 2.18259 osd.3 up 1.00000 1.00000 -5 8.73035 host pve20 4 hdd 2.18259 osd.4 up 1.00000 1.00000 5 hdd 2.18259 osd.5 up 1.00000 1.00000 6 hdd 2.18259 osd.6 up 1.00000 1.00000 7 hdd 2.18259 osd.7 up 1.00000 1.00000 -7 8.73035 host pve30 8 hdd 2.18259 osd.8 up 1.00000 1.00000 9 hdd 2.18259 osd.9 up 1.00000 1.00000 10 hdd 2.18259 osd.10 up 1.00000 1.00000 11 hdd 2.18259 osd.11 up 1.00000 1.00000 -9 8.73035 host pve40 12 hdd 2.18259 osd.12 up 1.00000 1.00000 13 hdd 2.18259 osd.13 up 1.00000 1.00000 14 hdd 2.18259 osd.14 up 1.00000 1.00000 15 hdd 2.18259 osd.15 up 1.00000 1.00000 |
假如經過刪除備份釋放空間不能恢復服務,最壞的打算,就是重建集羣,從nfs備份中恢復了。這不會丟失數據,由於數據庫不在此集羣中。
最後,記得把備份目錄改爲nfs共享村存儲,收回系統權限,以絕後患!