近些年,分布式存儲(chǔ)因具有高性能、高可用的特性而進(jìn)入存儲(chǔ)市場。除商業(yè)產(chǎn)品外,開源分布式存儲(chǔ)軟件更受歡迎,其中以Lustre、CephFS、GlusterFS為典型代表。
創(chuàng)新互聯(lián)堅(jiān)持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:網(wǎng)站設(shè)計(jì)制作、成都網(wǎng)站制作、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿足客戶于互聯(lián)網(wǎng)時(shí)代的五蓮網(wǎng)站設(shè)計(jì)、移動(dòng)媒體設(shè)計(jì)的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!Lustre是一個(gè)開源、分布式并行文件系統(tǒng)軟件平臺(tái),具有高可擴(kuò)展、高性能、高可用等特點(diǎn)。Lustre的構(gòu)造目標(biāo)是為大規(guī)模高性能計(jì)算系統(tǒng)提供一個(gè)全局一致的POSIX兼容的命名空間,它支持?jǐn)?shù)百PB數(shù)據(jù)存儲(chǔ)空間,支持?jǐn)?shù)百GB/s乃至數(shù)TB/s并發(fā)聚合帶寬。
MGS(Management Server,管理服務(wù)端),MGS存儲(chǔ)集群中的所有Lustre文件的配置信息,并為其它Lustre組件提供信息。
MDS(Metadata Servers,元數(shù)據(jù)服務(wù)端),MDS使得元數(shù)據(jù)對(duì)客戶端有效,每個(gè)MDS管理Lustre文件系統(tǒng)中的名稱和目錄。
OSS(Object Storage Servers,對(duì)象存儲(chǔ)服務(wù)端),OSS用于存放客戶端業(yè)務(wù)訪問數(shù)據(jù)。
注:在所有主機(jī)執(zhí)行如下操作
1.設(shè)置主機(jī)名
hostnamectl set-hostname node1
2.關(guān)閉firewalld及selinux
systemctl stop firewalld && systemctl disable firewalld
sed -i "s/SELINUX=enforcing/SELINUX=disabled/g" /etc/selinux/config
3.創(chuàng)建臨時(shí)yum源
cat >/tmp/lustre-repo.conf <
4.安裝相關(guān)工具包
yum install yum-utils createrepo perl linux-firmware -y
5.提前將軟件包下載到本地
mkdir -p /var/www/html/repo
cd /var/www/html/repo
reposync -c /tmp/lustre-repo.conf -n \
-r lustre-server \
-r lustre-client \
-r e2fsprogs-wc
6.創(chuàng)建本地lustre的yum源
cd /var/www/html/repo
for i in e2fsprogs-wc lustre-client lustre-server; do
(cd $i && createrepo .)
done
7.創(chuàng)建本地lustre源配置文件
cat > /etc/yum.repos.d/CentOS-lustre.repo <
8.查看repo
yum repolist all
注:在所有服務(wù)端主機(jī)執(zhí)行如下操作
1.安裝efs2progs
yum --nogpgcheck --disablerepo=* --enablerepo=e2fsprogs-wc \
install e2fsprogs -y
2.卸載內(nèi)核沖突包
yum remove selinux-policy-targeted -y
3.安裝并升級(jí)內(nèi)核
yum --nogpgcheck --disablerepo=base,extras,updates \
--enablerepo=lustre-server install \
kernel \
kernel-devel \
kernel-headers \
kernel-tools \
kernel-tools-libs
4.重啟機(jī)器
reboot
5.安裝ldiskfs kmod和lustre包
yum --nogpgcheck --enablerepo=lustre-server install \
kmod-lustre \
kmod-lustre-osd-ldiskfs \
lustre-osd-ldiskfs-mount \
lustre \
lustre-resource-agents
6.加載lustre到內(nèi)核
modprobe -v lustre
modprobe -v ldiskfs
echo 'options lnet networks=tcp0(ens1f1)' > /etc/modprobe.d/lustre.conf
depmod -a
注:只在客戶端主機(jī)上操作
客戶端主機(jī)安裝lustre客戶端軟件,無需升級(jí)帶有l(wèi)ustre的內(nèi)核,直接安裝lustre-client即可
1.安裝kmod
yum --nogpgcheck --enablerepo=lustre-client install \
kmod-lustre-client \
lustre-client
2.加載lustre參數(shù)
echo ' options lnet networks=tcp0(ens1f1)' > /etc/modprobe.d/lustre.conf
depmod -a
modprobe lustre
配置說明:
--fsname:指定生成后的lustre文件系統(tǒng)名,如sgfs,將來客戶端采用mount -t 192.168.100.1@tcp0:192.168.100.2@tcp0:/sgfs /home進(jìn)行掛載。--mgs:指定為MGS分區(qū)
--mgt:指定為MGT分區(qū)
--ost:指定為OST分區(qū)
--servicenode=ServiceNodeIP@tcp0:指定本節(jié)點(diǎn)失效時(shí),接手提供服務(wù)的節(jié)點(diǎn),如為InfiniBand網(wǎng)絡(luò),那么tcp0需要換成o2ib
br/>--mgs:指定為MGS分區(qū)
--mgt:指定為MGT分區(qū)
--ost:指定為OST分區(qū)
--servicenode=ServiceNodeIP@tcp0:指定本節(jié)點(diǎn)失效時(shí),接手提供服務(wù)的節(jié)點(diǎn),如為InfiniBand網(wǎng)絡(luò),那么tcp0需要換成o2ib
建立MGS和MGT(注:在服務(wù)端MGS主機(jī)node1上執(zhí)行)
mkdir -p /data/mdt
mkfs.lustre --fsname=lufs --mgs --mdt --index=0 --servicenode=10.10.201.61@tcp0 --reformat /dev/sdb
mount -t lustre /dev/sdb /data/mdt/
建立OST1(注:在服務(wù)端OSS主機(jī)node2上執(zhí)行)
mkdir /data/ost1 –p
mkfs.lustre --fsname=sgfs --mgsnode=10.10.201.61@tcp0 --servicenode=10.10.201.62@tcp0 --servicenode=10.10.201.63@tcp0 --ost --reformat --index=1 /dev/sdb
mount -t lustre /dev/sdb /data/ost1/
建立OST2(注:在服務(wù)端OSS主機(jī)node3上執(zhí)行)
mkdir /data/ost2 -p
mkfs.lustre --fsname=sgfs --mgsnode=10.10.201.61@tcp0 --servicenode=10.10.201.63@tcp0 --servicenode=10.10.201.62@tcp0 --ost --reformat --index=2 /dev/sdb
mount -t lustre /dev/sdb /data/ost2/
客戶端創(chuàng)建掛載目錄并進(jìn)行掛載訪問。(注:在客戶端主機(jī)node4上執(zhí)行)
mkdir /lustre/sgfs/
mount.lustre 10.10.201.61@tcp0:/sgfs /lustre/sgfs/
如果掛載失敗,可用lctl命令檢查網(wǎng)絡(luò)連接,并查看系統(tǒng)日志排查。
lctl ping 10.10.201.61@tcp0
查看是否掛載成功
df -ht lustre
報(bào)錯(cuò)1:
[root@node1 ~]# modprobe -v lustre
insmod /lib/modules/3.10.0-957.10.1.el7_lustre.x86_64/extra/lustre/net/libcfs.ko
insmod /lib/modules/3.10.0-957.10.1.el7_lustre.x86_64/extra/lustre/net/lnet.ko
insmod /lib/modules/3.10.0-957.10.1.el7_lustre.x86_64/extra/lustre/fs/obdclass.ko
insmod /lib/modules/3.10.0-957.10.1.el7_lustre.x86_64/extra/lustre/fs/ptlrpc.ko
modprobe: ERROR: could not insert 'lustre': Cannot allocate memory
錯(cuò)誤原因:服務(wù)器有2顆CPU,一顆CPU沒有插內(nèi)存條,表現(xiàn)如下
[root@node2 ~]# numactl -H
available: 2 nodes (0-1)
node 0 cpus: 0 1 2 3 4 5 6 7 8 9 20 21 22 23 24 25 26 27 28 29
node 0 size: 0 MB
node 0 free: 0 MB
node 1 cpus: 10 11 12 13 14 15 16 17 18 19 30 31 32 33 34 35 36 37 38 39
node 1 size: 32654 MB
node 1 free: 30680 MB
node distances:
node 0 1
0: 10 20
1: 20 10
重新插拔內(nèi)存后調(diào)整狀態(tài)
[root@node1 ~]# numactl -H
available: 2 nodes (0-1)
node 0 cpus: 0 1 2 3 4 5 6 7 8 9 20 21 22 23 24 25 26 27 28 29
node 0 size: 16270 MB
node 0 free: 15480 MB
node 1 cpus: 10 11 12 13 14 15 16 17 18 19 30 31 32 33 34 35 36 37 38 39
node 1 size: 16384 MB
node 1 free: 15504 MB
node distances:
node 0 1
0: 10 21
1: 21 10
參考解決辦法:
https://jira.whamcloud.com/browse/LU-11163
歡迎掃碼提問,可在線解答。會(huì)定期分享虛擬化、容器、DevOps等相關(guān)內(nèi)容
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。