HDFS用戶指南(Hdfs-user-guide)0.21-中文版_第1頁
HDFS用戶指南(Hdfs-user-guide)0.21-中文版_第2頁
HDFS用戶指南(Hdfs-user-guide)0.21-中文版_第3頁
HDFS用戶指南(Hdfs-user-guide)0.21-中文版_第4頁
HDFS用戶指南(Hdfs-user-guide)0.21-中文版_第5頁
已閱讀5頁,還剩3頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

英文原版下載地址(/hdfs/docs/r0.21.0/hdfs_user_guide.html)HDFS用戶指南翻譯:姚明(QQ:380740825;MSN/MAIL:yymmiinngg@163.com),歡迎糾錯并提出好的翻譯建議HDFS用戶指南(HDFSUsersGuide)目錄HYPERLINK1 目的 2HYPERLINK2 概述 2HYPERLINK3 前提 3HYPERLINK4 Web界面 3HYPERLINK5 Shell命令 3HYPERLINK5.1 分布式文件系統(tǒng)管理命令(DFSAdminCommand) 3HYPERLINK6 SecondaryNameNode 4HYPERLINK7 CheckPointNode 4HYPERLINK8 BackupNode 5HYPERLINK9 導(dǎo)入Checkpoint(ImportCheckpoint) 6HYPERLINK10 重新權(quán)衡(Rebalancer) 6HYPERLINK11 機架感知(RackAwareness) 7HYPERLINK12 安全模式(Safemode) 7HYPERLINK13 文件診斷(fsck) 7HYPERLINK14 升級和回滾(UpgradeandRollback) 7HYPERLINK15 文件權(quán)限和安全(FilePermissionsandSecurity) 8HYPERLINK16 可擴展性(Scalability) 8HYPERLINK17 相關(guān)文件(RelatedDocumentation) 8

目的此文檔是用戶使用Hadoop集群或普通單機分布式文件存儲系統(tǒng)(HDFS)開展工作的起點,盡管HDFS被設(shè)計成適應(yīng)于許多環(huán)境,有用的HDFS知識能大大幫助我們優(yōu)化配置及診斷具體集群的問題。概述HDFS是Hadoop應(yīng)用使用的主要分布式存儲器,HDFS集群主要由管理文件系統(tǒng)元數(shù)據(jù)的NameNode(名稱節(jié)點)和存儲實際數(shù)據(jù)的DataNode(數(shù)據(jù)節(jié)點)組成。HDFS架構(gòu)指南詳細途述了HDFS。這個用戶指南主要針對活動和管理的HDFS集群用戶。HDFS架構(gòu)圖描述了NameNode、DataNode和客戶端基本的相互作用。客戶端通過NameNode取得文件的元數(shù)據(jù)和修改(狀態(tài)或記錄)然后實際執(zhí)行I/O操作直接使用DataNode。以下列出一些可能是許多用戶感興趣的特性。Hadoop包括HDFS是比較合適的使用(低要求)硬件支撐的分布式存儲和分布式處理系統(tǒng)。它允許故障、可升級并非常易于擴展。MapReduce(映射化簡),眾所周知的簡單并適用的大型分布式應(yīng)用,是Hadoop的主要部分。HDFS在默認配置上擁有高可配性較好的適用于多數(shù)設(shè)備。多數(shù)情況下只需要為大型集群設(shè)定配置。Hadoop由JAVA語言編寫而成并支持所有主流平臺。Hadoop支持“類Shell”命令與HDFS直接交互。NameNode和DataNode構(gòu)建了Web服務(wù)為查看集群的狀態(tài)提供便利。新的特性和更改都有規(guī)律地遵行HDFS。以下是HDFS有用特性列表:文件權(quán)限和安全。機架感知(Rackawareness):在安排任務(wù)和分配存儲空間時考慮到節(jié)點的物理位置。安全模式(Safemode):運維的管理模式。文件診斷(FSCK):文件系統(tǒng)的診斷功能,用來查找丟失的文件或塊。重新權(quán)衡(Rebalancer):用以平衡數(shù)據(jù)不均衡分布在DataNode時使用的工具。升級和回滾:軟件升級后因為某些未知的問題有可能需要回滾到HDFS在升級之前的狀態(tài)。SecondaryNameNode【不推薦的】:定期生成Namespace的Checkpoint,并幫助NameNode上的包函HDFS修改日志的文件維持在指定大小以內(nèi)。因為已經(jīng)不推薦使用了,可用Checkpointnode替換。Checkpointnode:定期生成Namespace的Checkpoint,并幫助降低NameNode上的包函HDFS修改記錄的日志文件的大小。填補替換先前的SecondaryNameNode角色。NameNode允許多個Checkpoint節(jié)點同時存在,但必須保證系統(tǒng)沒有注冊BackupNode。BackupNode:Checkpoint節(jié)點的擴展。除了創(chuàng)建Checkpoint它同樣從NameNode接收一個Edits流,并在自己的內(nèi)存中維持一個Namespace的復(fù)本,它總是在同步活動的NameNode的Namespace的狀態(tài)。前提以下文檔描述了如何安裝并創(chuàng)建一個Hadoop集群:單一節(jié)點安裝提供給處女用戶。集群安裝提供給大型分布式集群。余下的文檔假設(shè)用戶能創(chuàng)建并運行至少擁有一個DataNode的HDFS。就本文檔的目的,無論在NameNode還是DataNode都能運行在同一物理機器上。Web界面NameNode和DataNode各自運行一個內(nèi)部Web服務(wù)為了顯示集群的當(dāng)前基本狀態(tài)。使用默認配置,名稱空間的首頁是http://名稱空間節(jié)點:50070/。它列出集群中的DataNode以及集群的基本統(tǒng)計數(shù)據(jù)。Web界面同樣能用于通過瀏覽器來瀏覽文件系統(tǒng)(使用NameNode首頁的“Browsethefilesystem”鏈接)。Shell命令Hadoop包括若干類Shell命令可用于HDFS文件和其它被Hadoop支持的文件系統(tǒng)的交互。運行“bin/hdfsdfs–help”顯示Hadoopshell支持的各種操作(命令),此外,運行“bin/hdfsdfs–help命令名稱”顯示命令的更多詳細幫助。這些命令支持大部分常規(guī)文件系統(tǒng)操作,如復(fù)制文件,更改文件權(quán)限等等,其同樣也支持一些HDFS特定操作,如更改文件的備份參數(shù)。文件系統(tǒng)命令行指南查看更多信息。分布式文件系統(tǒng)管理命令(DFSAdminCommand)“bin/hadoopdfsadmin”命令支持一些HDFS管理相關(guān)的操作。“bin/hadoopdfsadmin-help”命令列出所有當(dāng)前支持的操作,例如:-report:報告HDFS的基本統(tǒng)計數(shù)據(jù)。許多信息同樣存在于NameNode的首頁上。-safemode:雖然通常不是必須的,但是管理員能手動進入或離開安全模式。-finalizeUpgrade:移除集群最后一次升級前的備份。-refreshNodes:更新允許連接到NameNode的主機集合。重新讀取配置文件更新dfs.hosts和dfs.host.exclude的值,并讀取這些文件中的全部主機名稱。每一個沒被定義在dfs.hosts但是定義在dfs.hosts.exclude的對象被退役。每一個定義在dfs.hosts并同時定義在dfs.host.exclude的被標(biāo)記為退役的對象被停止。所有未出現(xiàn)在這兩個列表中的對象都被退役。-printTopology:打印集群的拓撲,顯示通過NameNode查看機架和DataNode的網(wǎng)絡(luò)樹結(jié)構(gòu)。dfsadmin的具體使用方法。SecondaryNameNode提示NameNode已經(jīng)過時,考慮使用CheckpointNode或BackupNode替代之。NameNode以日志的形式將文件系統(tǒng)的修改存儲在本地文件系統(tǒng)的文件中,當(dāng)NameNode啟動時,它從fsimage(映像文件)中讀取HDFS的狀態(tài)信息,并且同時應(yīng)用來源于Edits日志文件中的編輯信息,這時它將寫一個新的HDFS狀態(tài)到fsimage,并使用一個空的Edits文件開始正常操作。由于NameNode合并fsimage和Edits文件只在啟動時進行,在業(yè)務(wù)繁忙的集群上,Edits日志文件可能隨著時間的推移變得非常大,大的Edits文件的另一個副作用是造成下一次重啟NameNode用時過長。SecondaryNameNode定期地合并fsimage和Edits日志文件,并保持Edits日志文件的大小在一個上限值內(nèi),由于它的內(nèi)存需求與NameNode的一致,所以它通常運行在NameNode以外的一臺機器上。集群節(jié)點中的第二NameNode由“conf/masters”文件指定,用“bin/start-dfs.sh”命令啟動之。在SecondaryNameNode上打開Checkpoint進程由2個配置參數(shù)控制。fs.checkpoint.period,默認設(shè)置為1小時,指定連續(xù)2次創(chuàng)建Checkpoint的最大時間間隔。fs.checkpoint.size,默認設(shè)置為64MB,當(dāng)編輯日志大小到達該設(shè)置值,即使創(chuàng)建Checkpoint的最大時間間隔未到也強制促其執(zhí)行創(chuàng)建Checkpoint。SecondaryNameNode以NameNode目錄結(jié)構(gòu)的相同方式存儲最近的Checkpoint,所以,如果有必要,其通常時刻準(zhǔn)備好被NameNode讀取Checkpoint文件的。SecondaryNameNode的具體操作用法。CheckPointNodeNameNode持久保存Namespace使用2個文件:fsimage(最新的Namespace的Checkpoint)和Edits(從Checkpoint創(chuàng)建之后命名空間的修改記錄)。當(dāng)NameNode啟動時,它會合并fsimage和Edits日志以提供最新的文件系統(tǒng)元數(shù)據(jù)視圖。NameNode用新的HDFS狀態(tài)覆蓋fsimage并開始一個新的Edits日志。Checkpoint節(jié)點周期性的創(chuàng)建Namespace的Checkpoint。它從活動的NameNode下載fsimage和Edits日志,在本地合并,并且上傳新的fsimage到活動的NameNode。Checkpoint節(jié)點通常運行在NameNode之外的不同機器上也是因為它對內(nèi)存的要求與NameNode一致。Checkpoint通過“bin/hdfsnamenode-checkpoint”命令在配置文件中指定的節(jié)點上啟動。Checkpoint(或Backup)節(jié)點和其伴隨的Web界面的位置都統(tǒng)一由dfs.backup.address和dfs.backup.http.address配置項設(shè)置。在Checkpoint節(jié)點上打開Checkpoint進程由2個配置參數(shù)控制。fs.checkpoint.period,默認設(shè)置為1小時,指定連續(xù)2次創(chuàng)建Checkpoint的最大時間間隔。fs.checkpoint.size,默認設(shè)置為64MB,當(dāng)Edits日志大小到達該設(shè)置值,即使創(chuàng)建Checkpoint的最大時間間隔未到也強制促其執(zhí)行創(chuàng)建Checkpoint。CheckpointNode以NameNode目錄結(jié)構(gòu)的相同方式存儲最近的CheckpointSecodaryNameNode以NameNode目錄結(jié)構(gòu)的相同方式存儲最近的Checkpoint,其允許時刻準(zhǔn)備好Checkpoint供NameNode讀取。參閱導(dǎo)入Checkpoint(ImportCheckpoint)??梢酝ㄟ^配置文件為集群設(shè)置多個Checkpoint節(jié)點。具體操作請查看Namenode。BackupNodeBackupNode提供與Checkpoint節(jié)點相同的Checkpoint功能,以及維持一個內(nèi)存,即時復(fù)制文件系統(tǒng)的Namespace,總是同步活動的NameNode的狀態(tài)。除了接收文件系統(tǒng)NameNode上的Edits流并持久化到磁盤,BackupNode同時應(yīng)用那些Edits到自己的Namespace內(nèi)存復(fù)本,如此就建立了Namespace的備份。之所以BackupNode不需要像Checkpoint節(jié)點和SecondaryNameNode那樣為了創(chuàng)建Checkpoint而從活動的NameNode下載fsimage和Edits文件,是因為于它早已在內(nèi)在中保存著最新的Namespace狀態(tài)。BackupNode的Checkpoint處理效率很高是因為它只需要保存Namespace到本地fsimage并重設(shè)Edits文件。因為BackupNode維持一個Namespace的復(fù)本在內(nèi)在,所以它的內(nèi)存需求與NameNode相同。NameNode同時只支持1個BackupNode。如果BackupNode正在被使用就不能注冊Checkpoint節(jié)點。將來將支持多個BackupNode同時存在。BackupNode的配置方式與Checkpoint節(jié)點一致,它的啟動命令是“bin/hdfsnamenode-checkpoint”。BackupNode(或CheckpointNode)和其伴隨的Web界面的位置都統(tǒng)一由dfs.backup.address和dfs.backup.http.address配置項設(shè)置。使用BackupNode提供的不持久化存儲運行NameNode的選項,將所有持久化Namespace狀態(tài)的職責(zé)委托給BackupNode,要做到這一點,啟動NameNode使用“-importCheckpoint”選項,除此之外,在NameNode配置中指定不持久化存儲的Edits目錄配置.edits.dir。要了解更多創(chuàng)造BackupNode和Checkpoint節(jié)點的背后動機請查閱HADOOP-4539。具體操作請查看Namenode導(dǎo)入Checkpoint(ImportCheckpoint)如果所有fsimage和Edits文件的其它復(fù)本都丟失,可將最后的Checkpoint導(dǎo)入到NameNode,為了做到這點需要:創(chuàng)建一個由.dir配置項指定的空的目錄。指定Checkpoint目錄的位置到配置項中的fs.checkpoint.dir。啟動NameNode時使用“-importCheckpoint”選項。重新權(quán)衡(Rebalancer)HDFS數(shù)據(jù)可能不總是均衡地分布在DataNode上,一個常見的原因是在已存在(已運行)的集群上增加DataNode,在調(diào)配新數(shù)據(jù)塊期間,NameNode將視參數(shù)而選擇DataNode來接收這些數(shù)據(jù)塊,以下是若干考慮項:在某個寫入塊的節(jié)點上保持一個該塊的復(fù)本的保險做法。將不同的數(shù)據(jù)塊復(fù)本散布在跨機架的節(jié)點上以保證萬一整個機架的數(shù)據(jù)丟失也得能幸存。復(fù)本中的一份通常放置在數(shù)據(jù)塊被寫入節(jié)點的同一機架,以簡少跨機架網(wǎng)絡(luò)I/O。HDFS數(shù)據(jù)均衡的跨節(jié)點的散布在集群內(nèi)。由于多種考慮項之間的競爭,數(shù)據(jù)可能不均勻地跨越放置在DataNode。HDFS給管理員提供了一個工具來分析數(shù)據(jù)的安置情況,并重新平衡數(shù)據(jù)跨越所有節(jié)點。簡單的重新權(quán)衡管理員指南以PDF文件的形式在附件HADOOP-1652。具體操作請查看Balancer。機架感知(RackAwareness)通常大型Hadoop集群都將各節(jié)點安排在機架和網(wǎng)絡(luò)(局域網(wǎng)絡(luò))中,在同一機架比在同一跨機架網(wǎng)絡(luò)更可取。另外,NameNode試著將數(shù)據(jù)塊的復(fù)本放置在多個機架以優(yōu)化容錯機制。Hadoop讓集群管理員通過“work.script”配置項來決定某一節(jié)點屬于某一機架。當(dāng)配置了腳本(“work.script”),每一個節(jié)點都會運行這個腳本以確定自己的機架ID。默認配置假設(shè)所有節(jié)點都處于同一機架。這個特性和配置的進一步描述在附件的PDF文件HADOOP-692。安全模式(Safemode)在NameNode從fsimage和Edits日志中加載文件系統(tǒng)狀態(tài)的啟動時間內(nèi),它會等待DataNode報告它們的數(shù)據(jù)塊,以使其不會過早的開始復(fù)制已經(jīng)在集群中存在足夠多復(fù)本的數(shù)據(jù)塊。在這期間,NameNode處于安全模式。NameNode的安全模式本質(zhì)上是HDFS集群的只讀模式,它不允許任何修改文件系統(tǒng)或數(shù)據(jù)塊。通常NameNode在DataNode上報它們大部分數(shù)據(jù)塊為可用后會自動解除安全模式。如果有必要,能通過“bin/hadoopdfsadmin-savemode”命令將HDFS轉(zhuǎn)入安全模式。NameNode首頁有顯示是否安全模式。更多詳細的描述和配置由setSafeMode()的JAVA文檔提供。文件診斷(fsck)HDFS支持fsck命令來檢查各種沖突,它設(shè)計用來通過若干文件報告問題,例如,丟失數(shù)據(jù)塊或復(fù)本不足。不像傳統(tǒng)本地文件系統(tǒng)的fsck功能,這個命令不會糾正它發(fā)現(xiàn)的錯誤。NameNode通常能自動糾正大部份可糾正的錯誤。默認情況下fsck忽略打開文件但在報告期間提供一個選項來選擇文件。HDFS的fsck命令不是Hadoop的shell命令,可以通過“bin/hadoopfsck”運行。更多命令用法請參考fsck。fsck能運行在整個文件系統(tǒng)或文件子集上。升級和回滾(UpgradeandRollback)當(dāng)一個已存在(已運行)的Hadoop升級時,正如任何軟件的升級,它也許存在新的故障或不兼容的更新影響現(xiàn)有應(yīng)用,并且沒有被早點發(fā)現(xiàn)。任何不正常的HDFS安裝都不會因為某一選項而丟失任何數(shù)據(jù),更不用說從新重啟HDFS。HDFS允許管理員回到Hadoop的先前版本并回滾集群的狀態(tài)到升級之前。HDFS升級的更多詳細描述在HadoopUpgrade維基頁面。HDFS能擁有一次一個這樣的備份。在升級之前,管理員需要使用“bin/hadoopdfsadmin-finalizeUpgrade”命令刪除已經(jīng)存在的備份。下面簡單描述典型的升級過程:升級Hadoop軟件之前,確定是否有一個現(xiàn)有的最終備份,“dfsadmin–upgradeProgressstatus”能告訴你是否需要備份。停止集群并分部新版本的Hadoop。使用“-upgrade”選項(“bin/start-dfs.sh–upgrade”)啟動新版本。大部分時間,集群工作良好,一旦你認為新的HDFS運作良好(可能操作后的幾天),完成升級。請注意,直到升級前刪除的文件確實釋放了DataNode的空間,這時集群升級結(jié)束。如果有需要回退到升級前版本的需求。停止集群并分發(fā)早期版本的Hadoop。使用回滾指令啟動集群(“bin/start-dfs.h-rollback”)。文件權(quán)限和安全(FilePermissionsand

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論