一.hadoop伪分布安装步骤如下
安装环境:centOS6.5
1.1 设置ip地址
执行命令 service network restart
验证: ifconfig
1.2 设置主机名
执行命令 (1)hostname chaoren
(2)vi /etc/sysconfig/network
1.3 ip与hostname绑定
执行命令 vi /etc/hosts
验证: ping chaoren
1.4 关闭防火墙
执行命令 service iptables stop
验证: service iptables status
1.5 关闭防火墙的自动运行
(11)分别启动namenode、datanode、resourcemanager、nodemanager、jopHistroyServer, 要关闭时直接使用stop
执行命令 chkconfig iptables off
验证: chkconfig --list | grep iptables
1.6 设置ssh免密码登陆
执行命令 (1)执行 ssh-keygen -t rsa 命令后一直按回车即可。
(2)cp ~/.ssh/id_rsa.pub ~/.ssh/authorized_keys 或者用该命名:1:cd /root/.ssh 2:cp id_rsa.pub authorized_keys
验证: ssh chaoren
1.7 安装jdk(JDK到官网下载linux版本)
执行命令 (1)cd /usr/local
(2)chmod u+x jdk-6u24-linux-i586.bin //修改jdk的操作权限
(3)./jdk-6u24-linux-i586.bin //解压jdk文件
(4)mv jdk-1.6.0_24 jdk //给该文件中重命名为jdk
(5)vi /etc/profile 增加内容如下:
export JAVA_HOME=/usr/local/jdk
export PATH=.:$JAVA_HOME/bin:$PATH
(6)source /etc/profile
验证: java -version
1.8 安装hadoop2.6.0
执行命令 (1)tar -zxvf hadoop-1.1.2.tar.gz
(2)mv hadoop-1.1.2 hadoop
(3)vi /etc/profile 增加内容如下:
export JAVA_HOME=/usr/local/jdk
export HADOOP_HOME=/usr/local/hadoop
export PATH=.:$HADOOP_HOME/bin:$JAVA_HOME/bin:$PATH
(4)source /etc/profile
(5) 修改hadoop/etc/hadoop/hadoop-env.sh 文件,
添加内容:JAVA_HOME=/usr/local/jdk
(6) 修改hadoop/etc/hadoop/core-site.xml,添加内容如下:
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://192.168.21.12:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/usr/local/hadoop-2.6.0/tmp</value>
</property>
<property>
<name>fs.trash.interval</name>
<value>1440</value>
</property>
</configuration>
(7) 修改hadoop/etc/hadoop/hdfs-site.xml,添加内容如下: <configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>dfs.permissions</name>
<value>false</value>
</property>
</configuration>
(8) 修改hadoop/etc/hadoop/yarn-site.xml,添加内容如下: <configuration>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
</configuration> (9) 修改hadoop/etc/hadoop/mapred-site.xml,添加内容如下:
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration> (10)格式化namenode,执行命令:hadoop namenode -format
启动namenode命令: sbin/hadoop-daemon.sh start namenode
启动datanode命令:sbin/hadoop-daemon.sh start datanode 启动resourcemanager命令:sbin/yarn-daemon.sh start resourcemanager
启动nodemanager命令:sbin/yarn-daemon.sh start nodemanager
启动jopHistroyServer命令:sbin/mr-jobhistory-daemon.sh start historyserver
注意也可以执行:sbin/start-all.sh一次性将以上进程全部启动,不用一个个启动。
验证: (1)执行命令jps 如果看到5个新的java进程,分别是NameNode、DataNode、ResourceManager、NodeManager、JobHistoryServer则安装成功。
(2)在浏览器查看,http://chaoren:50070 http://chaoren:50030
1.9 启动时没有NameNode的可能原因:
(1)没有格式化
(2)环境变量设置错误
(3)ip与hostname绑定失败
1.9.1 启动hadoop namenode -format进行格式化时,若报错找不到jdk的路径,
则要去看看hadoop/etc/hadoop/目录下查看JAVA_HONE路径是否正确
2.0遇到错误是要学会看日志,日志位于hadoop/logs目录下面
二、Hadoop分布式安装
注意:以下两步操作(1和2)都在主节点操作。下面的操作是在上面hadoop伪分布式的基础上进行的。集群中每个节点都要安装JDK。
1、在/etc/hosts中添加集群中的所有节点,ip 主机名的形式,形如下:
192.168.1.103 masternode
192.168.1.104 slavernode1
192.168.1.105 slavernode2
2、配置masters和slavers主从节点
编辑hadoop/etc/hadoop/slaves :在slaves文件中添加如下内容:
slavernode1
slavernode2
3、将主节点上配置好的hadoop 文件 copy 其它的slaves节点上
命令:scp -r hadoop/ root@192.168.1.170:/usr/local/
4、设置所有从节点ssh免密码登录
将Masters节点的公钥中的内容(id_rsa.pub中的内容)复制到所有的slavers节点的authorized_keys(/root/.ssh/authorized_keys)
5、集群启动
在主节点(masters)上启动即可,从节点上不用启动
命令:hadoop/bin/start-all.sh
安装过程中如遇到什么问题,可以提问,本人会尽可能的帮你解决问题。