1. 程式人生 > 其它 >(案例一)Proxmox VE + Ceph + 物理網路 超融合生產環境部署案例

(案例一)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/ 本文內容如有雷同,請聯絡作者! 本文版權歸作者和部落格園共有,歡迎轉載,但未經作者同意必須保留此段宣告,且在文章頁面明顯位置給出原文連線,否則保留追究法律責任的權利。