摘要:時至今日,Hadoop已成為最流行的離線數據處理平臺,然而它的集群配置起來并不簡單。如果你學習Hadoop不久,相信下面這45個問題會對你有所幫助。
在工作生活中,有些問題非常簡單,但往往搜索半天也找不到所需的答案,在Hadoop的學習與使用過程中同樣如此。這里為大家分享Hadoop集群設置中經常出現的一些問題,以下為譯文:
1.Hadoop集群可以運行的3個模式?
●單機(本地)模式
●偽分布式模式
●全分布式模式
2.單機(本地)模式中的注意點?
在單機模式(standalone)中不會存在守護進程,所有東西都運行在一個JVM上。這里同樣沒有DFS,使用的是本地文件系統。單機模式適用于開發過程中運行MapReduce程序,這也是最少使用的一個模式。
3.偽分布模式中的注意點?
偽分布式(Pseudo)適用于開發和測試環境,在這個模式中,所有守護進程都在同一臺機器上運行。
4.VM是否可以稱為Pseudo?
不是,兩個事物,同時Pseudo只針對Hadoop。
5.全分布模式又有什么注意點?
全分布模式通常被用于生產環境,這里我們使用N臺主機組成一個hadoop集群,Hadoop守護進程運行在每臺主機之上。這里會存在Namenode運行的主機,Datanode運行的主機,以及task tracker運行的主機。在分布式環境下,主節點和從節點會分開。
6.Hadoop是否遵循UNIX模式?
是的,在UNIX用例下,Hadoop還擁有“conf”目錄。
7.Hadoop安裝在什么目錄下?
Cloudera和Apache使用相同的目錄結構,Hadoop被安裝在cd/usr/lib/hadoop-0.20/。
8.Namenode、Job tracker和task tracker的端口號是?
Namenode,70;Job tracker,30;Task tracker,60。
9.Hadoop的核心配置是什么?
Hadoop的核心配置通過兩個xml文件來完成:1,hadoop-default.xml;2,hadoop-site.xml。這些文件都使用xml格式,因此每個xml中都有一些屬性,包括名稱和值,但是當下這些文件都已不復存在。
10.那當下又該如何配置?
Hadoop現在擁有3個配置文件:1,core-site.xml;2,hdfs-site.xml;3,mapred-site.xml。這些文件都保存在conf/子目錄下。
11.RAM的溢出因子是?
溢出因子(Spill factor)是臨時文件中儲存文件的大小,也就是Hadoop-temp目錄。
12.fs.mapr.working.dir只是單一的目錄?
fs.mapr.working.dir只是一個目錄。
13.hdfs-site.xml的3個主要屬性?
●dfs.name.dir決定的是元數據存儲的路徑以及DFS的存儲方式(磁盤或是遠端)
●dfs.data.dir決定的是數據存儲的路徑
●fs.checkpoint.dir用于第二Namenode
14.如何退出輸入模式?
退出輸入的方式有:1,按ESC;2,鍵入:q(如果你沒有輸入任何當下)或者鍵入:wq(如果你已經輸入當下),并且按下Enter。
15.當你輸入hadoopfsck /造成“connection refused java exception’”時,系統究竟發生了什么?
這意味著Namenode沒有運行在你的VM之上。
16.我們使用Ubuntu及Cloudera,那么我們該去哪里下載Hadoop,或者是默認就與Ubuntu一起安裝?
這個屬于Hadoop的默認配置,你必須從Cloudera或者Edureka的dropbox下載,然后在你的系統上運行。當然,你也可以自己配置,但是你需要一個Linux box,Ubuntu或者是Red Hat。在Cloudera網站或者是Edureka的Dropbox中有安裝步驟。
17.“jps”命令的用處?
這個命令可以檢查Namenode、Datanode、Task Tracker、 Job Tracker是否正常工作。
18.如何重啟Namenode?
●點擊stop-all.sh,再點擊start-all.sh。
●鍵入SUdo hdfs(Enter),su-hdfs (Enter),/etc/init.d/ha(Enter),及/etc/init.d/hadoop-0.20-namenode start(Enter)。
19.Fsck的全名?
全名是:File System Check。
20.如何檢查Namenode是否正常運行?
如果要檢查Namenode是否正常工作,使用命令/etc/init.d/hadoop-0.20-namenode status或者就是簡單的jps。
21.mapred.job.tracker命令的作用?
可以讓你知道哪個節點是Job Tracker。
22./etc /init.d命令的作用是?
/etc /init.d說明了守護進程(服務)的位置或狀態,其實是LINUX特性,和Hadoop關系不大。
23.如何在瀏覽器中查找Namenode?
如果你確實需要在瀏覽器中查找Namenode,你不再需要localhost:8021,Namenode的端口號是50070。
24.如何從SU轉到Cloudera?
從SU轉到Cloudera只需要鍵入exit。
25.啟動和關閉命令會用到哪些文件?
Slaves及Masters。
26.Slaves由什么組成?
Slaves由主機的列表組成,每臺1行,用于說明數據節點。
27.Masters由什么組成?
Masters同樣是主機的列表組成,每臺一行,用于說明第二Namenode服務器。
28.hadoop-env.sh是用于做什么的?
hadoop-env.sh提供了Hadoop中. JAVA_HOME的運行環境。
29.Master文件是否提供了多個入口?
是的你可以擁有多個Master文件接口。
30.hadoop-env.sh文件當下的位置?
hadoop-env.sh現在位于conf。
31.在Hadoop_PID_DIR中,PID代表了什么?
PID代表了“Process ID”。
32./var/hadoop/pids用于做什么?
/var/hadoop/pids用來存儲PID。
33.hadoop-metrics.properties文件的作用是?
hadoop-metrics.properties被用做“Reporting”,控制Hadoop報告,初始狀態是“not to report”。
34.Hadoop需求什么樣的網絡?
Hadoop核心使用Shell(SSH)來驅動從節點上的服務器進程,并在主節點和從節點之間使用password-less SSH連接。
35.全分布式環境下為什么需求password-less SSH?
這主要因為集群中通信過于頻繁,Job Tracker需要盡可能快的給Task Tracker發布任務。
36.這會導致安全問題嗎?
完全不用擔心。Hadoop集群是完全隔離的,通常情況下無法從互聯網進行操作。與眾不同的配置,因此我們完全不需要在意這種級別的安全漏洞,比如說通過互聯網侵入等等。Hadoop為機器之間的連接提供了一個相對安全的方式。
37.SSH工作的端口號是?
SSH工作的端口號是NO.22,當然可以通過它來配置,22是默認的端口號。
38.SSH中的注意點還包括?
SSH只是個安全的shell通信,可以把它當做NO.22上的一種協議,只需要配置一個密碼就可以安全的訪問。
39.為什么SSH本地主機需要密碼?
在SSH中使用密碼主要是增加安全性,在某些情況下也根本不會設置密碼通信。
40.如果在SSH中添加key,是否還需要設置密碼?
是的,即使在SSH中添加了key,還是需要設置密碼。
41.假如Namenode中沒有數據會怎么樣?
沒有數據的Namenode就不能稱之為Namen……ode,通常情況下,Namenode肯定會有數據。
42.當Job Tracker宕掉時,Namenode會發生什么?
當Job Tracker失敗時,集群仍然可以正常工作,只要Namenode沒問題。
43.是客戶端還是Namenode決定輸入的分片?
這并不是客戶端決定的,在配置文件中以及決定分片細則。
44.是否可以自行搭建Hadoop集群?
是的,只要對Hadoop環境足夠熟悉,你完全可以這么做。
45.是否可以在Windows上運行Hadoop?
你最好不要這么做,Red Hat Linux或者是Ubuntu才是Hadoop的最佳操作系統。在Hadoop安裝中,Windows通常不會被使用,因為會出現各種各樣的問題。因此,Windows絕對不是Hadoop的推薦系統。
碼字不易,如果您覺得文章寫得不錯,
請您 1.關注作者~ 您的關注是我寫作的最大動力
2.私信我“大數據”
我將與您分享一套最新的大數據學習資源和全套開發工具
版權聲明:本文內容由互聯網用戶自發貢獻,該文觀點僅代表作者本人。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如發現本站有涉嫌抄襲侵權/違法違規的內容, 請發送郵件至 舉報,一經查實,本站將立刻刪除。