版權聲明:本文為部落客原創文章,未經部落客允許不得轉載。 https://blog.csdn.net/qq1010885678/article/details/43447733
首先需要有一台linux的虛拟機,什麼版本的都差不多
這裡以redhat為例
下載下傳hadoop(隻是為了學習使用的是老版本的0.20.2)
網上有很多下載下傳的地方
為伺服器安裝jdk
jdk檔案版本為jdk-7u45-linux-i586.rpm
可以在官網上下載下傳各個版本的linux jdk檔案
使用指令
rpm -ivh jdk-7u45-linux-i586.rpm
進行安裝
安裝完成之後編輯profile檔案配置環境變量
vi /etc/profile
在末尾追加
export JAVA_HOME=/usr/java/jdk1.7.0_45
export PATH=$JAVA_HOME/bin/:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
注意jdk對應的版本号
編輯完成後使用指令
source /etc/profile
儲存配置
之後輸入java -version可以檢視jdk版本資訊
配置ssh免密碼登入
在伺服器上
輸入指令
chmod -R 755 /home/hadoop
mkdir ~/.ssh
ssh-keygen -t rsa
ssh-keygen -t dsa
rsa和dsa分别生成不同加密格式的ssh密鑰,直接一直按Enter鍵儲存在預設的路徑
在節點上配置authorized_keys檔案
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys
将本地的密鑰儲存在authorized_keys
chmod -R 700 ~/.ssh
注意目前你所在的路徑
接下來可以在伺服器上測試ssh是否可以免密碼登入了
例:
ssh localhost date
将會提示
The authenticity of host 'master (10.10.10.100)' can't be established.
RSA key fingerprint is 99:ef:c2:9e:28:e3:b6:83:e2:00:eb:a3:ee:ad:29:d8.
Are you sure you want to continue connecting (yes/no)?
這是因為這台機器上的ssh沒有把master記錄在已知的主機清單中
輸入yes回車即可
(之後的各個節點一樣,輸入yes讓其記住主機,之後就可以免密碼登入)
如果中間出現什麼異常或者錯誤,有可能是權限問題導緻,請百度之
在節點上配置hadoop
将hadoop包放到/home/hadoop目錄下友善操作
進入hadoop目錄下的conf目錄
1.修改hadoop-env.sh檔案
添加
配置jdk的環境變量,注意jdk版本
2.修改core-site.xml檔案
<property>
<name>fs.default.name</name>
<value>hdfs://master:9000</value>
</property>
<name>hadoop.tmp.dir</name>
<value>/home/hadoop/tmp</value>
設定namenode節點的IP和端口
設定hadoop.tmp.dir路徑,預設是/tmp/$username,重新開機就會删除該目錄的檔案,是以這裡給他配置一個自定義的路徑
3.修改hdfs-site.xml檔案
<name>dfs.data.dir</name>
<value>/home/hadoop/hadoop-data</value>
<name>dfs.name.dir</name>
<value>/home/hadoop/hadoop-name</value>
<name>fs.checkpoint.dir</name>
<value>/home/hadoop/hadoop-namesecondary</value>
<name>dfs.replication</name>
<value>3</value>
設定hdfs檔案系統
4.修改mapred-site.xml檔案
<name>mapred.job.tracker</name>
<value>master:9001</value>
設定jobtracker的ip和端口
以上xml檔案的配置都隻是在源檔案的基礎上添加對應的property節點即可
進入hadoop目錄下的bin目錄
hadoop namenode -format
開始格式化namenode
注意看提示格式化是否成功
在輸入指令
start-all.sh
啟動hadoop叢集
啟動完成後
輸入指令jps
可以看到5個java程序
分别是
NameNode
SecondaryNameNode
JobTracker
TaskTracker
DataNode
僞分布式安裝啟動完成