Hadoop快速入門

關於北京哪裡可以開餐飲費發票_北京本地寶發表於2021-02-04

支援平臺 • GNU/Linux是產品開發和執行的平臺。 Hadoop已在有2000個節點的GNU/Linux主機組成的叢集系統上得到驗證。 • Win32平臺是作為開發平臺支援的。由於分散式操作尚未在Win32平臺上充分測試,所以還不作為一個生產平臺被支援。

所需軟體

Linux和Windows所需軟體包括: 1. JavaTM1.5.x,必須安裝,建議選擇Sun公司發行的Java版本。 2. ssh 必須安裝並且保證 sshd一直執行,以便用Hadoop 指令碼管理遠端Hadoop守護程式。

Windows下的附加軟體需求 1. Cygwin - 提供上述軟體之外的shell支援。

安裝軟體

如果你的叢集尚未安裝所需軟體,你得首先安裝它們。

以Ubuntu Linux為例:

$ sudo apt-get install ssh $ sudo apt-get install rsync

在Windows平臺上,如果安裝cygwin時未安裝全部所需軟體,則需啟動cyqwin安裝管理器安裝如下軟體包: •openssh - Net 類

下載

為了獲取Hadoop的發行版,從Apache的某個映象伺服器上下載最近的 穩定發行版。

執行Hadoop叢集的準備工作

解壓所下載的Hadoop發行版。編輯 conf/hadoop-env.sh檔案,至少需要將JAVA_HOME設定為Java安裝根路徑。

嘗試如下命令: $ bin/hadoop 將會顯示hadoop 指令碼的使用文件。

現在你可以用以下三種支援的模式中的一種啟動Hadoop叢集: •單機模式 •偽分散式模式 •完全分散式模式

單機模式的操作方法

預設情況下,Hadoop被配置成以非分散式模式執行的一個獨立Java程式。這對除錯非常有幫助。

下面的例項將已解壓的 conf 目錄拷貝作為輸入,查詢並顯示匹配給定正規表示式的條目。輸出寫入到指定的output目錄。 $ mkdir input $ cp conf/.xml input $ bin/hadoop jar hadoop--examples.jar grep input output 'dfs[a-z.]+'
$ cat output/*

偽分散式模式的操作方法

Hadoop可以在單節點上以所謂的偽分散式模式執行,此時每一個Hadoop守護程式都作為一個獨立的Java程式執行。

配置

使用如下的 conf/hadoop-site.xml:

fs.default.name localhost:9000 mapred.job.tracker localhost:9001 dfs.replication 1

免密碼ssh設定

現在確認能否不輸入口令就用ssh登入localhost: $ ssh localhost

如果不輸入口令就無法用ssh登陸localhost,執行下面的命令: $ ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa $ cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys

執行

格式化一個新的分散式檔案系統: $ bin/hadoop namenode -format

啟動Hadoop守護程式: $ bin/start-all.sh

Hadoop守護程式的日誌寫入到 ${HADOOP_LOG_DIR} 目錄 (預設是 ${HADOOP_HOME}/logs).

瀏覽NameNode和JobTracker的網路介面,它們的地址預設為: • NameNode - http://localhost:50070/ • JobTracker - http://localhost:50030/

將輸入檔案拷貝到分散式檔案系統: $ bin/hadoop fs -put conf input

執行發行版提供的示例程式: $ bin/hadoop jar hadoop-*-examples.jar grep input output 'dfs[a-z.]+'

檢視輸出檔案:

將輸出檔案從分散式檔案系統拷貝到本地檔案系統檢視: $ bin/hadoop fs -get output output $ cat output/*

或者

在分散式檔案系統上檢視輸出檔案: $ bin/hadoop fs -cat output/*

完成全部操作後,停止守護程式: $ bin/stop-all.sh