Hadoop安装(二)——Hadoop安装

Hadoop安装

部署模式

Hadoop部署模式有:

  • 本地模式
  • 伪分布模式
  • 完全分布式模式
  • HA完全分布式模式

区分的依据是NameNode、DataNode、ResourceManager、NodeManager等模块运行在几个JVM进程、几个机器。

模式名称各个模块占用的JVM进程数各个模块运行在几个机器数上
本地模式1个1个
伪分布模式N个1个
完全分布式模式N个N个
HA完全分布式N个N个

1、本地模式

  • 本地模式是最简单的模式,所有模块都运行与一个JVM进程中,使用的本地文件系统,而不是HDFS;
  • 本地模式主要是用于本地开发过程中的运行调试用。
  • 下载hadoop安装包后不用任何设置,默认的就是本地模式。
  • 运行hadoop自带的wordcount例子在本地模式下测试mapreduce,输出文件是在本地。输出目录中有_SUCCESS文件说明JOB运行成功,part-r-00000是输出结果文件。

2、伪分布模式

  • 学习Hadoop一般是在伪分布式模式下进行。
  • 这种模式是在一台机器上各个进程上运行Hadoop的各个模块;
  • 伪分布式的意思是虽然各个模块是在各个进程上分开运行的,但是只是运行在一个操作系统上的,并不是真正的分布式。

3、完全分布式模式

完全分布式模式才是生产环境采用的模式,Hadoop运行在服务器集群上,生产环境一般都会做HA,以实现高可用。

4、HA完全分布式模式

HA是指高可用,为了解决Hadoop单点故障问题,生产环境一般都做HA部署。

下载安装

下载:

http://archive.cloudera.com/cdh5/cdh/5/hadoop-2.6.0-cdh5.13.0.tar.gz

解压:

[hadoop@master bigdater]$ tar -zxvf softs/hadoop-2.6.0-cdh5.13.0.tar.gz

创建数据保存文件夹 hdfs:

[hadoop@master hadoop-2.6.0-cdh5.13.0]$ mkdir hdfs

配置 xxx-env.sh 文件

配置hadoop-env.sh:

  1. 修改JAVA_HOME路径
  2. 修改HADOOP_PID_DIR路径

 配置mapred-env.sh:

  1. 修改HADOOP_MAPRED_PID_DIR路径

 配置yarn-env.sh:

  1. 修改YARN_PID_DIR路径

 

 

配置基本环境变量_core-site.xml文件

1、fs.defaultFS参数配置的是HDFS的地址

<property>

                <name>fs.defaultFS</name>

                <value>hdfs://master.com</value>

                 或 <value>file://master.com </value>

                 或 <value>hdfs://master.com:9000</value>

                 或 <value>hdfs://master.com:8020</value>

</property>

2、hadoop.tmp.dir配置的是Hadoop临时目录

<property>
    <name>hadoop.tmp.dir</name>            
    <value>/home/hadoop/bigdater/hadoop-2.6.0-cdh5.13.0/hdfs/tmp</value>
</property>

提示:

比如:HDFS的NameNode数据默认都存放这个目录下,查看*-default.xml等默认配置文件,就可以看到很多依赖${hadoop.tmp.dir}的配置。

默认的hadoop.tmp.dir是/tmp/hadoop-${user.name},此时有个问题就是:

NameNode会将HDFS的元数据存储在这个/tmp目录下,如果操作系统重启了,系统会清空/tmp目录下的东西,导致NameNode元数据丢失,是个非常严重的问题,所有我们应该修改这个路径。

 

配置基本环境变量_hdfs-site.xml文件

  1. dfs.replication 配置的是HDFS存储时的备份数量,【因为这里是伪分布式环境只有一个节点,所以这里设置为1。】
  2. dfs.namenode.name.dir 存贮在本地的名字节点数据镜象的目录,作为名字节点的冗余备份
  3. dfs.datanode.data.dir 数据节点的块本地存放目录
  4. dfs.permissions.enabled 文件操作时的权限检查标识
  5. dfs.webhdfs.enabled 访问namenode的hdfs使用50070端口,访问datanode的webhdfs使用50075端口。
  • 访问文件、文件夹信息使用namenode的IP和50070端口;
  • 访问文件内容或者进行打开、上传、修改、下载等操作使用datanode的IP和50075端口。
  • 注意:要想不区分端口,直接使用namenode的IP和端口进行所有的webhdfs操作,就需要在所有的datanode上都设置hdfs-site.xml中的dfs.webhdfs.enabled为true。

 

配置基本环境变量_mapred-site.xml文件

  1. 复制mapred模板文件生成一个mapred-site.xml
  2. 添加mapreduce框架模型,默认是local,此处必须设置为yarn

 

配置基本环境变量_yarn-site.xml文件

 配置NodeManager:

  1. yarn.nodemanager.aux-services 配置了yarn的默认混洗方式,选择为mapreduce的默认混洗算法。
  2. yarn.nodemanager.aux-services.mapreduce_shuffle.class

配置ResourceManager

  1. yarn.resourcemanager.hostname 指定了Resourcemanager运行在哪个节点上。

打印mapreduce日志

  1. yarn.log-aggregation-enable默认是false
<property>

        <name>yarn.log-aggregation-enable</name>

        <value>true</value>

</property>

 

 

配置datanode相关变量slaves文件

  1. 存放datanode的列表
  2. 一行一个ip地址即可,此处是伪分布式,只有一台

 

 

配置hadoop相关环境变量

export HADOOP_HOME=/home/hadoop/bigdater/hadoop-2.6.0-cdh5.13.0
export HADOOP_PREFIX=$HADOOP_HOME
export HADOOP_COMMON_HOME=$HADOOP_HOME
export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop
export HADOOP_HDFS_HOME=$HADOOP_HOME
export HADOOP_MAPRED_HOME=$HADOOP_HOME
export HADOOP_YARN_HOME=$HADOOP_HOME
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

注意:[hadoop@master hadoop]$ source ~/.bash_profile 使得配置生效

 

验证

[hadoop@master hadoop]$ hadoop version

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值