1基本流程
步骤1:准备硬件(linux操作系统)
步骤2:准备软件安装包,并安装基础软件(主要是JDK)
步骤3:修改配置文件
步骤4:分发hadoop
步骤5:启动服务
步骤6:验证是否启动成功!
2硬件配置要求
1测试环境:
一台pc机或者服务器
建议内存不少于4G(2G也行)---------越高越流畅
2生产环境:
>小于100个节点
建议每台机器配置不少于:
dual quad-core 2.6 Ghz CPU,
24 GB of DDR3 RAM
dual 1 Gb Ethernet NICs
a SAS drive controller ---sas驱动控制器
>大于100个节点
需要提高master节点(resourcemanager/namenode)硬件配置【因为这里是瓶颈所以这里要高一些】,建议参考书籍《Hadoop Operations》第四章
linux测试环境准备
建议使用非root用户安装Hadoop
root用户权限过大,误操作容易造成很大损失-----------------如果是线上环境,直接就被劝退了。
Hadoop的某些功能不允许root用户操作(即hadoop本身也做了限制)-------注解:创建一个hadoop用户,hdfs就创建一个hdfs用户,yarn就创建一个yarn用户
SSH免密码登陆
目的:启动hadoop方便(其实是可以不设置ssh免密码登陆,但需要登陆到各个节点单独启动某个服务,如果设置了master会免密码登陆到各个节点自动启动服务)
只需要设置Master节点到各个slave节点的免密码登陆 ---- 单向的
step1:将安装包hadoop-2.2.0.tar。gz存放到某一个目录下,并解压
step2:修改解压后的/etc/hadoop下的xml配置文件(如果文件不存在,则自己创建)
1 hadoop-env.sh
export JAVA_HOME=/home/dongxicheng/hadoop/jdk1.6.0_45
2 slaves文件修改为以下配置
Yarn001
3 mapred-site.xml
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
4 core-site.xml(其中“YARN001==192.168.2.200”是在/etc/hosts中设置的host,如果未设置,则换为localhost)
<configuration>
<property>
<name>fs.defaultFS</name> --- fs.default.name 等效,只不过是1.x,目前兼容使用。
<value>hdfs://192.168.2.200:9000</value>
<final>true</final>
</property>
<property>
<name>dfs.replication</name>
<value>1</value><!--单机版么-->
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/data/hadoop/hadoop_tmp</value>
</property>
</configuration>
5 yarn-site.xml
<configuration>
<!-- Site specific YARN configuration properties -->
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
</configuration>
step3:启动服务
1 格式化 bin/hadoop namenode -format
2 启动HDFS:sbin/start-dfs.sh (这样会启动secondarynamenode,最好分布启动)
3 启动yarn:sbin/start-yarn.sh
第二种启动方式:(便于启动过程中的派错)
bin/hadoop namenode -format
sbin/hadoop-daemon.sh start namenode
jps 然后产看logs namenode..log 不看out
sbin/hadoop-daemon.sh start datanode
jps data node 或者 localhost:50070
启动yarn(由于yarn不想hdfs那么复杂,容易出错,推荐使用start-yarn.sh 直接启动
sbin/yarn-daemon.sh start resourcemanager
sbin/yarn-daemon.sh start nodemanager
step4:检测是否安装成功
jps 全称:/usr/java/jdk/bin/jps 根据你的jdk位置而不同
2458 SecondaryNameNode ----第二种启动方式不会有这个东东
19386 HQuorumPeer
4471 ResourceManager
2281 NameNode
19603 HRegionServer
19460 HMaster
28667 Jps
或者检测:
http://yarn001:8088
http://yarn001:50070
问题1:采用虚拟机搭建hadoop环境,每次虚拟机重启后,hadoop无法启动成功
解决方案:
在core-site中增加两个配置:
<property>
<name>dfs.namenode.name.dir</name>
<value>/home/dongxicheng/hadoop/dfs/name</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>/home/dongxicheng/hadoop/dfs/data</value>
</property>
其中,各个目录一定是非/tmp下的目录
(默认是/tmp目录,虚拟机重启后都会被删除)