999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

淺談網(wǎng)絡(luò)塊設(shè)備的彈性擴(kuò)容

2021-08-06 19:34:19韋偉于兆勇李冰利
計(jì)算機(jī)時(shí)代 2021年7期
關(guān)鍵詞:存儲(chǔ)

韋偉 于兆勇 李冰利

摘? 要: 近些年各個(gè)領(lǐng)域的數(shù)據(jù)都出現(xiàn)爆炸性的增長(zhǎng), 而市面上為用戶提供的存儲(chǔ)服務(wù)也越來越多,但大多數(shù)存在存儲(chǔ)容量受限,增加容量時(shí)價(jià)格昂貴,災(zāi)備空間有限等問題。文章研究了Linux的一個(gè)內(nèi)核模塊Network Block Device(NBD),并利用NBD來實(shí)現(xiàn)遠(yuǎn)程存儲(chǔ)設(shè)備在本地服務(wù)器上的彈性掛載,從而實(shí)現(xiàn)本地服務(wù)的彈性擴(kuò)容。

關(guān)鍵詞: Linux內(nèi)核; 內(nèi)核模塊; 網(wǎng)絡(luò)塊設(shè)備; 存儲(chǔ)

中圖分類號(hào):TP399? ? ? ? ? 文獻(xiàn)標(biāo)識(shí)碼:A? ? ? 文章編號(hào):1006-8228(2021)07-28-03

Discussion on the elastic expansion using Network Block Device

Wei Wei, Yu Zhaoyong, Li Bingli

(AVIC The First Aircraft Institute, Xi'an, Shannxi 710089, China)

Abstract: In recent years, the data in various fields are explosively increased, and the storage services available for users have being more and more, but most of them have the problems of limited storage capacity, high price when increasing capacity, limited disaster recovery space and so on. This paper studies Network Block Device (NBD), a kernel module of Linux, and uses NBD to realize the elastic mounting of remote storage devices on local servers, so as to realize the elastic expansion of local services.

Key words: Linux kernel; kernel module; Network Block Device; storage

0 引言

目前,互聯(lián)網(wǎng)蓬勃發(fā)展,大數(shù)據(jù)時(shí)代已悄然來臨。各行各業(yè),無時(shí)無刻都會(huì)有巨大的數(shù)據(jù)量產(chǎn)生,這些數(shù)據(jù)也包括個(gè)人日常生活產(chǎn)生的數(shù)據(jù),與每個(gè)人息息相關(guān)。

數(shù)據(jù)是無限的財(cái)富,如果應(yīng)用好這些大數(shù)據(jù),將會(huì)給企業(yè)和個(gè)人帶來意想不到的收獲及驚喜。但是想要更好地分析應(yīng)用這些數(shù)據(jù),首先就要使數(shù)據(jù)得到便捷安全的存儲(chǔ)。目前市面上為用戶提供的存儲(chǔ)服務(wù)有很多,各自都有其不同的特點(diǎn),但大多數(shù)存在存儲(chǔ)容量受限,增加容量或者限時(shí)價(jià)格昂貴,或者單個(gè)文件傳輸大小受到一定限制,災(zāi)備空間有限等問題。本文重點(diǎn)研究Linux內(nèi)核模塊中的網(wǎng)絡(luò)塊設(shè)備NBD(Network Block Device),利用網(wǎng)絡(luò)塊設(shè)備來實(shí)現(xiàn)本地服務(wù)器上的彈性掛載,從而實(shí)現(xiàn)本地服務(wù)的擴(kuò)容。

1 Linux內(nèi)核

Linux為開源電腦操作系統(tǒng)內(nèi)核,最早Linux內(nèi)核是90年代初由Linus發(fā)布的,其采取開源社區(qū)的形式,全球無數(shù)程序員每天都在為內(nèi)核中無償?shù)奶峁┧枷牒痛a的幫助,使得Linux內(nèi)核變得越來越強(qiáng)大,現(xiàn)在已經(jīng)發(fā)展到最新的5.5版本,是一個(gè)成熟的商用的操作系統(tǒng)。

Linux內(nèi)核結(jié)構(gòu)示意圖如圖1所示。包括兩個(gè)方面,一個(gè)是用戶空間,另一個(gè)是內(nèi)核空間。用戶空間主要作用是運(yùn)行應(yīng)用程序,常用的是glibc庫(kù),它能夠封裝系統(tǒng)調(diào)用接口,用戶空間運(yùn)行的進(jìn)程有自己的獨(dú)立的虛擬地址空間,和內(nèi)核地址空間區(qū)分開來。內(nèi)核地址空間有三層,分別是系統(tǒng)調(diào)用層、Linux內(nèi)核層和依賴體系結(jié)構(gòu)的代碼層。系統(tǒng)調(diào)用層為用戶和內(nèi)核空間通信通信提供方式;Linux內(nèi)核層是獨(dú)立于體系結(jié)構(gòu)的內(nèi)核代碼,它適用于任何體系結(jié)構(gòu);依賴體系結(jié)構(gòu)的代碼層(BSP)作用是兼容不用處理器或者平臺(tái)[1]。本文所研究的網(wǎng)絡(luò)塊設(shè)備NBD,位于Linux的內(nèi)核空間的內(nèi)核層。

2 網(wǎng)絡(luò)塊設(shè)備

網(wǎng)絡(luò)塊設(shè)備1997年由Pavel Machek開發(fā)的,它是一個(gè)輕量級(jí)且快速的開源網(wǎng)絡(luò)存儲(chǔ)軟件,能夠?qū)⑽挥谶h(yuǎn)端機(jī)器上的存儲(chǔ)空間映射為本地的虛擬磁盤,提供給本地用戶使用。在大家的共同努力下,網(wǎng)絡(luò)塊設(shè)備越來越趨于成熟穩(wěn)定,而且能夠支持SMP、64位體系結(jié)構(gòu)等特性[2]。目前它是Linux內(nèi)核的規(guī)范組件,并且在一定的領(lǐng)域中被廣泛使用。它的主要作用能夠讓用戶通過網(wǎng)絡(luò)訪問某個(gè)塊設(shè)或者設(shè)備鏡像。這個(gè)功能正好能夠很好解決用戶存在的存儲(chǔ)容量受限,或者單個(gè)文件傳輸大小受到一定的限制,容災(zāi)等問題。

在Linux中,每個(gè)網(wǎng)絡(luò)塊設(shè)備均為一個(gè)node,通常,網(wǎng)絡(luò)塊設(shè)備訪問的不是本地的物理存儲(chǔ),而是將遠(yuǎn)端的存儲(chǔ)設(shè)備映射成本地塊設(shè)備的虛擬驅(qū)動(dòng),實(shí)際訪問的是掛載在本地的遠(yuǎn)端存儲(chǔ)設(shè)備[3]。也就是說,A用戶在本地能夠訪問遠(yuǎn)端B用戶機(jī)器上的固定的物理磁盤,這樣可以將資源最大化的使用起來。網(wǎng)絡(luò)塊設(shè)備包括客戶端和服務(wù)端兩部分,其基本原理如圖2所示。

2.1 網(wǎng)絡(luò)塊設(shè)備服務(wù)器端

nbd_server是網(wǎng)絡(luò)塊設(shè)備服務(wù)器端的核心對(duì)象,由channel這個(gè)通道對(duì)象來完成網(wǎng)絡(luò)傳輸,文件服務(wù)器fileserver來完成讀寫數(shù)據(jù)集的操作[4]。服務(wù)器端最初一級(jí)的進(jìn)程初始化數(shù)據(jù)文件集和一些基本參數(shù)后進(jìn)行無限的循環(huán)等待,以接受來自不同用戶的登錄。有用戶登錄成功,產(chǎn)生第二級(jí)進(jìn)程,然后再派生出若干第三級(jí)線程,等待這些線程完成,線程全部結(jié)束則表示傳輸完畢。

2.2 網(wǎng)絡(luò)塊設(shè)備客戶端

網(wǎng)絡(luò)塊設(shè)備客戶端一方面是響應(yīng)塊設(shè)備的讀寫請(qǐng)求的服務(wù)方,另一方面是服務(wù)器端的客戶方。客戶端上的驅(qū)動(dòng)程序主要完成與本地文件的交互,以及向網(wǎng)絡(luò)發(fā)送傳送讀寫請(qǐng)求。網(wǎng)絡(luò)塊設(shè)備是基于TCP的網(wǎng)路傳輸,服務(wù)器端和客戶端通過BSD Socket接口實(shí)現(xiàn)網(wǎng)絡(luò)傳輸,Linux系統(tǒng)一般提供多達(dá)256個(gè)網(wǎng)絡(luò)塊設(shè)備[5]。

nbd_client為客戶端的核心對(duì)象,它獨(dú)立地完成和驅(qū)動(dòng)層的交互,其子對(duì)象Storageserver則來完成網(wǎng)絡(luò)傳輸,對(duì)象channel來完成傳輸通道的任務(wù)。這樣不僅可以使程序更加清晰,也可以在不同的對(duì)象上添加多種多樣的功能。

3 網(wǎng)絡(luò)塊設(shè)備使用

3.1 網(wǎng)絡(luò)塊設(shè)備服務(wù)器端的操作

⑴ 安裝nbd-server。

# apt-get install ndb-server

⑵ 服務(wù)器端啟動(dòng)nbd-server,監(jiān)聽1234端口,使用nbd-disk0映像文件,即將/var/tmp/nbd-disk0這塊磁盤共享出來,供客戶端共享使用。

# nbd-server 1234 /var/tmp/nbd-disk0

3.2 網(wǎng)絡(luò)塊設(shè)備客戶端的操作

⑴ 安裝 nbd-client。

# apt-get install nbd-client

⑵ 客戶端需要加載NBD模塊,否則不支持NBD功能。

# modprobe nbd

⑶ 查看NBD設(shè)備是否建立。

# lsmod | grep nbd? nbd 26400 0

⑷ 查看本機(jī)的NBD設(shè)備是否加載,不加載不可以使用。

# ls /dev/nbd* -hl

brw-r-----1 root disk 43, 0 Nov 27 06:40/dev/nbd0

⑸ 將/dev/nbd0設(shè)備與主機(jī)連接。/dev/nbd0是本機(jī)的一個(gè)磁盤,192.168.1.1是服務(wù)器的IP,1234是服務(wù)器端共享NBD設(shè)備的端口。

# nbd-client 192.168.1.1 1234 /dev/nbd0

⑹ 連接成功后,可以查看到nbd-client進(jìn)程。

# ps -ef | grep nbd

root 3156 1 0 06:44 pts/0 00:00:00 nbd-client

192.168.1.1 1234 /dev/nbd0

# mkfs.ext3 /dev/nbd0 //需要格式化這個(gè)塊設(shè)備。

# mkdir /mnt/nbd0 //掛載這個(gè)塊設(shè)備。

# mount /dev/nbd0 /mnt/nbd0

# cd /mnt/nbd0

# nbd-client -d /dev/nbd0 //斷開這個(gè)塊設(shè)備。

每次客戶端讀寫網(wǎng)絡(luò)塊設(shè)備,網(wǎng)絡(luò)塊設(shè)備內(nèi)核驅(qū)動(dòng)將通過TCP發(fā)送請(qǐng)求,服務(wù)器端執(zhí)行請(qǐng)求,同時(shí)回復(fù)客戶端。它可以在低磁盤空間或者無磁盤空間的機(jī)器上使用,掛載其他服務(wù)器上的空間充當(dāng)自己的空間[6]。它和Linux內(nèi)核中的NFS 網(wǎng)絡(luò)文件系統(tǒng)(Network File System)不同,NFS能夠?qū)崿F(xiàn)通過網(wǎng)絡(luò)掛載各種文件系統(tǒng)并進(jìn)行訪問,但是它只能實(shí)現(xiàn)簡(jiǎn)單對(duì)文件系統(tǒng)內(nèi)的文件進(jìn)行讀寫操作,不能進(jìn)行改變掛載點(diǎn)的分區(qū)格式這種更底層的操作。網(wǎng)絡(luò)塊設(shè)備則可以在客戶端虛擬的塊設(shè)備上創(chuàng)建任何的文件系統(tǒng),從而達(dá)到動(dòng)態(tài)彈性擴(kuò)容、災(zāi)備等目的。

4 驗(yàn)證測(cè)試結(jié)果

本次實(shí)驗(yàn)主要是測(cè)試在存儲(chǔ)容量不足時(shí),通過掛載三個(gè)網(wǎng)絡(luò)塊設(shè)備來實(shí)現(xiàn)動(dòng)態(tài)彈性擴(kuò)容,并且測(cè)試添加新的節(jié)點(diǎn)之后能否正常運(yùn)行以及對(duì)讀寫速率的影響程度。

測(cè)試系統(tǒng)為三臺(tái)Linux客戶端和一臺(tái)Linux服務(wù)器,均運(yùn)行Ubuntu系統(tǒng),內(nèi)核版本都為linux5.5,Linux內(nèi)核中網(wǎng)絡(luò)塊設(shè)備版本為3.8,客戶端已經(jīng)加載網(wǎng)絡(luò)塊設(shè)備內(nèi)核模塊,該實(shí)驗(yàn)是在廣域網(wǎng)全雙工百兆網(wǎng)絡(luò)環(huán)境下進(jìn)行的。測(cè)試結(jié)果如表1所示。

從表1可以看出,通過掛載三個(gè)網(wǎng)絡(luò)塊設(shè)備來實(shí)現(xiàn)動(dòng)態(tài)彈性擴(kuò)容,并且添加新的節(jié)點(diǎn)之后不影響正常運(yùn)行并且對(duì)讀寫速率的影響不大。

5 結(jié)束語

經(jīng)試驗(yàn)證明,Linux內(nèi)核中的網(wǎng)絡(luò)塊設(shè)備能夠很好的運(yùn)用遠(yuǎn)程存儲(chǔ)實(shí)現(xiàn)本地存儲(chǔ)的動(dòng)態(tài)擴(kuò)容,后期還可以掛載多余設(shè)備進(jìn)行災(zāi)備等實(shí)驗(yàn),這樣能很好解決本地存儲(chǔ)空間不足的問題。這給目前海量數(shù)據(jù)存儲(chǔ)提出了一個(gè)新的思路,在提倡降本增效的今天,具有非常重要的意義。網(wǎng)絡(luò)塊設(shè)備還可以和其他的存儲(chǔ)架構(gòu)如Hadoop結(jié)合,在集群的基礎(chǔ)上實(shí)現(xiàn)彈性擴(kuò)容。

參考文獻(xiàn)(References):

[1] 陳莉君,康華.Linux操作系統(tǒng)原理與應(yīng)用[M].清華大學(xué)出版社,2006.

[2] Wikipedia. Network block device.2014,4,http://en.wikipedia.org/wiki/Network_block_device

[3] 馬琦,郭玉東.Linux下網(wǎng)絡(luò)塊設(shè)備的設(shè)計(jì)和實(shí)現(xiàn)[J].微機(jī)發(fā)展.2013.5:12-13,27

[4] 劉玉珍,單丹,連自鋒.Linux下網(wǎng)絡(luò)塊設(shè)備的研究與實(shí)現(xiàn)[J].世界科技研究與發(fā)展.2011.2:265-2

[5] 陳莉君,王森,康華. 日志結(jié)構(gòu)云存儲(chǔ)中緩存的設(shè)計(jì)與實(shí)現(xiàn)[J].西安郵電大學(xué)學(xué)報(bào),2013.18(5):76-80

[6] 韋偉,李冰利,張偉東.云存儲(chǔ)系統(tǒng)中網(wǎng)絡(luò)塊設(shè)備的研究和應(yīng)用[J].計(jì)算機(jī)與數(shù)字工程,2015.12:2243-2246

猜你喜歡
存儲(chǔ)
檔案管理中電子文件的存儲(chǔ)探究
條形碼技術(shù)在涂裝生產(chǎn)中的應(yīng)用
云計(jì)算與虛擬化
結(jié)構(gòu)化電子病歷的設(shè)計(jì)及應(yīng)用
淺敘國(guó)產(chǎn)存儲(chǔ)技術(shù)之發(fā)展
某醫(yī)院數(shù)據(jù)中心虛擬化的設(shè)計(jì)與實(shí)現(xiàn)
煙臺(tái)新型自動(dòng)氣象站數(shù)據(jù)本地存儲(chǔ)的設(shè)計(jì)及實(shí)現(xiàn)
關(guān)于SQL語言及存儲(chǔ)過程
大型機(jī)電設(shè)備出口包裝防護(hù)
基于Hadoop的業(yè)務(wù)過程模型管理方法研究
主站蜘蛛池模板: 国产欧美日韩在线在线不卡视频| 中文字幕欧美日韩| 日本欧美午夜| 青青青国产视频手机| 国产清纯在线一区二区WWW| 欧美一级夜夜爽www| 国产91久久久久久| 国产成人精品午夜视频'| 久久特级毛片| 青草视频免费在线观看| 2021国产精品自产拍在线| 欧美成人区| 很黄的网站在线观看| 热99精品视频| 在线五月婷婷| 日韩毛片免费观看| 亚洲熟妇AV日韩熟妇在线| 99久久无色码中文字幕| 日日噜噜夜夜狠狠视频| 日本一区二区不卡视频| 又黄又湿又爽的视频| 中文天堂在线视频| 亚洲第一天堂无码专区| 中国毛片网| 亚洲一道AV无码午夜福利| 日韩小视频在线播放| 一级成人a做片免费| 日韩精品毛片| 亚洲综合一区国产精品| 成人毛片免费在线观看| 国产综合另类小说色区色噜噜 | 伊人国产无码高清视频| 欧美性爱精品一区二区三区 | 全部无卡免费的毛片在线看| 亚洲av综合网| 亚洲第一视频区| 国产啪在线| 2021亚洲精品不卡a| 亚洲国产日韩一区| 国产电话自拍伊人| 日韩国产无码一区| 欧美一区二区福利视频| 97国产在线播放| 波多野结衣在线一区二区| 日韩人妻少妇一区二区| 亚洲综合一区国产精品| 亚洲欧美不卡视频| 亚洲综合极品香蕉久久网| 国产成人精品在线1区| 国产男女免费视频| 97视频精品全国免费观看| 波多野结衣无码中文字幕在线观看一区二区 | 91综合色区亚洲熟妇p| 一级毛片a女人刺激视频免费| 在线播放精品一区二区啪视频| 欧美亚洲一区二区三区在线| 亚洲综合经典在线一区二区| 911亚洲精品| 成人午夜久久| 韩国福利一区| 欧洲成人在线观看| 亚洲色成人www在线观看| 亚洲日本中文字幕天堂网| 制服丝袜在线视频香蕉| 精品少妇人妻av无码久久| 久久人搡人人玩人妻精品一| 久久青青草原亚洲av无码| 中文无码精品A∨在线观看不卡| 黄色不卡视频| 亚洲中文字幕无码mv| 久草视频中文| 国产成人综合网在线观看| 亚洲中文字幕23页在线| 欧美国产精品拍自| 多人乱p欧美在线观看| 国产噜噜噜| 无码AV高清毛片中国一级毛片| 国产乱人伦精品一区二区| 亚洲Va中文字幕久久一区| 亚洲AV无码久久精品色欲| 中文字幕欧美成人免费| 国产成年无码AⅤ片在线|