(案例一)Proxmox VE + Ceph + 物理網路 超融合生產環境部署案例
參考:https://blog.csdn.net/hanziqing0630/article/details/114262035
一、Proxmox Virtual Environment介紹
Proxmox VE 是用於企業虛擬化的開源伺服器管理平臺。它在單個平臺上緊密集成了KVM虛擬機器管理程式和LXC,軟體定義的儲存以及網路功能。藉助基於Web的整合使用者介面,您可以輕鬆管理VM和容器,高可用性群集或整合的災難恢復工具。
同時Proxmox VE對接Proxmox備份伺服器,可實現對VM、容器的全量和增量備份,可顯著減少網路負載並節省寶貴的儲存空間。
二、環境介紹
本文章所述環境採用3臺物理伺服器(含4口萬兆網絡卡),1臺萬兆業務交換機,1臺萬兆管理交換機。
注意:由於使用ceph搭建分散式儲存,為保證效能,管理網路及業務網路強烈建議採用全萬兆部署。
2.1 軟體版本
本次部署採用當前最新版本:Proxmox VE 6.3,可根據當時情況選擇最新版本。
2.2 伺服器配置
三、軟體獲取
訪問官網下載ISO映象檔案,根據需要選擇版本:
https://www.proxmox.com/en/downloads/category/iso-images-pve
四、RAID規劃
4.1 系統盤
- 建議採用兩塊SSD組成raid 1,作為系統盤。
不同品牌伺服器設定方法不同,請參照各品牌官方文件。
4.2 ceph盤
- ceph不推薦基於raid盤建立osd,所以除系統盤外,其餘磁碟全部設定為非raid模式。
不同品牌伺服器設定方法不同,請參照各品牌官方文件。
五、物理網路
生產環境對可靠性要求較高,所以建議採用鏈路聚合方式,將多個物理網絡卡繫結為一個邏輯介面,從而提高網路的效能及可靠性。
鏈路聚合可在以下三種模式中選擇:
- LACP(802.3ad):基於LACP協議的鏈路聚合,此模式交換機需配置鏈路聚合,模式為lacp。
- 靜態聚合:靜態鏈路聚合,此模式交換機需配置鏈路聚合,模式為靜態(華為、H3C預設為此模式;思科為on模式)。
- Active+Backup:主備模式,網絡卡一主一備,主網絡卡故障時備份網絡卡接替主網絡卡工作,此模式交換機無需做鏈路聚合配置。
若交換機支援LACP,推薦採用LACP模式。此處採用LACP模式進行演示。
5.1 網路規劃
5.1.1 物理網路拓撲
5.1.2 vlan及網段規劃
5.2 網路配置
以華為交換機為例。
5.2 網路配置
以華為交換機為例。
六、PVE安裝
6.1 選擇第一個選項,安裝PVE
6.2 同意協議
6.3 選擇系統盤
注意:此處一定要選擇RAID規劃中建立的RAID 1系統盤。
6.4 配置國家、地區
6.5 配置密碼、郵箱
如果為生產環境務必配置為強口令。郵箱建議配置為真實郵箱。
6.6 配置網絡卡、主機名、IP地址、DNS等資訊
- 此處選擇伺服器第一塊網絡卡,用於管理網路,按我們的規劃應為eno1
- 每個節點主機名不能相同,主機名可以參考以下規劃,域名請按需配置。
- 主機名、IP地址等資訊按實際情況配置,配置公網DNS,用於pve連線網際網路。
6.7 檢查無誤後點擊安裝
安裝結束後重啟,通過瀏覽器訪問,出現以下頁面內容證明安裝成功。
地址:https://你的IP地址:8006
使用者名稱:root
密碼:為安裝時配置的密碼。
域:選擇Linux PAM
6.8 按照此方法安裝全部伺服器
七、更換軟體源(三個節點都需要配置)
由於自帶的軟體源速度較慢,此處選擇科大源:http://mirrors.ustc.edu.cn
涉及的軟體源有三個,分別為debain、pve、ceph,需要分別修改下列檔案。
7.1 通過web管理頁面中的shell或ssh登入後臺
7.2 更換debian源
vi /etc/apt/sources.list
刪除預設的源,替換為:
deb http://mirrors.ustc.edu.cn/debian buster main contrib non-free
# deb-src http://mirrors.ustc.edu.cn/debian buster main contrib non-free
deb http://mirrors.ustc.edu.cn/debian buster-updates main contrib non-free
# deb-src http://mirrors.ustc.edu.cn/debian buster-updates main contrib non-free
deb http://mirrors.ustc.edu.cn/debian-security/ buster-security main non-free contrib
# deb-src http://mirrors.ustc.edu.cn/debian-security/ buster-security main non-free contrib
7.3 更換pve源為非訂閱源
mv /etc/apt/sources.list.d/pve-enterprise.list /etc/apt/sources.list.d/pve-enterprise.list.bak
CODENAME=`cat /etc/os-release |grep CODENAME |cut -f 2 -d "="`
echo "deb http://mirrors.ustc.edu.cn/proxmox/debian $CODENAME pve-no-subscription" > /etc/apt/sources.list.d/pve-no-subscription.list
7.4 新增 Ceph 映象源
注意:因後面 PVE 安裝 Ceph 可能會使用官方源覆蓋 /etc/apt/sources.list.d/ceph.list 這個檔案的內容,此處使用 ceph_mirror.list 這個檔案替代。
建立 ceph_mirror.list 檔案:
vi /etc/apt/sources.list.d/ceph_mirror.list
增加以下內容:
deb http://mirrors.ustc.edu.cn/proxmox/debian/ceph-octopus/ buster main
八、更新PVE至最新版本(按需)
根據實際需求決定是否更新為最新版本。
如需更新三臺節點都需要執行:
apt upgrade
九、基礎配置(三個節點都需要配置)
9.1 安裝ifupdown2
此元件用於配置網絡卡後重啟網絡卡操作:
apt install ifupdown2
9.2 安裝vim
apt install vim
9.3 配置ntp服務
配置統一的時鐘源
- 如果有條件建議在內網部署一臺ntp伺服器,所有節點與內網ntp同步時鐘。
- 如果沒有內網NTP伺服器,可以採用下列NTP伺服器。
阿里雲:ntp.aliyun.com
國家授時中心:ntp.ntsc.ac.cn
十、PVE網路配置(三個節點都需要配置)
10.1 PVE伺服器網路拓撲
放一張圖有助於理解配置,可以結合5.1.1章節拓撲圖理解。
10.2 管理網路
10.2.1 編輯vmbr0
移除eno1,以便於將eno1加入到bond0中,刪除橋接埠中的eno1,然後點選OK。
10.2.2 建立bond0
點選建立Linux Bond。
名稱:bond0
slaves:eno1 eno2
模式:LACP (802.3ad)
Hash策略:layer2+3
按以上引數配置,然後點選OK。
10.2.3 編輯vmbr0
橋接埠配置:bond0。
選中“vlan感知”選項,然後點選OK。
10.2.4 應用配置
如果感覺配置有問題可以點選還原按鈕,還原為配置前狀態。
如果沒有問題,點選應用配置使配置生效。
網路配置不正確可能會導致無法管理節點,應用配置前請確認配置正確,如果出現無法管理的情況需要進入shell手動修改配置。
10.3 業務網路
業務網路配置與管理網路類似。
10.3.1 建立bond1
點選建立Linux Bond。
名稱:bond1
slaves:eno3 eno4
模式:LACP (802.3ad)
Hash策略:layer2+3
按以上引數配置,然後點選OK。
10.3.2 建立vmbr1
橋接埠配置:bond1。
選中“vlan感知”選項,然後點選OK。
10.3.3 應用配置
點選應用配置使配置生效。
10.4 網路配置檢查
在交換機中檢查聚合介面狀態是否正常。
檢視所有eth-trunk介面狀態,Status為Selected,則聚合介面正常。
十一、叢集組建
建立叢集,將三臺節點加入同一叢集。
11.1 在其中一個節點上點選,”資料中心“ — ”叢集“ — ”建立叢集“。
11.2 點選加入資訊,複製加入資訊。
11.3 在其他兩個節點上,點選加入叢集,貼上加入資訊,然後輸入第一臺節點的root密碼,即可完成加入。
11.4 加入叢集完成後需要重新整理頁面才能正常使用,全部加入完成後,就可以在一個節點上管理叢集中所有節點了。
十二、ceph
Ceph是一種為優秀的效能、可靠性和可擴充套件性而設計的統一的、分散式檔案系統。它可以將多臺伺服器中的硬碟聚合成一個叢集,對外可提供檔案儲存、塊儲存、物件儲存等多種形式,ceph的另一個特點是資料採用多副本方式儲存,避免由於單點故障造成的業務中斷和資料丟失。
PVE自帶了ceph的圖形化安裝、管理工具,叢集搭建完成後,可以快速完成ceph的安裝、配置。同時pve也提供命令列工具,可以使用命令列對ceph進行自定義配置。
12.1 ceph磁碟規劃
我的環境中,sda到sdh為8塊HDD硬碟,sdi到sdl為4塊SSD硬碟。
為提高hdd的效能,我們將sdi作為所有hdd硬碟的DB盤,將sdj作為所有hdd硬碟的WAL磁碟。
請注意DB盤和WAL盤不能相同,如果只有一塊SSD可以將SSD分為兩個區,分別作為DB盤和WAL盤。
分割槽建議:根據PVE文件建議,DB盤容量=資料盤總容量10%,WAL盤容量=資料盤總容量1%,假設資料盤共8T,則DB分割槽容量需>800G,WAL分割槽容量需>80G,考慮到單位換算及損耗,需要適當增加容量,請根據實際情況規劃。
- 詳細規劃如下:
12.2 ceph安裝
在全部節點中,安裝ceph元件。
注意,實際操作中此步驟會在 /etc/apt/sources.list.d/ceph.list 檔案中配置官方源。
12.2.1 選擇節點 — ”ceph“ 點選 ” Install ceph ”
12.2.2 選擇版本,此處選擇 “ 15.2 ”
12.2.3 輸入 ” Y “ 開始安裝
如果軟體包下載速度較慢,可以先安裝一臺,然後將安裝包拷貝到其他節點相同路徑中。
安裝包儲存路徑:/var/cache/apt/archives
12.3 ceph配置
此配置是將ssd硬碟和hdd硬碟分別建立pool,分別為sdd_data和hdd_data。
12.3.1 建立osd
在 ”ceph“ — ”osd“ 選項卡建立OSD。
正常情況下磁碟型別會自動識別,如果識別的不正確,注意手動調整。
建立方式如下:
- HDD盤
建立hdd時注意選擇DB和WAL磁碟。
- SSD盤
- 如果建立時型別選擇錯誤,可以用命令列修改:
假設osd0需要更改。
刪除osd類別資訊:
ceph osd crush rm-device-class osd.0
設定osd類別資訊
ceph osd crush set-device-class ssd osd.0
12.3.2 建立class rule
- 建立HDD rule
ceph osd crush rule create-replicated hdd_rule default host hdd
- 建立SSD rule
ceph osd crush rule create-replicated ssd_rule default host ssd
12.3.3 建立儲存池
- 建立HDD pool
ceph osd pool create hdd_data hdd_rule
- 建立SSD pool
ceph osd pool create ssd_data ssd_rule
12.3.4 新增儲存池至PVE
”資料中心“ — ”儲存“ — ”新增“ — ”RBD“。
- 新增hdd儲存池:
- 新增ssd儲存池:
十三、安全加固
13.1 配置公鑰登入
13.1.1 生成金鑰對
以xshell為例。
- 生成金鑰
- 設定名稱及密碼
設定密碼為可選項,為保證金鑰安全,建議設定。
13.1.2 將公鑰複製至伺服器"/root/.ssh/authorized_keys"檔案中,選擇"SSH2 - OpenSSH"格式。
vim /root/.ssh/authorized_keys
13.1.3 禁止ssh使用密碼登入,禁止前先驗證一下公鑰方式能否登入。
# 編輯sshd配置檔案
vim /etc/ssh/sshd_config
# 將下列配置新增到最後一行
PasswordAuthentication no
# 重啟sshd服務
systemctl restart sshd
作者:Varden
出處:http://www.cnblogs.com/varden/
本文內容如有雷同,請聯絡作者!
本文版權歸作者和部落格園共有,歡迎轉載,但未經作者同意必須保留此段宣告,且在文章頁面明顯位置給出原文連線,否則保留追究法律責任的權利。