當(dāng)前位置:首頁 > 物聯(lián)網(wǎng) > 《物聯(lián)網(wǎng)技術(shù)》雜志
[導(dǎo)讀]摘要:介紹了一套基于云計(jì)算(cloudcomputing)技術(shù)的數(shù)據(jù)應(yīng)用平臺系統(tǒng)設(shè)計(jì)方案。該系統(tǒng)由多組服務(wù)器集群組成,可提供數(shù)據(jù)存儲、備份和并行運(yùn)算服務(wù)。并可釆用虛擬化應(yīng)用端與分布式(Hadoop)技術(shù)相結(jié)合的方式為用戶提供高容量和異構(gòu)應(yīng)用存儲系統(tǒng),以便結(jié)合iSCSI協(xié)議在硬件層獲得更靈活的部署。

引言

通過FreeBSD系統(tǒng)搭建開源的Hadoop存儲應(yīng)用基礎(chǔ),依托在服務(wù)器虛擬化(VMware)的平臺上進(jìn)行運(yùn)行,這樣能夠擁有更快、更穩(wěn)定、更安全的硬件保障,使用iSCSI技術(shù),盡可能降低存儲部署成本。本系統(tǒng)利用VMware虛擬化平臺將服務(wù)器硬件存儲資源進(jìn)行整合,通過建立Lun將服務(wù)器的磁盤陣列進(jìn)行劃分,組成多個(gè)磁盤邏輯,然后通過在Lun上安裝FreeBSD操作系統(tǒng)及搭建iSCSI服務(wù)器端,使得存儲硬件資源能夠靈活地應(yīng)用在Hadoop系統(tǒng)中。Hadoop將部署在虛擬化硬件平臺上構(gòu)成一個(gè)分布式的文件系統(tǒng),通過WebDAV協(xié)議建立與客戶端服務(wù)器的應(yīng)用通信。用戶可以通過訪問客戶端服務(wù)器,將文件通過WebDAV以HTTPS方式傳輸?shù)紿adoop存儲集群中保存。

該平臺的設(shè)計(jì)充分利用了虛擬化與分布式技術(shù)的特點(diǎn),采用多層次的模塊化應(yīng)用將整個(gè)存儲系統(tǒng)從硬件架構(gòu)到軟件應(yīng)用方式都變得靈活和易擴(kuò)展,同時(shí)又因?yàn)樘摂M化與分布式技術(shù)本身的安全特性,系統(tǒng)在數(shù)據(jù)安全性上具有先天優(yōu)勢,從而實(shí)現(xiàn)數(shù)據(jù)存儲服務(wù)的低成本部署。

1系統(tǒng)設(shè)計(jì)原理

存儲系統(tǒng)采用底層云存儲技術(shù)與應(yīng)用層iSCSI技術(shù)來為用戶提供跨系統(tǒng)應(yīng)用平臺支持。其工作原理如圖1所示。

基于虛擬化與分布式技術(shù)的存儲系統(tǒng)

圖1    云計(jì)算存儲系統(tǒng)的工作方式

系統(tǒng)首先由多臺數(shù)據(jù)存儲服務(wù)器通過iSCSI網(wǎng)絡(luò)構(gòu)成一個(gè)龐大的數(shù)據(jù)存儲服務(wù)集群,每一臺數(shù)據(jù)服

務(wù)器的配置是相同的。當(dāng)數(shù)據(jù)達(dá)到存儲池飽和狀態(tài)時(shí),可以將同樣配置的服務(wù)器加入到這個(gè)存儲網(wǎng)絡(luò)中,在不改變原有系統(tǒng)運(yùn)行狀態(tài)下實(shí)現(xiàn)擴(kuò)容。

系統(tǒng)采用VMwareESXiServer虛擬系統(tǒng)作為應(yīng)用服務(wù)器集群底層系統(tǒng),各應(yīng)用服務(wù)器系統(tǒng)可在VMware虛擬系統(tǒng)之上建立邏輯上的關(guān)聯(lián)。VMware允許多個(gè)操作系統(tǒng)并行運(yùn)行于一臺高性能服務(wù)器之上和多個(gè)高性能服務(wù)器運(yùn)行同一任務(wù),同時(shí)通過網(wǎng)絡(luò)對操作系統(tǒng)進(jìn)行備份和管理,能夠依據(jù)應(yīng)用服務(wù)使用狀況對操作系統(tǒng)實(shí)施遷移和復(fù)制,從而擴(kuò)大網(wǎng)絡(luò)應(yīng)用處理帶寬。

在VMware層上安裝FreeBSD系統(tǒng)平臺搭建Hadoop分布式存儲系統(tǒng),Hadoop系統(tǒng)能將數(shù)據(jù)同時(shí)分割成許多小塊和備份,通過點(diǎn)播服務(wù)器(Name-Node)存放于不同的數(shù)據(jù)存儲服務(wù)器中。在Hadoop系統(tǒng)中,會有一臺Master,主要負(fù)責(zé)NameNode的工作以及JobTracker的工作。JobTracker的主要職責(zé)就是啟動、跟蹤和調(diào)度各個(gè)Slave的任務(wù)執(zhí)行。還會有多臺Slave,每一臺Slave通常具有DataNode的功能并負(fù)責(zé)TaskTracker的工作。TaskTracker根據(jù)應(yīng)用要求來結(jié)合本地?cái)?shù)據(jù)執(zhí)行Map任務(wù)以及Reduce任務(wù)。

在NameNode上部署WebDAV應(yīng)用,實(shí)現(xiàn)應(yīng)用服務(wù)器對存儲資源的通信,從而讓用戶調(diào)用Hadoop上的數(shù)據(jù)。WebDAV(Web-basedDistributedAuthoringandVersioning)是基于HTTP1.1的一個(gè)通信協(xié)議。它為HTTP1.1添加了一些擴(kuò)展(就是在GET.POST,HEAD等幾個(gè)HTTP標(biāo)準(zhǔn)方法以外添加了一些新的方法),使得應(yīng)用程序可以直接將文件寫到WebServer±,從而替代傳統(tǒng)的FTP傳輸文件模式。

2系統(tǒng)關(guān)健技術(shù)實(shí)現(xiàn)

存儲平臺通過在Hadoop上部署WebDAV,可實(shí)現(xiàn)客戶端(應(yīng)用服務(wù)器)對服務(wù)器端(Hadoop節(jié)點(diǎn)服務(wù)器)的復(fù)制和移動文件,并可進(jìn)行多用戶同時(shí)讀取一個(gè)文件等操作。

實(shí)施步驟(以四臺服務(wù)器為例,結(jié)合局域網(wǎng)內(nèi)DNS服務(wù)器):

第一步:Hadoop環(huán)境搭建

使用Hadoop的用戶,機(jī)器名和IP依次為域名vcl(192.168.1.1),域名vc2(192.168.1.2),域名vc3(192.168.1.3)和域名vc4(192.168.1.4)o這是因?yàn)樗呐_機(jī)器中vc3作為Hadoop的Namenode,其他的作為Datanode。

詳細(xì)環(huán)境配置介紹如下:

Hadoop版本為0.20.2;

JDK版本為1.6.0;

操作系統(tǒng)為FreeBSD8.0(最小化安裝)。

vc3(192.168.1.3)是NameNode(Master),其他三臺作為DateNode(slave).

Hadoop是Java語言編寫的機(jī)群程序,它的安裝是建立在ssh和JDK之上的,所以在配置Hadoop之前首先要對系統(tǒng)進(jìn)行ssh和JDK的安裝與配置。

通過ssh來實(shí)現(xiàn)Hadoop節(jié)點(diǎn)之間用戶的無密碼訪問

在各個(gè)節(jié)點(diǎn)的/etc/hosts文件中添加節(jié)點(diǎn)IP及對應(yīng)機(jī)器名,并在各個(gè)節(jié)點(diǎn)上建立相同用戶名與密碼的賬戶。

修改/etc/hosts文件如下:

TOC \o "1-5" \h \z

修改成功后就可以實(shí)現(xiàn)IP地址與機(jī)器名的對應(yīng)解析。

在各個(gè)節(jié)點(diǎn)建立用戶名為Hadoop,密碼為123456的用戶。

實(shí)現(xiàn)節(jié)點(diǎn)間通過ssh無密碼訪問。

在vc3的/home/hadoop目錄建立.ssh目錄mkdir.ssh//建立.ssh目錄

在/home/hadoop目錄下進(jìn)行ssh配置

ssh-keygen-trsa//生成密匙對

cd/home/hadoop/.ssh

cpid_rsa.pubauthorized_keys

chmodgo-rwxauthorized_keys

〃要正確設(shè)置文件的權(quán)限644(即go-rwx)scp-r/home/hadoop/.sshvcl:/home/hadoop

〃將vc3中的.ssh文件夾內(nèi)容復(fù)制到vc2節(jié)點(diǎn)的相同位置去scp-r/home/hadoop/.sshvc2:/home/hadoop〃同上scp-r/home/hadoop/.sshvc4:/home/hadoop〃同上

測試是否配置成功。

通過ssh+機(jī)器名命令測試能否無密碼訪問其他計(jì)算機(jī),如果無密碼訪問,則配置成功。

例:vcl使用sshvc3是否能無密碼訪問vc3,vc3使用sshvcl是否能無密碼訪問vcl(其他主機(jī)方法類似)?

JDK的安裝

在這里利用ports安裝JDK。在安裝時(shí)要先下載如下幾個(gè)文件:

jdk-l_6_0_16-fcs-bin-b02-jrl-28_may_2008.jar

jdk-l_5_0_16-fcs-src~b02-jrl-28_may_2008.jartzupdater-l_3_12—2009a.zipbsd-jdkl6-patches-9.tar.bz2

diablo-caf£e-£reebsd7-i386-l.6.0_07-b02.tar.bz2

到usr/ports/distfiles/目錄,然后進(jìn)入/usr/ports/java/jdkl6進(jìn)行安裝。

cd/usr/ports/java/jdkl6〃進(jìn)入jdk安裝目錄

makeinstallclean〃安裝jdk

下載設(shè)置環(huán)境變量,修改/etc/profile文件。在該文件中添加如下代碼:

exportJAVA_HOME"/usr/java/jkdl.6.0_12"

exportPATH=”MYMPATH:MYMJAVA_HOME/bin:MYMJAVA_HOME/jre/bin:"

exportCLASSPATH=,,MYMCLASSPATH:MYMJA-VA_HOME/lib:MYMJAVA_HOME/jre/lib"

保存后鍵入命令:

source/etc/profile

使環(huán)境變量設(shè)置生效。

安裝好JDK后可以通過which命令來測試JDK

是否安裝成功:

whichjava

若是第一種方法,則顯示信息如下:

/usr/local/jdkl.6.0/bin/java

若是第二種方法,則顯示信息如下:

/usr/java/jkdl.6.0_12/bin/java

(3)進(jìn)行Hadoop的安裝和配置。

下載hadoop-0.20.2.tar.gz到/home/hadoop目錄,并解壓:

tar-vxzfhadoop-0.20.2.tar.gz

〃解壓hadoop到當(dāng)前目錄

解壓完后進(jìn)入/home/hadoop/hadoop—0.20.2/conf目錄進(jìn)行配置。

cd/home/hadoop/hadoop-0.20.2/conf

修改hadoop-env.sh配置文件如下:

exportJAVA_HOME=/usr/local/jdkl.6.0

修改masters和slaves配置文件如下:

masters文件:

192.168.1.3

slaves文件:

1.1

192.168.1.2

192.168.1.4

修改core-site,xml文件如下:

V?xmlversion=,,1.0"?>

?xml-stylesheettype="text/xsl"href="configuration.xsl"?〉

V!—Putsite-specificpropertyoverridesinthisfile.

->

configuration〉

〈property〉

<name>fs.default.nameV/name>

Vvakie>hdfs://202.113.**.**:9000V/value>V/property〉

〈property〉

<name>hadoop.tmp.dir</name>

value〉/tmp/hadoop/hadoop-MYM{user,name}</value〉

V/property〉

</configuration〉

修改hdfs-site.xml文件如下:

=====line1col0linesfromtop1======

V?xmlversion="1.0"?>

V?xml-stylesheettype="text/xsl"href="configuration.xsl"?>

V!-Putsite-specificpropertyoverridesinthisfile.->

configuration〉

〈property〉

Vname〉dfs.replication</name>

Vvakie>lV/value〉

V/property〉

</configuration〉

修改mapred-site.xml文件如下:

V?xmlversion="1.0"?>

?xml-stylesheettype="text/xsl"href="configuration.xsl"?〉

V!-Putsite-specificpropertyoverridesinthisfile.-

>

configuration〉

property〉

<name>mapred.job.tracker</name>

Vvakie>202.113.88.73:9001V/vakie>

V/property〉

V/configuration〉

配置文件修改完畢后格式化NameNodeC運(yùn)行Hadoop之前必須先進(jìn)行格式化),進(jìn)入/home/ha-doop/hadoop-0.20.2/目錄,命令如下:

./bin/hadoopnamenode-format

格式化完畢后就可以運(yùn)行Hadoop了,命令如下:

./bin/start-all.sh

//在/home/hadoop/hadoop-O.20.2/目錄下運(yùn)行

如果要停止運(yùn)行如下命令:

./bin/stop-all.sh

〃在/home/hadoop/hadoop-O.20.2/目錄下運(yùn)行

到此,Hadoop的配置已經(jīng)完成了。

第二步:WebDAV部署

修改配置

修改hdfs-webdav.war里面的WEB-INF/clas-ses/hadoop-site.xmlo

修改fs.default,name屬性,以確定hdfs-webdav要連接的hadoopNameNodeServerD示例:

〈property〉

Vname>fs.default.nameV/name>Vvalue〉hdfs://192.168.52.129:9000/<C/valued〈description〉namenodeV/description〉

V/property〉

替換hadoop-xxxx-core.jar版本

由于hadoop有自己的rpc遠(yuǎn)程調(diào)用實(shí)現(xiàn),并且各個(gè)版本間可能不兼容(0.17.x與0.18.x之間就不兼容),所以需要將WEB-INF/lib/hadoop-xxxx-core.jar的版本與NameNodeServer的版本一致.現(xiàn)war自帶的是hadoop-0.18.1-core.jar的版本。

部署至tomcat

以上修改完,將war包部署至tomcat或是jboss中,部署在其它服務(wù)器中時(shí)需要tomcat的catalina.jar與tomcat-coyote,jar,拷貝至WEB-INF/lib目錄,因?yàn)楝F(xiàn)在項(xiàng)目是從tomcat的WebdavServlet中修改而來的。

測試是否部署成功

訪問http://localhost:8080/hdfs-webdav

第三步:webdav客戶端訪問

實(shí)現(xiàn)webdav的hdfs可以映射為windows或是linux本地文件夾O

window網(wǎng)上鄰居訪問

打開“網(wǎng)上鄰居”,添加網(wǎng)上鄰居,在“請鍵入網(wǎng)上鄰居的位置”中輸入Web文件夾的URL。

http://localhost:8080/hdfs-webdav

然后按照向?qū)У奶崾纠^續(xù)下一步就可以了。

LinuxmountWebDav為本地文件系統(tǒng)linux下想要mountWebDAVserver為本地文件系統(tǒng),必須要使用davfs2,項(xiàng)目網(wǎng)址為http://dav.sourceforge,net/。

安裝davfs2請使用編譯安裝。

davfs2編譯時(shí)依賴于neon,neon是一個(gè)Web-DAVclientlibrary,neon網(wǎng)址為http://www.webdav.org/neon/o

dsvfs2在mount時(shí)會使用fuse或是coda這兩個(gè)文件系統(tǒng),其中一個(gè)文件系統(tǒng)linux一般都有自帶,davfs2在mount時(shí)會首先嘗試使用fuse,失敗時(shí)再使用coda。

但在CentOs中使用coda時(shí)發(fā)生如下錯(cuò)誤,所以后面安裝fuse,fuse網(wǎng)址為http://fuse,sourceforge.net/□

/sbin/mount,davfs:nofreecodadevicetomount

/sbin/mount,davfs:tryingfusekernelfilesystem

/sbin/mount,davfs:carftopenfusedevice

neon,davfs2,fuse編譯安裝

項(xiàng)目的linux_mount_lib目錄自帶如下三個(gè)包:

運(yùn)行./configure?

運(yùn)行make;

運(yùn)行makeinstallo

groupadddavfs2

useradd-gdavfs2davfs2

mount.dav£shttp;//192.168.

運(yùn)行davfs2的mount命令

[root®datacenter5usr]#

[root®datacenter5usr]#

在mount之前,davfs2需要創(chuàng)建davfs2用戶及用戶組

55.104:8080/hdfs-webdav/data/hdfs

Eroot@datacenter5usr]井

mkdir/data/hdfs

基于虛擬化與分布式技術(shù)的存儲系統(tǒng)

3系統(tǒng)應(yīng)用拓補(bǔ)分析

基于服務(wù)器虛擬化(VMware)系統(tǒng),制作出的云存儲陣列,其中云主機(jī)控制云系統(tǒng)內(nèi)的服務(wù)器集群,進(jìn)行數(shù)據(jù)的寫入與讀出,由云主機(jī)提供的API接口(主要是WebDAV協(xié)議,也可采用其他協(xié)議)進(jìn)行與客戶應(yīng)用服務(wù)器之間的數(shù)據(jù)存儲、數(shù)據(jù)備災(zāi)、數(shù)據(jù)應(yīng)用,這樣能夠盡可能地利用云的效率,如圖2所示。

在圖2中,系統(tǒng)應(yīng)用主要分為存儲服務(wù)與應(yīng)用服務(wù)兩部分。存儲服務(wù)主要以Hadoop系統(tǒng)為主,通過應(yīng)用服務(wù)中的局域網(wǎng)DNS構(gòu)建頭節(jié)點(diǎn)與存儲節(jié)點(diǎn)關(guān)系。WebDAV部署在頭節(jié)點(diǎn)服務(wù)器上,通過建立映射可在Windows或Linux系統(tǒng)上建立本地文件夾,從而實(shí)現(xiàn)為應(yīng)用服務(wù)器提供存儲服務(wù)功能。

4結(jié)論

本系統(tǒng)通過集群應(yīng)用、網(wǎng)格技術(shù)或分布式文件系統(tǒng)等功能,將網(wǎng)絡(luò)中大量各種不同類型的存儲設(shè)備通過應(yīng)用軟件集合起來協(xié)同工作,共同對外提供數(shù)據(jù)存儲和業(yè)務(wù)訪問功能。通過虛擬化技術(shù)將iSCSI與云存儲系統(tǒng)結(jié)合,為大型企業(yè)和機(jī)構(gòu)提供異地?cái)?shù)據(jù)存儲服務(wù),并且通過云存儲系統(tǒng)平臺為企業(yè)提供跨平臺服務(wù)應(yīng)用解決方案,實(shí)現(xiàn)了部署靈活、可擴(kuò)展性和安全性高的特點(diǎn),從而降低了數(shù)據(jù)存儲、應(yīng)用和維護(hù)成本。

20210831_612ddcc055d3d__基于虛擬化與分布式技術(shù)的存儲系統(tǒng)

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運(yùn)營商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術(shù)學(xué)會聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(shù)(集團(tuán))股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉