搭建ProxmoxVE+Ceph集羣(圖文版)

本文介紹如何建立一個ProxmoxVE集羣,並使用內部集成的Ceph做爲存儲javascript

集羣包含5臺主機,其中3檯安裝ceph做爲存儲節點,爲剩下做爲計算節點2臺提供存儲。java

這裏,5臺主機均位於同一個集羣中。web

本文使用到的軟件版本:算法

VMware-Workstation 15.5shell

pve(proxmox VE)6.0.1vim

ceph:ceph nautilus 最新版安全

ssh鏈接工具:xshell 6網絡

1環境配置數據結構

咱們須要創建以下包含5臺pve主機的集羣:app

存儲節點:

pve-store1:cpu 4核 內存2g 硬盤20g+500g 橋接網絡 IP地址 10.8.20.241

pve-store2: cpu 4核 內存2g 硬盤20g+500g 橋接網絡 IP地址 10.8.20.242

pve-store3 :cpu 4核 內存2g 硬盤20g+500g 橋接網絡 IP地址 10.8.20.243

計算節點:

pve-compute1 :cpu 4核 內存4g 硬盤20g 橋接網絡 IP地址 10.8.20.244

pve-compute2 :cpu 4核 內存4g 硬盤20g 橋接網絡 IP地址 10.8.20.245

二、存儲節點的安裝配置

先創建存儲節點,並以 pve-store1爲mgr創建pve集羣

(1)創建虛擬機

cpu記得開虛擬化

虛擬機屬性


(2)安裝pve

系統安裝在20g的硬盤上面

安裝摘要


(3)配置pve

使用xshell6鏈接剛安裝好的這臺主機,執行下面的任務:

安裝vim

apt update
apt install vim -y

安裝阿里雲的源

cd /etc/apt
vim sources.list.d/pve-enterprise.list

修改成
deb http://download.proxmox.wiki/debian/pve buster pve-no-subscription

cd /etc/apt/
vim sources.list

修改成:
deb http://mirrors.aliyun.com/debian buster main contrib
deb http://mirrors.aliyun.com/debian buster-updates main contrib
#安全更新
deb http://mirrors.aliyun.com/debian-security/ buster/updates main contrib

更新系統

apt update
apt upgrade -y

去除webui的訂閱提示

sed -i "s/data.status !== 'Active'/false/g" /usr/share/javascript/proxmox-widget-toolkit/proxmoxlib.js

重啓系統

init 6

按照上述方法安裝 pve-store二、pve-store3 ,再繼續進行下面的操做


(4)創建pve集羣

登陸pve-store1(https://10.8.20.241:8006)的web管理平臺,創建名爲pve-cluster的集羣,並將另外2臺主機加進來。具體方法能夠參考本博客的第一篇文章中的相關內容。

創建好的pve集羣


(5)創建ceph集羣

一、在 pve-store一、pve-store二、pve-store3上都執行如下命令安裝ceph

pveceph install (不帶版本號安裝的是最新的nautilus版)

稍等片刻,提示以下則表示安裝成功

ceph安裝成功

注意:計算節點不須要安裝ceph。

二、創建ceph集羣網絡,3個存儲節點上面均執行

pveceph init -network 10.8.20.0/24

三、 建立ceph集羣存儲Mon監控, 3個存儲節點上面均執行

pveceph createmon

建立監視器mon

Ceph Monitor:由該英文名字能夠知道它是一個監視器,負責監視Ceph集羣,維護Ceph集羣的健康狀態,同時維護着Ceph集羣中的各類Map圖,好比OSD Map、Monitor Map、PG Map和CRUSH Map,這些Map統稱爲Cluster Map,Cluster Map是RADOS的關鍵數據結構,管理集羣中的全部成員、關係、屬性等信息以及數據的分發,好比當用戶須要存儲數據到Ceph集羣時,OSD須要先經過Monitor獲取最新的Map圖,而後根據Map圖和object id等計算出數據最終存儲的位置。

四、 建立ceph集羣存儲OSD服務, 3個存儲節點上面均執行,事先爲3個存儲節點添加了一塊200G的新硬盤。

pveceph createosd /dev/sdb

建立osd

Ceph OSD:OSD的英文全稱是Object Storage Device,它的主要功能是存儲數據、複製數據、平衡數據、恢復數據等,與其它OSD間進行心跳檢查等,並將一些變化狀況上報給Ceph Monitor。通常狀況下一塊硬盤對應一個OSD,由OSD來對硬盤存儲進行管理,固然一個分區也能夠成爲一個OSD。

五、 建立集羣存儲資源池,將上面3個OSD結合在一塊兒對外提供存儲服務

只在做爲mgr的pve-store1上面執行

ceph osd pool create pve-pool 128 128

其中的128(pg_num)的設置:
少於 5 個 OSD 時,可把 pg_num 設置爲 128
OSD 數量在 5 到 10 個時,可把 pg_num 設置爲 512
OSD 數量在 10 到 50 個時,可把 pg_num 設置爲 4096

建立存儲池pve-pool


六、建立RBD塊設備存儲

RBD塊存儲是ceph提供的3種存儲類型中使用最普遍,最穩定的存儲類型。RBD塊相似於磁盤,能夠掛載到物理機或虛擬機中。這裏是掛載到pve主機上,做爲pve主機的存儲(共享存儲)。

登陸pve-store1的web管理頁面,依次打開:數據中心->存儲->添加->選擇RBD

打開添加RBD對話框

ID:填寫爲pve-rbd RBD設備的id

資源池:pve-pool,所屬的資源池

Monitor: pve-store1 pve-store2 pve-store3,監視器

節點:暫時添加pve-store1, pve-store2, pve-store3,表示集羣中哪些主機可使用該塊設備。

內容:存放的內容,選擇磁盤鏡像和容器,這樣ceph就能夠存放虛擬機的鏡像和下載的LXC容器了。

添加後,能夠看到集羣主機下會增長一個存儲

rbd塊設備存儲


能夠查看整個ceph的狀態信息

ceph集羣狀態


(6)ceph的相關操做

一、賦予應用相關權限

在pve-store1上執行

ceph osd pool application enable pve-pool rgw rbd

二、查看ceph有哪些存儲池

ceph osd lspools

三、查看ceph的空間大小及可用大小

ceph df

能夠看到目前3塊500G硬盤組成的ceph存儲集羣,最大可用空間爲473G≈500G。

四、查看ceph的副本數

ceph osd pool get pve-pool size

默認狀況下是3,即存放在ceph集羣中的數據會有3個副本,因此整個ceph集羣的可用空間大約是(500*3(osd數目))/3(副本數)=500G(裏面的算法很複雜,因此要少於500G,這裏其實是473G)

ceph副本數


設置新的副本數爲2

ceph osd pool set pve-pool size 2

設置事後,可能須要很長時間的配置,ceph集羣纔會自動恢復正常。不是必要請不要進行該操做。

五、 爲集羣安裝ceph Dashboard

在pve-store1上執行

apt install ceph-mgr-dashboard -y
ceph mgr module enable dashboard
ceph dashboard create-self-signed-cert
ceph dashboard ac-user-create admin admin123 administrator
(其中 admin是用戶名 admin123是密碼 administrator指定用戶是管理員
systemctl restart ceph-mgr@pve-store1.service

訪問https://10.8.20.241:8443,使用用戶名admin密碼admin123登陸便可。

ceph Dashboard登陸界面


ceph Dashboard主界面


ceph Dashboard -Hosts(主機)


ceph Dashboard -存儲池,能夠看到有3個副本


編輯存儲池,增長另外2個應用


總之,使用這個Dashboard,能夠單獨管理ceph(其實通常不用)。


三、計算節點的安裝配置

創建虛擬機

虛擬機名稱:pve-compute1

cpu:4核,開虛擬化

內存:4g

硬盤:20g

網絡:橋接模式

計算節點虛擬機配置


而後安裝和配置pve,設置其主機名爲: pve-compute1,ip地址設置爲:10.8.20.244/24,而後更改成國內源,最後更新系統。

更新系統成功


將這臺主機加入到上面的集羣中

點擊pve-store1的web管理平臺中數據中心→集羣→上面的加入信息按鈕,拷貝加入信息

集羣的加入信息


打開pve-compute1的web管理平臺,點擊數據中心→集羣→上面的加入集羣按鈕,在對話框中粘貼集羣加入信息,輸入 pve-store1 的root密碼加入集羣

加入集羣


在pve-store1的web管理平臺中能夠看到新加入的主機


在pve-store1上,選擇數據中心→存儲→pve-rbd,再點擊上面的編輯按鈕

在節點處僅保留pve-compute1這臺主機

修改好以後,在左邊就能夠在pve-compute1節點下面多出了一個存儲

說明計算節點 pve-compute1可使用ceph存儲了。

用一樣的方法建立第二個計算節點 pve-compute2,並按照上面的方法zaipve-brd的節點那加入這臺主機

最後在 pve-compute1 或者 pve-compute2 上面建立、安裝虛擬機測試集羣,記得虛擬機的磁盤要使用pve-rbd這個存儲。

相關文章
相關標籤/搜索