Hadoop偽分散式搭建_劉益長
1.準備Linux環境
1.1 開啟網路,ifconfig指令檢視ip
1.2 修改主機名為自己名字(hadoop)
vim /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=hadoop
1.3修改主機名和IP的對映關係
vim /etc/hosts
192.168.182.128 hadoop
1.4關閉防火牆
#檢視防火牆狀態
service iptables status
#關閉防火牆
service iptables stop
#關閉防火牆開機啟動
chkconfig iptables off
1.5重啟Linux
reboot
安裝自己的JDK前,刪除openJDK:
檢視java安裝版本:java -version
檢視java安裝包:rpm -qa|grep java
刪除java安裝包:rpm -e --nodeps 包名
2.安裝JDK
2.1 filezilla上傳jdk到/opt
2.2 解壓jdk
cd /opt
tar -zxvf jdk-7u76-linux-x64.tar.gz
2.3 將java新增到環境變數中
vim /etc/profile
#在檔案最後新增
export JAVA_HOME=/opt/jdk1.7.0_76
export PATH=$PATH:$JAVA_HOME/bin
#重新整理配置
source /etc/profile
#檢視java的版本
java -version
3.安裝Hadoop
3.1 filezilla上傳hadoop安裝包,配置文件(hadoop2.2.0偽分散式搭建.txt)
3.2解壓hadoop安裝包
#解壓
tar -zxvf hadoop-2.2.0.tar.gz
3.3修改配置檔案(5個) 路徑:/opt/hadoop-2.2.0/etc/hadoop
第一個:hadoop-env.sh
#在27行修改
export JAVA_HOME=/opt/jdk1.7.0_76
第二個:core-site.xml
<configuration>
<!-- 指定HDFS老大(namenode)的通訊地址 -->
<property>
<name>fs.defaultFS</name>
<value>hdfs://localhost:9000</value>
</property>
<!-- 指定hadoop執行時產生檔案的儲存路徑 -->
<property>
<name>hadoop.tmp.dir</name>
<value>/opt/hadoop-2.2.0/tmp</value>
</property>
</configuration>
第三個:hdfs-site.xml
<configuration>
<!-- 設定hdfs副本數量 -->
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
</configuration>
第四個:mapred-site.xml.template 需要重新命名: mv mapred-site.xml.template mapred-site.xml
<configuration>
<!-- 通知框架MR使用YARN -->
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
第五個:yarn-site.xml
<configuration>
<!-- reducer取資料的方式是mapreduce_shuffle -->
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
</configuration>
3.4將hadoop新增到環境變數
vim /etc/profile
export JAVA_HOME=/opt/jdk1.7.0_55
export HADOOP_HOME=/opt/hadoop-2.2.0
export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
source /etc/profile
3.5格式化HDFS(namenode)第一次使用時要格式化
hadoop namenode -format
3.6啟動hadoop
先啟動HDFS
start-dfs.sh
再啟動YARN
start-yarn.sh
3.7驗證是否啟動成功
使用jps命令驗證
27408 NameNode
28218 Jps
27643 SecondaryNameNode
28066 NodeManager
27803 ResourceManager
27512 DataNode
http://192.168.182.128:50070 (HDFS管理介面)
http://192.168.182.128:8088 (MR管理介面)
4.配置ssh免登陸
生成ssh免登陸金鑰
cd ~,進入到我的home目錄
cd .ssh/
ssh-keygen -t rsa (四個回車)
執行完這個命令後,會生成兩個檔案id_rsa(私鑰)、id_rsa.pub(公鑰)
將公鑰拷貝到要免登陸的機器上
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
或
ssh-copy-id -i localhost