hadoop安装版本:2.7.1
jdk版本:jdk1.7.80-x64
1.linux操作
a)设置网络
网络重启:service network restart
ip地址查看:ifconfig
b)防火墙操作
关闭防火墙:service iptables stop
防火墙状态查看:service iptables status
关闭防火墙的自动运行:chkconfig iptables off
验证防火墙自动运行是否关闭:chkconfig --list | grep iptables
c)设置主机名
hostname + 主机名称如hadoop0
vi /etc/sysconfig/network
d)ip与hostname绑定
vi /etc/hosts
验证是否绑定:ping hostname如hadoop0
e)设置ssh免密码登录
ssh-keygen -t rsa
cp ~/.ssh/id_rsa.pub ~/.ssh/authorized_keys
验证:ssh hostname如hadoop0
2.安装JDK
a)cd /usr/local
b)chmod u+x jdk-*.bin
c)./jdk-*.bin
d)mv jdk-* jdk
e)vi /etc/profile 添加内容
export JAVA_HOME=/usr/local/jdk
export PATH=.:$JAVA_HOME/bin:$PATH
f)source /etc/profile
验证:java -version
3.安装hadoop(单机版)
a)tar -zxvf hadoop-*.tar.gz
b)mv hadoop-* hadoop
c)vi /etc/profile增加内容
export HADOOP_HOME=/usr/local/hadoop
export PATH=.:$JAVA_HOME/bin:$HADOOP_HOME/bin:$PATH
d)source /etc/profile
e)修改etc/hadoop目录下的配置文件
hadoop-env.sh
export JAVA_HOME=/usr/local/jdk/
core-site.xml
hdfs-site.xml
mapred-site.xml
f)hadoop namenode -format
g)start-all.sh stop-all.sh
验证:1)执行命令jps,查看是否包含5个进程:namenode,secondarynamenode,datanode,nodemanager,resourcemanager
2)浏览器中访问:http://hadoop0:50070
4.安装hadoop(两个集群版)
1)hadoop三个节点:hadoop0,hadoop1,hadoop2
2)各个节点先产生自己的免密码登录文件:参见步骤1.e
3)设置完之后,设置两两节点之间的SSH免密码登录
ssh-copy-id -i hadoop1或hadoop2
scp /root/.ssh/authorized_keys hadoop1:/root/.ssh/
4)将hadoop0中的jdk和hadoop及/etc/profile 复制到hadoop1,hadoop2,hadoop3中
5)配置各个文件
请查看hadoop2集群搭建过程.doc
6)安装zookeeper
1. 在hadoop0的/usr/local目录下,解压缩zk....tar.gz,设置环境变量
export ZOOKEEPER_HOME=/zookeeper/zookeeper
export PATH=.:$ZOOKEEPER_HOME/bin:$PATH
2 .在conf目录下,修改文件 vi zoo_sample.cfg zoo.cfg
3. 编辑该文件,执行vi zoo.cfg
修改dataDir=/usr/local/zk/data
新增server.0=hadoop0:2888:3888
server.1=hadoop1:2888:3888
server.2=hadoop2:2888:3888
4. 创建文件夹mkdir /usr/local/zk/data
5. 在data目录下,创建文件myid,值为0
6. 把zk目录复制到hadoop1和hadoop2中
7. 把hadoop1中相应的myid的值改为1
把hadoop2中相应的myid的值改为2
8. 启动,在三个节点上分别执行命令zkServer.sh start
9. 检验,在三个节点上分别执行命令zkServer.sh status
5.安装hadoop(一个集群版)
修改hdfs-site.xml:把该文件中带cluster2的全部删掉,覆盖hadoop2和hadoop3中,并把hadoop0中的core-site.xml覆盖到hadoop2和hadoop3中
先启动zookeeper和journalnode,然后在hadoop0和hadoop1上:/hadoop/hadoop/bin/hdfs zkfc -formatZK
/hadoop/hadoop/bin/hdfs namenode -format
启动:
将core-site.xml中hadoop.tmp.dir配置的路径下内容全部删除;
hadoop0,hadoop1,hadoop2上
/hadoop/hadoop/sbin/hadoop-daemon.sh start journalnode
zkServer.sh start
hadoop0和hadoop1上
/hadoop/hadoop/bin/hdfs zkfc -formatZK
hadoop0上
/hadoop/hadoop/bin/hdfs namenode -format
格式化完先启动:/hadoop/hadoop/sbin/hadoop-daemon.sh start namenode
hadoop1上
hadoop/hadoop/bin/hdfs namenode -bootstrapStandby
/hadoop/hadoop/sbin/hadoop-daemon.sh start namenode
hadoop0和hadoop1上
/hadoop/hadoop/sbin/hadoop-daemon.sh start zkfc
hadoop1,hadoop2和hadoop3上
/hadoop/hadoop/sbin/hadoop-daemon.sh start datanode
hadoop0上
/hadoop/hadoop/sbin/start-yarn.sh