Hadoop 的安裝和使用


 Hadoop包括三種安裝模式:

  • 單機模式:只在一台機器上運行,存儲是采用本地文件系統,沒有采用分布式文件系統HDFS;

  • 偽分布式模式:存儲采用分布式文件系統HDFS,但HDFS的名稱節點和數據節點都在同一台機器上;

  • 分布式模式:存儲采用分布式文件系統HDFS,而且,HDFS的名稱節點和數據節點位於不同機器上;

 

Hadoop安裝步驟:

  • 准備Hadoop、Jdk壓縮包
  • 更新軟件包最新列表
  • 安裝SSH
  • 安裝Java並配置環境
  • 安裝Hadoop
  • 運行Hadoop樣例

 

1. 准備Hadoop、Jdk壓縮包

注:binary是編譯好的可以直接使用,source是還沒編譯過的源代碼,需要自行編譯

 

根據推薦下載源下載

 

百度網盤分享:

  Jdk-8u171-linux-x64

  鏈接:https://pan.baidu.com/s/1_lji-tSNTeo_bXTP49HddQ  提取碼:45bw

  Hadoop-3.2.2

  鏈接:https://pan.baidu.com/s/1WlLfa13YeMGYr0ZSeXtkgQ  提取碼:uxq3

 

這里使用hadoop3.2.2版本和jdk1.8版本

 

2. 更新軟件包最新列表

hadoop@zq:~$ sudo apt-get update

 

如果是新增加的hadoop用戶可能沒有sudo權限,報錯:hadoop is not in the sudoers file.  This incident will be reported.

hadoop@zq:~$ exit # 返回管理員賬號 logout zou123@zq:~$ sudo -s # 切換超級管理員 root@zq:~# vim /etc/sudoers # 用Vim編輯 sudoers文件
新增一條語句,hadoop ALL=(ALL) ALL 
:wq! 這是只讀文件,需要強制保存

 

3. 安裝SSH

hadoop@zq:~$ sudo apt-get install openssh-server

 

用本機命令登錄

hadoop@zq:~$ ssh localhost

 

執行該命令后會輸入“yes”,然后按提示輸入密碼,就登錄到本機了

 

exit退出SSH,然后ssh-keygen生成密鑰,並將密鑰加入到授權中

# 若進入目錄失敗,則重新安裝SSH hadoop@zq:~/.ssh$ ls known_hosts # 三個密碼都省略,直接回車 hadoop@zq:~/.ssh$ ssh-keygen -t rsa Generating public/private rsa key pair. Enter file in which to save the key (/home/hadoop/.ssh/id_rsa): Enter passphrase (empty for no passphrase): Enter same passphrase again: # 將id_rsa.pub的內容追加到authoried_keys中 hadoop@zq:~/.ssh$ cat id_rsa.pub >> authorized_keys # 再次登錄本地,無需輸入密碼 hadoop@zq:~/.ssh$ ssh localhost

 

4. 安裝Java並配置環境

# 執行如下命令創建“/usr/lib/jvm”目錄用來存放JDK文件 hadoop@zq:~/.ssh$ cd /usr/lib hadoop@zq:/usr/lib$ sudo mkdir jvm # 將已下載的jdk進行解壓縮 hadoop@zq:~/Downloads$ sudo tar -zxvf jdk-8u171-linux-x64.tar.gz -C /usr/lib/jvm

 

在Hadoop用戶目錄下配置Java運行環境

# 使用Vim打開.bashrc文件,保存 hadoop@zq:~$ vim ~/.bashrc # 在文件的開頭位置,添加如下幾行內容,這里jdk目錄名為 jdk1.8.0_171 export JAVA_HOME=/usr/lib/jvm/jdk1.8.0_171 export JRE_HOME=${JAVA_HOME}/jre export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib export PATH=${JAVA_HOME}/bin:$PATH # 繼續執行如下命令讓.bashrc文件的配置立即生效 hadoop@zq:~$ source ~/.bashrc # 查看Java版本,驗證是否安裝成功 hadoop@zq:~$ java -version

 

5. 安裝Hadoop

# 解壓Hadoop壓縮文件到usr/local hadoop@zq:~/Downloads$ sudo tar -zxvf hadoop-3.2.2.tar.gz -C /usr/local # 給hadoop-3.2.2文件改名為hadoop hadoop@zq:/usr/local$ sudo mv hadoop-3.2.2 hadoop # 修改文件權限 hadoop@zq:/usr/local$ sudo chown -R hadoop ./hadoop hadoop@zq:/usr/local$ cd hadoop # 查看hadoop版本,驗證是否安裝成功 hadoop@zq:/usr/local/hadoop$ bin/hadoop version

 

6. 運行Hadoop樣例

# Hadoop附帶了豐富的例子,運行如下命令可以查看所有例子:
hadoop@zq:/usr/local/hadoop$ cd /usr/local/hadoop
hadoop@zq:/usr/local/hadoop$ ./bin/hadoop jar ./share/hadoop/mapreduce/hadoop-mapreduce-examples-3.1.3.jar

# 運行grep例子
hadoop@zq:/usr/local/hadoop$ cd /usr/local/hadoop

# 創建input文件夾
hadoop@zq:/usr/local/hadoop$ mkdir input

# 拷貝hadoop目錄下所有.xml文件到input文件夾
hadoop@zq:/usr/local/hadoop$ cp ./etc/hadoop/*.xml ./input hadoop@zq:/usr/local/hadoop$ ./bin/hadoop jar ./share/hadoop/mapreduce/hadoop-mapreduce- examples-*.jar grep ./input ./output 'dfs[a-z.]+' # 查看結果 hadoop@zq:/usr/local/hadoop$ cat ./output/* 

 

Hadoop默認模式為非分布式模式(本地模式),無需進行其他配置即可運行,偽分布式、分布式將在后續補充

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM