Hadoop集群安装

Hadoop集群安装

1、简介

Hadoop是一个分布式系统基础架构。

Hadoop的框架核心设计是HDFS和MapReduce。HDFS为海量的数据提供了存储,则MapReduce为海量的数据提供了计算。

2、核心架构

MapReduce引擎,该引擎是由JobTrackers和TaskTrackers组成

        

HDFS就想一个传统的分级文件系统。可以创建、删除、移动或重命名文件等,但是HDFS是基于一组特定的节点构建,这是由它自身的特点决定的。这些节点包括:

NameNode(仅一个),它在HDFS内部提供元数据服务。

DataNode,它为HDFS提供存储块。

         由于仅存在一个NameNode,因此这个HDFS的一个缺点(单点失败)。

3、子项目

HDFS:Hadoop分布式文件系统。

MapReduce:并行计算框架。

Hbase:NoSQL列数据库。

Hive:数据仓库工具。

Zookeeper:分布式锁设施。

Avro:新的数据序列化格式和传输工具,将逐步取代Hadoop原有的IPC机制。

Pig:大数据分析平台,为用户提供多接口。

Ambari:Hadoop管理工具,为用户提供多种接口。

Sqoop:于在hadoop与传统的数据库间进行数据传递。

4、Hadoop的三种运行模式

      单机模式

单机模式是Hadoop的默认模式

 

     因为不需要与其他节点交互,单机模式就不使用HDFS,也不加载任何Hadoop的守护进程

      所有程序都是在同一个JVM上执行

      该模式主要用于开发调试MapReduce程序的应用逻辑

   伪分布式

      Hadoop守护进程运行在本地机器上,模拟一个小规模的集群

      Hadoop的每个守护进程都运行在单独的Java进程中

   全分布式

      Hadoop守护进程运行在一个集群上

      如:集群环境中,NameNode 和ResourceManager各运行于一台单独的主机,作为master。而其他的主机做为DataNode和NodeManager,做为slave。

5、Hadoop集群安装

配置SSH免密码登录

         ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa

cat~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys

单模式安装

默认模式

不对配置文件进行修改

使用本地文件系统

Hadoop的守护进行启动

用于对MapReduce程序的逻辑进行调试

 

伪分布式安装

一台主机模拟多台主机

每个守护进程都以java进程的形式

代码调试,检查内存使用情况

HDFS输入输出,以及其他的守护进程交互

修改3个配置文件:core-site.xml、hdfs-site.xml、mapred-site.xml

namered数据格式化

core-site.xml

 fs.defaultFS配置NameNode的URI

     <configuration>

        <property>

            <name>fs.defaultFS</name>

            <value>hdfs://localhost:9000</value>

        </property>

     </configuration>

 hdfs-site.xml

 dfs.replication设置块的复制数量

     <configuration>

        <property>

            <name>dfs.replication</name>

            <value>1</value>

        </property>

     </configuration>

 mapred-site.xml

 mapreduce.framework.name配置MapReduce应用使用Yarn框架   

     <configuration>

        <property>

     <name>mapreduce.framework.name</name>

                <value>yarn</value>

        </property>

     </configuration>

  yarn-site.xml

  yarn.nodemanager.aux-services:为NodeManager配置MapReduce应用的Shuffle服务 

     <configuration>

        <property>

            <name>yarn.nodemanager.aux-services</name>

            <value>mapreduce_shuffle</value>

         </property>

     </configuration>

  将hadoop添加到环境变量

exportJAVA_HOME=/usr/java/jdk1.7.0_65
    exportHADOOP_HOME=/itcast/hadoop-2.7.1
    exportPATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

格式化namenode

hadoop namenode –format

  启动hadoop

         1、先启动HDFS  sbin/start-dfs.sh

       2再启动YARN  sbin/start-yarn.sh

  验证是否启动成功

         使用jps命令验证

http://192.168.20.30:50070(HDFS管理界面)
   http://192.168.20.30:8088(MR管理界面)

 

全分布式安装

多台主机

JDK和Hadoop安装

设置SSH免密码登录

修改3个配置文件:core-site.xml、hdfs-site.xml、mapred-site.xml

namered数据格式化

  1. 配置hosts文件

     vi/etc/hosts

  1. 配置ssh免密码连入
  1. 下载并解压hadoop安装包
  2. 配置namenode,修改site文件
  3. 配置hadoop-env.sh文件
  4. 配置masters和slaves文件
  5. 向各节点复制hadoop
  6. 格式化namenode
  7. 启动hadoop
  8. 用jps检验各后台进程是否成功启动
  9. http://master:8088和http://master:50070
  10.  通过网站查看集群情况

 问题:http://blog.sina.com.cn/s/blog_6fd0fd4b0102v7b9.html

  问题定位:所有namenode目录、所有datanode目录、从节点临时目录

  问题原因:

1)   主节点的namenode clusterID与从节点的datanodeclusterID不一致

2)   多次格式化了namenode跟datanode之后的结果,格式化之后从节点生成了新的ID,造成不一致

  解决办法:

1)  在格式化之前,先把所有的服务停掉(stop-dfs.sh、stop-yarn.sh或者stop-all.sh),确保都停掉了之后,分别到所有节点的namenode目录、datanode目录、临时目录,把以上目录里面的所有内容都删除掉。然后再重新启动就可以了。

2)  

3)  10.查看Map/Reduce是否正常

4)  参考地址:http://jingyan.baidu.com/article/ce09321b7a2e052bff858fd9.html

 

常用的端口配置

2.1  HDFS端口

 

参数

描述

默认

配置文件

例子值

fs.default.name namenode

namenode RPC交互端口

8020

core-site.xml

hdfs://master:8020/

dfs.http.address 

NameNode web管理端口

50070

hdfs- site.xml

0.0.0.0:50070

dfs.datanode.address

datanode 控制端口

50010 

hdfs -site.xml 

0.0.0.0:50010

dfs.datanode.ipc.address

datanodeRPC服务器地址和端口

50020

hdfs-site.xml

0.0.0.0:50020

dfs.datanode.http.address

datanodeHTTP服务器和端口

50075

hdfs-site.xml 

0.0.0.0:50075

 

2.2  MR端口

参数

描述

默认

配置文件

例子值

mapred.job.tracker

job-tracker交互端口 

8021

mapred-site.xml

hdfs://master:8021/

job

trackerweb管理端口

50030

mapred-site.xml

0.0.0.0:50030

mapred.task.tracker.http.address

task-trackerHTTP端口

50060

mapred-site.xml

0.0.0.0:50060

 

2.3  其它端口

参数

描述

默认

配置文件

例子值

dfs.secondary.http.address

secondary NameNode web管理端口

50090

hdfs-site.xml

0.0.0.0:50090

 

 

 

 

 

 

 

 

 

 

 

            

 

 

 

 

 

 

 

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章