您創建的HPFS-POSIX協議的文件系統及子目錄可以掛載到對應物理機上,支持掛載的物理機規格可查看產品能力地圖。
當您登錄到物理機上后,請按照順序進行以下操作:
前置客戶端網絡環境檢查
在客戶端使用 ping測試到存儲服務器端是否連通。如若不通,請檢查網絡環境,存儲網口是否up,ip是否配置正確。服務端存儲地址,可以在文件系統的掛載地址中獲取:
其中掛載地址為 ip1@type:ip2@type:xxx 格式。type 當前有兩種取值:tcp0 表示業務通信使用Tcp驅動, o2ib0 表示業務通信使用IB驅動,后續步驟客戶端配置項需要區分兩種類型,與待連接的服務端保持一致。
確認已安裝客戶端
使用 rpm -qa|grep lustre 或 dpkg -l|grep lustre命令查詢客戶端及版本,如果已安裝可從下方章節設置lnet網絡配置繼續。但需確認客戶端版本為最新版本,客戶端版本信息查詢示例如下:
注意
強烈建議您使用最新版本的客戶端,新版本會修復一些已知問題保障軟件穩定。使用舊版本客戶端,在HPFS服務發生切換時,小概率會造成文件系統阻塞,若發生則可能需要幾分鐘時間才會自動恢復,極端情況下需要人工介入恢復業務使用。
安裝客戶端
您需要下載對應版本安裝包,并上傳到客戶端服務器,客戶端安裝包下載鏈接,安裝包命名格式為<軟件版本><系統內核版本><ib驅動版本>.zip,比如:
2.15.1-2_4.19.90-2102.2.0.0066.ctl2.aarch64_mlnx5.8.zip 為適用于內核版本4.19.90-2102.2.0.0066.ctl2.aarch64,IB驅動為mlnx5.8的客戶端包,軟件版本為2.15.1-2。
其中內核版本在客戶端服務器上執行 uname -r 查詢,IB驅動的版本在紅帽系統上執行 rpm -qa|grep mlnx ,如是Ubuntu系統執行 dpkg -l|grep mlnx 查詢。
紅帽系統查詢示例:
Ubuntu系統查詢示例:
說明
- 當業務使用以太網TCP時,只需要選擇和內核版本一致的客戶端安裝包就可以使用。
- 當業務使用IB通信時,需要選擇和內核版本及IB驅動版本都匹配的客戶端安裝包。
如果沒有對應版本的客戶端安裝包,請聯系技術支撐。
將安裝包上傳到客戶端服務器,在任意目錄解壓后,執行安裝命令。
紅帽系統安裝命令 rpm -i --nodeps *
Ubuntu系統安裝命令 dpkg -i --force-depends,overwrite *
安裝后再執行 rpm -qa|grep lustre 或 dpkg -l|grep lustre 命令查詢客戶端版本,確認安裝成功。
客戶端配置
為了獲得更好的性能體驗,修改 /etc/modprobe.d/lustre.conf 配置文件(如不存在,可新建同名文件),添加以下內容:
options libcfs cpu_npartitions=4
options libcfs cpu_pattern=""詳細參數信息請查看最佳實現:性能調優
設置lnet網絡配置
網絡加載項
使用以下命令,更新網絡加載項配置文件 lustre.conf,參數需要根據實際情況替換。注意用 >> 進行追加,避免覆蓋上一步客戶端性能調優的配置:
echo -e '\noptions lnet networks=<net_name>(<physical_interface_name>)' >> /etc/modprobe.d/lustre.conf
#TCP舉例
echo -e '\noptions lnet networks="tcp0(bond3)"' >> /etc/modprobe.d/lustre.conf
#IB、RoCE(昇騰服務器環境)舉例
echo -e '\noptions lnet networks="o2ib0(bond2)"' >> /etc/modprobe.d/lustre.conf如o2ib0的示例:
參數<net_name> 替換為掛載地址中的HPFS組網類型,下圖紅框:
tcp0(業務使用以太網TCP的情況,注意末尾有0)
o2ib0(業務使用IB的情況:包括IB和RoCE兩種網絡,注意末尾有0)
參數<physical_interface_name> 替換為網卡的名稱,RoCE是通過 ip a | grep 100.97查詢,IB網通過 ip a | grep 100.96查詢,如下圖IB組網中,grep 掛載地址中的 ip 100.97 ,確認對應網卡為 bond2。
查看并檢查lnet id信息
執行下列命令重載lustre驅動。
# 卸載lustre驅動 lustre_rmmod # 加載lustre驅動 modprobe lustre查看lnet id信息,判斷lnet是否綁定了正確的網卡和地址。
# 查看本機lnet id信息 lnetctl net show檢查客戶端lnet是否與存儲端lnet連通。
server_lnid 是hpfs存儲端使用的lnet id信息,在掛載地址里可查,格式是 ip地址@tcp或者o2ib , xxx.xxx.xxx.xxx@tcp 或 xxx.xxx.xxx.xxx@o2ib。
下例返回結果沒有error信息則代表連通,或者lnetctl ping后執行echo $?, 返回 0 也代表成功。
lnetctl ping <server_lnid>
echo $?成功示例:
失敗示例:
操作方法一:手動掛載
創建文件掛載目錄 local_mountpoint ,舉例:
mkdir /mnt/hpfs根據后端掛載命令進行手動掛載:
#掛載命令,如果您在HPFS文件系統中已創建了子目錄,可以在 hpfs_share_path 填入要掛載的子目錄 mount -t lustre -o seckey=<secret_key> <hpfs_share_path> <local_mountpoint> #查看掛載的文件系統 df -h #舉例: mount -t lustre -o seckey=3cRTcaAczXXXXXXXXXXXXXCfHUEyPhm3nE 192.XXXXX@tcp0:192.XXXXX@tcp0:/hp0001/user_id-testXXXXX_pbbXXXXXXXXcb1b2m /mnt/hpfs
操作方法二:自動掛載
設置
rclocal啟動順序,增加rc.local文件的可執行屬性:
sed -i '/After=network.target/c\Wants=network-online.target\nAfter=network.target network-online.target' /lib/systemd/system/rc-local.service
chmod +x /etc/rc.d/rc.local打開
/etc/rc.local文件,在文件末尾根據需求增加掛載命令,保存并退出:
mount -t lustre -o seckey=secret_key hpfs_share_path /local_mountpoint參數說明:
| 字段 | 描述 | 舉例 |
|---|---|---|
| secret_key | 掛載秘鑰 | 3cRTcaAczvKtC2fbnFtDXXXXXX3nE |
| hpfs_share_path | 文件系統掛載地址。 如果您在HPFS文件系統中已創建了子目錄,可以在 hpfs_share_path 填到要掛載的子目錄 | 如192.XXXXX@tcp0:192.XXXXX@tcp0:/hp0001/user_id-testXXXXX_pbbXXXXXXXXcb1b2m |
| local_mountpoint | 客戶端上的掛載點 | 如/mnt/hpfs |
舉例:
mount -t lustre -o seckey=3cRTcaAczvXXXXXXXXXXXXXfHUEyPhm3nE 192.XXXXX@tcp0:192.XXXXX@tcp0:/hp0001/user_id-testXXXXX_pbbXXXXXXXXcb1b2m /mnt/hpfs常見問題
ubuntu 系統按前述centos系統配置開機自動掛載的操作方式,如遇到不存在 /etc/rc.local文件的問題:
先執行 add_rclocal.sh腳本,再將掛載命令添加到 /etc/rc.local文件即可,注意將掛載命令添加到" exit 0"之前。