針對我們學校老師的建議:
虛擬機選擇VMware,Linux選擇Ubuntu 18.04版本,hadoop 3
VMware是一款優秀的虛擬機平台,我們要在VMware里安裝Linux虛擬機(也就是Ubuntu),然后在Ubuntu里面配置hadoop偽分布式。
本文章中配置hadoop偽分布式的部分是對林子雨老師的hadoop偽分布式配置照抄並做了簡化,林子雨老師寫的遠比我詳細,如果之前學習了Linux建議移步看看林子雨老師的教程。
鏈接:Hadoop3.1.3安裝教程_單機/偽分布式配置_Hadoop3.1.3/Ubuntu18.04(16.04)_廈大數據庫實驗室博客 (xmu.edu.cn)
一、安裝VMware
Download VMware Workstation Pro 鏈接擺出來了。
如果你是Windows系統就點這個。
下載好以后安裝,可以一直【下一步】,改個別的盤路徑,最后選擇輸入許可證
網上搜VMware workstation pro 密鑰隨便復制一個進去即可。
這里隨便提供一個:ZF71R-DMX85-08DQY-8YMNC-PPHV8
二、安裝Ubuntu
首先去下載Ubuntu系統映像,鏈接放這里了 Ubuntu Releases
這個是Ubuntu的系統鏡像,iso 文件,下載之后不要解壓,后面直接用VMware安裝。
選一個磁盤,新建一個文件夾,重命名為Ubuntu,將剛剛下載的 iso 文件放進去。
方式一:
密碼建議簡單點,我設置的是 123456
之后都下一步。
方式二:
完成后打開VMware workstation player
把剛剛下載的 iso文件選進去,下一步。
下一步,把位置改到別的盤
然后一直下一步就好。
三、Hadoop偽分布式配置
1.創建hadoop用戶
首先按 ctrl+alt+t 打開終端窗口
情況一:如果你的用戶名不叫hadoop,則用這條命令創建名字為hadoop的新用戶,並設置默認shell為/bin/bash:
sudo useradd -m hadoop -s /bin/bash
命令解讀:
sudo:以管理員權限執行命令,如果報錯權限不夠(Permission denied) 可以在命令前面加sudo提高權限。
useradd:-m 自動創建用戶的家目錄。
-s 指定用戶登入后所使用的shell。
之后是設置密碼,按提示輸入兩次密碼:
sudo passwd hadoop
之后注銷(點擊屏幕右上角的齒輪,選擇注銷/log out),選擇hadoop用戶輸入密碼進入。
情況二:如果你的用戶名已經叫hadoop了,我們不需要再創建新的用戶,只需要修改默認的shell為 /bin/bash,我們可以用 chsh 命令修改:
chsh
直接輸入chsh,之后輸入密碼(盲打,屏幕不顯示),之后輸入 /bin/bash 回車。
為hadoop設置管理員權限:
sudo adduser hadoop sudo
更新apt
sudo apt-get update
【此步需要聯網,若出現下圖情況,要輸入 sudo pkill -9 apt 殺掉安裝進程。】
安裝vim:
sudo apt-get install vim
2.安裝SSH、配置SSH無密碼登陸
安裝 SSH server:
sudo apt-get install openssh-server cd ~/.ssh/
# 會有提示,都按回車就可以,三次回車:
ssh-keygen -t rsa
# 加入授權:
cat ./id_rsa.pub >> ./authorized_keys
驗證是否成功:
ssh localhost
3.安裝Java環境
百度網盤下載jdk
https://pan.baidu.com/s/1lLjW9cmS1tkBHkrqtpkjWw 提取碼:ziyu
如果是在虛擬機以外下載的,要拖到虛擬機里面的Downloads文件夾里。
#創建/usr/lib/jvm目錄用來存放JDK文件:
cd /usr/lib
sudo mkdir jvm
#注意區分大小寫字母,剛才已經通過FTP軟件把JDK安裝包jdk-8u162-linux-x64.tar.gz上傳到該目錄下
#把JDK文件解壓到/usr/lib/jvm目錄下:
sudo tar -zxvf ~/Downloads/jdk-8u162-linux-x64.tar.gz -C /usr/lib/jvm
#進入主目錄編輯環境變量文件:
vi ~/.bashrc
復制下面四行
export JAVA_HOME=/usr/lib/jvm/jdk1.8.0_162
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH
把上面的四行粘貼到文件最開頭,之后保存退出。
下面使用vi編輯時的具體步驟(會的話可以跳過):
如果中途按錯鍵了輸入了錯誤的信息,可以按ESC進入命令模式按u (撤銷)
或者輸入 :q! (不保存強制退出)輸入vi ~/.bashrc 重新進入編輯。
用vi ~/.bashrc回車之后按a 進入插入模式( ---INSERT----)
將光標移至最開頭(方向鍵↑↓←→)回車空出幾個空行
之后回去復制那四行,右鍵粘貼(paste)
之后按ESC退出INSERT模式,之后直接輸入 :wq (保存退出) 回車,完成。
使配置文件生效:
source ~/.bashrc
驗證java環境:
java -version
出現這個說明安裝成功。
4.安裝 Hadoop3.1.3
下載hadoop-3.1.3.tar.gz
https://pan.baidu.com/s/1gbmPBXrJDCxwqPGkfvX5Xg 提取碼:lnwl
如果是在虛擬機以外下載的,要拖到虛擬機里面的Downloads文件夾里。
# 解壓到/usr/local中:
sudo tar -zxf ~/Downloads/hadoop-3.1.3.tar.gz -C /usr/local
# 將文件夾名改為hadoop:
sudo mv /usr/local/hadoop-3.1.3/ /usr/local/hadoop
# 修改文件權限:
sudo chown -R hadoop /usr/local/hadoop
檢查是否可用:
cd /usr/local/hadoop
./bin/hadoop version
5.Hadoop偽分布式配置
#編輯配置文件core-site.xml
cd /usr/local/hadoop
sudo gedit ./etc/hadoop/core-site.xml
如果打不開則點擊文件手動進入computer/usr/local/hadoop/etc/hadoop/
找到core-site.xml(不能直接打開)右鍵Edit進行編輯。
將下面的內容復制進去,修改內容為下圖:
<configuration>
<property>
<name>hadoop.tmp.dir</name>
<value>file:/usr/local/hadoop/tmp</value>
<description>Abase for other temporary directories.</description>
</property>
<property>
<name>fs.defaultFS</name>
<value>hdfs://localhost:9000</value>
</property>
</configuration>
ctrl + S保存,關閉。
同樣的方法配置hdfs-site.xml :
sudo gedit ./etc/hadoop/hdfs-site.xml
如果打不開按上面方法一樣手動操作。
復制下面內容到文件,修改內容為下圖:
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>file:/usr/local/hadoop/tmp/dfs/name</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>file:/usr/local/hadoop/tmp/dfs/data</value>
</property>
</configuration>
Ctrl + S 保存,關閉。
執行 NameNode 的格式化:
cd /usr/local/hadoop
./bin/hdfs namenode -format
成功的話最后幾行是這樣的:
#start-dfs.sh是個完整的可執行文件:
./sbin/start-dfs.sh
驗證是否成功:
jps
也可以關掉所有Node:
./sbin/stop-dfs.sh