網(wǎng)絡存儲分類:
成都創(chuàng)新互聯(lián)公司-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設、高性價比無棣網(wǎng)站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式無棣網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設找我們,業(yè)務覆蓋無棣地區(qū)。費用合理售后完善,10余年實體公司更值得信賴。按網(wǎng)絡拓撲分類:
1、DAS:直接附加存儲;優(yōu)點:技術(shù)簡單、傳輸速率高;缺點:存儲設備與磁盤相互綁定。
2、NAS:網(wǎng)絡附加存儲;優(yōu)點:技術(shù)相對簡單、不要求存儲設備直連本機,只需網(wǎng)絡訪問即可;缺點:存儲速率較慢。
3、SAN:存儲區(qū)域網(wǎng)絡;優(yōu)點:存儲安全性較高、存儲速率較高;缺點:造價昂貴、技術(shù)難度相對較高。
按存儲技術(shù)分類:
1、塊存儲(硬盤、U盤等);優(yōu)點:可以通過raid/lvm等技術(shù)提供保護、可獨立使用;缺點:不利于共享。
2、文件存儲/網(wǎng)絡存儲(samba、nfs、ftp);優(yōu)點:構(gòu)建資金較低、可在不同主機之前共享存儲;缺點:讀寫速率低,傳輸速率慢。
3、對象存儲/分布式存儲/存儲桶(重點是:將元數(shù)據(jù)和真實數(shù)據(jù)分別存儲多臺服務器上);優(yōu)點:讀寫效率高、可在不同主機之間共享存儲;缺點:造價昂貴、技術(shù)實現(xiàn)難度較高。
常用模式:
1、塊存儲+DAS:底層技術(shù)
2、塊存儲+NAS
3、塊存儲+SAN
4、文件存儲+NAS:NFS、Samba、ftp
5、對象存儲+SAN:MFS、RHCS、ceph等
文件存儲之NFS:依賴RPC協(xié)議傳輸
nfs-utils:NFS服務主程序包
rpcbind:centos6和7的RPC主程序包(centos5為portmap)
server端NFS配置:
/etc/exports:nfs配置文件;格式:
NFS共享目錄? ? ? ?NFS客戶端地址1(參數(shù)1,參數(shù)2...)? ? ? ? ? ??NFS客戶端地址2(參數(shù)1,參數(shù)2...)? ? ? ? ? ? ? #可以多行表示多個共享
常用參數(shù):
rw:可讀寫。需要目錄權(quán)限共同參與
ro:只讀
sync:文件同時寫入硬盤和內(nèi)存
async:文件暫存于內(nèi)存,而不是直接寫入內(nèi)存
no_root_squash:允許root權(quán)限? ?
root_squash:將root用戶的權(quán)限映射為匿名用戶權(quán)限(nobody或者nfsnobody)
all_squash:所有用戶都映射為匿名用戶權(quán)限(nobody或者nfsnobody)
anonuid:匿名用戶的uid
anongid:匿名用戶的gid
示例:
server端
~]# yum -y install rpcbind nfs-utils
~]# mkdir -pv /nfs1 /nfs2
~]# chown -R nobody:nobody /nfs1 /nfs2? ?
~]# vim /etc/exports
/nfs1? ?192.168.0.0/24(rw,no_root_squash,async)? ? ? ? ?172.20.120.0/24(rw,no_root_squash,async)
/nfs2? ?172.20.120.0/24(ro,no_root_squash,async)
~]# systemctl restart rpcbind
~]# systemctl restart nfs
clinet端
~]# yum -y install nfs-utils
~]# showmount -e 172.20.120.182
~]# mkdir -pv /tmp/nfs[1,2]
~]# mount -t nfs 172.20.120.182:/nfs1 /tmp/nfs1
~]# mount -t nfs 172.20.120.182:/nfs2 /tmp/nfs2
分布式存儲之MFS(MooseFS):一個具備冗余容錯功能的分布式網(wǎng)絡文件系統(tǒng)。
特性:
缺點:
MFS組件說明:
1、master(managin server):分發(fā)用戶請求和存儲元數(shù)據(jù)
2、metalogger(metadata backup servers):備份master變化的metadata信息日志文件
3、data(chunk server):存儲數(shù)據(jù)文件實體
4、client(client server):掛載并使用mfs文件系統(tǒng)的客戶端;需要系統(tǒng)支持fuse
master主配置文件:mfsmaster.cfg
示例:1臺master,1臺metalogger,2臺data,1臺client
此處示例為moosefs-3.0.84;下載地址:https://github.com/moosefs/moosefs/releases/tag/v3.0.84
master設置:
~]# tar xvf moosefs-3.0.84.tar.gz -C /usr/local/
~]# cd /usr/local/moosefs-3.0.84/
moosefs-3.0.84]# useradd -s /sbin/nologin -M mfs
moosefs-3.0.84]# yum -y groupinstall "Development Tools"
moosefs-3.0.84]# yum -y install zlib-devel
moosefs-3.0.84]# ./configure --prefix=/usr/local/mfs --with-default-user=mfs --with-default-group=mfs
moosefs-3.0.84]# make && make install
moosefs-3.0.84]# chown -R mfs:mfs /usr/local/mfs/
moosefs-3.0.84]# ln -sv /usr/local/mfs/bin/mfscli /usr/local/bin/
moosefs-3.0.84]# ln -sv /usr/local/mfs/sbin/* /usr/local/sbin/
~]# cp -a /usr/local/mfs/etc/mfs/mfsmaster.cfg.sample /usr/local/mfs/etc/mfs/mfsmaster.cfg? ? ? ? ??
~]# cp -a /usr/local/mfs/etc/mfs/mfsexports.cfg.sample /usr/local/mfs/etc/mfs/mfsexports.cfg
~]# vim /usr/local/mfs/etc/mfs/mfsexports.cfg
172.20.120.0/24 . rw,alldirs,maproot=0? ? ? ? ? ? ? ? ? ? ? ? ? ? #設置MFS掛載權(quán)限
~]# cp /usr/local/mfs/var/mfs/metadata.mfs.empty /usr/local/mfs/var/mfs/metadata.mfs? ? ? ? ? ? ? #初始化MFS元數(shù)據(jù)信息文件
可選服務(mfscgiserv):在端口9425開啟web監(jiān)控頁面;可用zabbix調(diào)用
設置開機自啟:
~]# systemctl start moosefs-master moosefs-cgiserv? ? ? ? ? ? ? ? ? ? ? ?#啟動MFS-master服務和mfscgiserv服務
~]# systemctl enable moosefs-master moosefs-cgiserv
附錄:centos7 system腳本制作:moosefs-master.service
~]# vim /usr/lib/systemd/system/moosefs-master.service
[Unit]
Description=MooseFS Master server
Wants=network-online.target
After=network.target network-online.target
[Service]
Type=forking
ExecStart=/usr/local/mfs/sbin/mfsmaster -a
ExecStop=/usr/local/mfs/sbin/mfsmaster stop
ExecReload=/usr/local/mfs/sbin/mfsmaster reload
PIDFile=/usr/local/mfs/var/mfs/.mfsmaster.lock
TimeoutStopSec=1800
TimeoutStartSec=1800
Restart=no
[Install]
WantedBy=multi-user.target
附錄:centos7 system腳本制作:moosefs-cgiserv.service
~]# vim /usr/lib/systemd/system/moosefs-cgiserv.service
[Unit]
Description=MooseFS CGI server
Wants=network-online.target
After=network.target network-online.target
[Service]
Type=forking
ExecStart=/usr/local/mfs/sbin/mfscgiserv start
ExecStop=/usr/local/mfs/sbin/mfscgiserv stop
PIDFile=/usr/local/mfs/var/mfs/.mfscgiserv.lock
Restart=on-abnormal
[Install]
WantedBy=multi-user.target
metalogger設置:
~]# tar xvf moosefs-3.0.84.tar.gz -C /usr/local/
~]# cd /usr/local/moosefs-3.0.84/
moosefs-3.0.84]# useradd -s /sbin/nologin -M mfs
moosefs-3.0.84]# yum -y groupinstall "Development Tools"
moosefs-3.0.84]# yum -y install zlib-devel
moosefs-3.0.84]# ./configure --prefix=/usr/local/mfs --with-default-user=mfs --with-default-group=mfs
moosefs-3.0.84]# make && make install?
moosefs-3.0.84]# chown -R mfs:mfs /usr/local/mfs/
moosefs-3.0.84]# ln -sv /usr/local/mfs/bin/mfscli /usr/local/bin/
moosefs-3.0.84]# ln -sv /usr/local/mfs/sbin/* /usr/local/sbin/
moosefs-3.0.84]# cp -a /usr/local/mfs/etc/mfs/mfsmetalogger.cfg.sample /usr/local/mfs/etc/mfs/mfsmetalogger.cfg
moosefs-3.0.84]# vim /usr/local/mfs/etc/mfs/mfsmetalogger.cfg
META_DOWNLOAD_FREQ = 2? ? ? ? ? ? ? ? ? ? ? ? ? ?#設置完整同步間隔為2小時
MASTER_HOST = 172.20.120.187? ? ? ? ? ? ? ? ? ? ? #設置master服務器ip地址??
moosefs-3.0.84]#?systemctl start moosefs-metalogger? ? ? ? ? ? ?#啟動服務并開機自啟
moosefs-3.0.84]#?systemctl enable moosefs-metalogger
moosefs-3.0.84]# lsof -i :9419? ? ? ? ? ? ? ? ? ? ? ? ? ? #驗證是否跟master聯(lián)系
moosefs-3.0.84]# ls /usr/local/mfs/var/mfs/? ? ? ? #查看元數(shù)據(jù)信息是否已同步
附錄:centos7 system腳本制作:moosefs-metalogger.service
~]# vim /usr/lib/systemd/system/moosefs-metalogger.service
[Unit]
Description=MooseFS Metalogger server
Wants=network-online.target
After=network.target network-online.target
[Service]
Type=forking
ExecStart=/usr/local/mfs/sbin/mfsmetalogger start
ExecStop=/usr/local/mfs/sbin/mfsmetalogger stop
ExecReload=/usr/local/mfs/sbin/mfsmetalogger reload
PIDFile=/usr/local/mfs/var/mfs/.mfsmetalogger.lock
Restart=on-abnormal
[Install]
WantedBy=multi-user.target
chunk server設置:
準備共享的設備,此處為獨立的硬盤
~]# mkfs.xfs /dev/vdb1
~]# mkdir -pv /mfs
~]# mount /dev/vdb1 /mfs
~]# chown -R mfs:mfs /mfs
~]# vim /etc/fstab????????????????????????#設置開機掛載
/dev/vdb1? ? ? ?/mfs? ? xfs? ? ?defaults? ? ? ? 0 0
安裝配置
~]# tar xvf moosefs-3.0.84.tar.gz -C /usr/local/
~]# cd /usr/local/moosefs-3.0.84/
moosefs-3.0.84]# useradd -s /sbin/nologin -M mfs
moosefs-3.0.84]# yum -y groupinstall "Development Tools"
moosefs-3.0.84]# yum -y install zlib-devel
moosefs-3.0.84]# ./configure --prefix=/usr/local/mfs --with-default-user=mfs --with-default-group=mfs
moosefs-3.0.84]# make && make install?
moosefs-3.0.84]# chown -R mfs:mfs /usr/local/mfs/
moosefs-3.0.84]# ln -sv /usr/local/mfs/bin/mfscli /usr/local/bin/
moosefs-3.0.84]# ln -sv /usr/local/mfs/sbin/* /usr/local/sbin/
moosefs-3.0.84]# cp -a /usr/local/mfs/etc/mfs/mfschunkserver.cfg.sample /usr/local/mfs/etc/mfs/mfschunkserver.cfg
moosefs-3.0.84]# vim /usr/local/mfs/etc/mfs/mfschunkserver.cfg
MASTER_HOST = 172.20.120.187? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? #指定master服務器ip
HDD_CONF_FILENAME = /usr/local/mfs/etc/mfs/mfshdd.cfg
moosefs-3.0.84]# cp -a /usr/local/mfs/etc/mfs/mfshdd.cfg.sample /usr/local/mfs/etc/mfs/mfshdd.cfg
moosefs-3.0.84]# vim /usr/local/mfs/etc/mfs/mfshdd.cfg?
/mfs? ? ? ? ? ? ? ? ? ? ? ? #指定共享設備
~]# systemctl start moosefs-chunkserver? ? ? ? ? ? ? ? ? ? #啟動服務并開機自啟
~]# systemctl enable moosefs-chunkserver?
附錄:centos7 system腳本制作:moosefs-chunkserver.service
~]# vim /usr/lib/systemd/system/moosefs-chunkserver.service
[Unit]
Description=MooseFS Chunkserver
Wants=network-online.target
After=network.target network-online.target
[Service]
Type=forking
ExecStart=/usr/local/mfs/sbin/mfschunkserver start
ExecStop=/usr/local/mfs/sbin/mfschunkserver stop
ExecReload=/usr/local/mfs/sbin/mfschunkserver reload
PIDFile=/usr/local/mfs/var/mfs/.mfschunkserver.lock
Restart=on-abnormal
[Install]
WantedBy=multi-user.target
clinet端設置
~]# yum -y install fuse fuse-libs fuse-devel? ? ? ? ? ? ? ? #安裝fuse
~]# tar xvf moosefs-3.0.84.tar.gz -C /usr/local/
~]# cd /usr/local/moosefs-3.0.84/
moosefs-3.0.84]# useradd -s /sbin/nologin -M mfs
moosefs-3.0.84]# yum -y groupinstall "Development Tools"
moosefs-3.0.84]# ./configure --prefix=/usr/local/mfs --with-default-user=mfs --with-default-group=mfs --disable-mfsmaster --disable-mfschunkserver
moosefs-3.0.84]# make && make install?
moosefs-3.0.84]# chown -R mfs:mfs /usr/local/mfs/
moosefs-3.0.84]# ln -sv /usr/local/mfs/bin/* /usr/local/bin/
moosefs-3.0.84]# ln -sv /usr/local/mfs/sbin/* /usr/local/sbin/
創(chuàng)建并掛載
~]# mkdir -pv /mfs????
~]# mfsmount /mfs/ -H 172.20.120.187
~]# chown -R mfs:mfs /mfs
~]# vim /mfs/1.txt
~]# mfsfileinfo /mfs/1.txt? ? ? ? ? ? ? ?#查看文件信息
開機自動掛載
~]# vim /etc/rc.d/rc.local
/usr/local/bin/mfsmount /mfs -H 172.20.120.187
~]# chmod a+x /etc/rc.d/rc.local
MFS維護操作:
1、在trashtime時間內(nèi)恢復誤刪除的文件:(默認誤刪可恢復時長為1天)
~]# mkdir -pv /mfsback
~]# chown -R mfs:mfs /mfsback
~]# mfsmount -m /mfsback/ -H 172.20.120.187
~]# find /mfsback/ -name "*2.txt"? ? ? ? ? ? ? ?#前提是知道誤刪文件的名稱,此處定位該文件
~]# mv /mfsback/trash/009/00000009\|2.txt /mfsback/trash/undel/? ? ? ? ? ? ? ??
2、快照功能:
~]# mkdir -pv /mfs/mfssnap? ? ? ? ? #要求跟源文件在同一設備上
~]# chown -R mfs:mfs /mfs/mfssnap/
~]# mfsmakesnapshot /mfs/2.txt /mfs/mfssnap/
3、冗余goal設置(默認為2)
~]# mfssetgoal 1 /mfs/1.txt? ? ? ? ?#設置1.txt副本數(shù)為1
~]# mfsgetgoal /mfs/1.txt? ? ? ? ? ? #查看驗證
~]# mfsfileinfo /mfs/1.txt
4、還原master
重構(gòu)master環(huán)境(省略)
metalogger端將數(shù)據(jù)傳輸?shù)絤aster:
~]# scp /usr/local/mfs/var/mfs/* root@172.20.120.187:/usr/local/mfs/var/mfs/
master端恢復和啟動:(恢復數(shù)據(jù)需一定時長)
~]# mfsmaster -a
5、高可用master服務器
塊存儲之ISCSI:
跟文件文件系統(tǒng)的區(qū)別:1、提供塊存儲;2、傳輸iscsi指令,效率更高
iSCSI技術(shù)在工作形式上分為服務端(target)與客戶端(initiator)。
1、iSCSI服務端即用于存放硬盤存儲資源的服務器,它作為前面創(chuàng)建的RAID磁盤陣列的存儲端,能夠為用戶提供可用的存儲資。?
2、iSCSI客戶端則是用戶使用的軟件,用于訪問遠程服務端的存儲資源。
服務端設置:
1、準備共享用的塊設備(可以使磁盤、分區(qū)、邏輯卷);此處示例為/dev/vdc1分區(qū)
2、安裝配置target端
~]# yum -y install scsi-target-utils
~]# vim /etc/tgt/conf.d/test.conf? ? ? ? ? ? ? ? ? 通過配置文件持久化配置
vendor_id hbzh? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?#配置發(fā)行商(任意)
lun 1? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? #配置LUN號
incominguser iscsiuser iscsiuser? ? ? ? ? ? ? ? ? ? ? ? #配置認證的用戶名和密碼
initiator-address 172.20.120.0/24? ? ? ? ? ? ? ? ? ? ?#配置允許的網(wǎng)段
~]#?systemctl start tgtd
~]#?systemctl enable tgtd
~]#?tgtadm -L iscsi -o show -m target? ? ? ? ? ? ? ? ? ? ?#查驗配置
客戶端設置:
~]#?yum -y install iscsi-initiator-utils
~]# vim /etc/iscsi/iscsid.conf
node.session.auth.username = iscsiuser? ? ? ? ? ? ? ? ?#輸入服務器端設置的用戶密碼
node.session.auth.password = iscsiuser
~]#?iscsiadm -m discovery -t st -p 172.20.120.184? ? ? ? ? ?#執(zhí)行發(fā)現(xiàn)操作
~]#?iscsiadm -m node -T iqn.2020-01.com.nice.www:iscsi.sda --login? ? ? ? ? ? ? ? #登錄操作
~]# fdisk -l? ? ? ? ? ? ? ? ?#查看新增的硬盤信息
后續(xù)按操作實體硬盤操作即可(格式化、掛載、使用)
開機自動掛載
~]# vim /etc/fstab
/dev/sda1? ? ? ?/tmp/iscsi? ? ? xfs? ? ?_netdev 0 0
~]# systemctl start iscsi
~]# systemctl enable iscsi
另外有需要云服務器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務器、裸金屬服務器、高防服務器、香港服務器、美國服務器、虛擬主機、免備案服務器”等云主機租用服務以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應用場景需求。