关于Hadoop的教程

    技术2022-07-10  95

    关于Hadoop的教程

    相关依赖与版本说明

    JDK8 SSH

    Hadoop版本为2.8.5

    官方建议为hadoop新建用户组与用户,方便后续权限控制。

    个人学习可以忽略。 2. Hadoop服务安装 从官网下载压缩包,进行解压,根据需要配置软连接。最终结果如下:

    基于上述软连接,配置当前用户的.bashrc文件或者/etc/profile #hadoop export HADOOP_HOME= H O M E / h a d o o p / h a d o o p e x p o r t P A T H = HOME/hadoop/hadoop export PATH= HOME/hadoop/hadoopexportPATH=PATH: H A D O O P H O M E / b i n : HADOOP_HOME/bin: HADOOPHOME/bin:HADOOP_HOME/sbin

    配置完成后记得source /etc/profile 使其生效。

    生效后在任何地方执行: hadoop version

    如果成功就说明下载的hadoop是可用的。

    接下来通过修改hadoop配置达到单机伪分布式[1]启动。 3. Hadoop伪分布式配置 Hadoop 的配置文件位于 */hadoop/etc/hadoop/中

    伪分布式需要修改2个配置文件 core-site.xml 和 hdfs-site.xml

    core-site

    fs.defaultFS hdfs://localhost:9000 hadoop.tmp.dir file:/home/edwin/hadoop/hadoop/tmp

    hdfi-site

    dfs.replication 1 dfs.namenode.name.dir file:/home/edwin/hadoop/hadoop/tmp/dfs/name dfs.datanode.data.dir file:/home/edwin/hadoop/hadoop/tmp/dfs/data Hadoop结点初始化 执行: hdfs namenode -format

    看到 “Exitting with status 0” 说明初始化成功。

    启动Hadoop服务 执行 start-dfs.sh

    如果Hadoop安装完后,启动时报Error: JAVA_HOME is not set and could not be found.

    而我们之前已经通过java -version 确定Java已经安装

    且通过export 查看到JAVA_HOME

    那么需要修改hadoop-env.sh,更加明显的声明以此JAVA_HOME: …

    The java implementation to use.

    #export JAVA_HOME=${JAVA_HOME} export JAVA_HOME=/home/edwin/java/jdk …

    声明一下,我这里的jdk是个软连接

    jdk -> /home/edwin/java/jdk1.8.0_191/ 查看java进程,可以看到启动了三个服务:

    需要关闭时执行: stop-dfs.sh

    使用YARN MapReduce是一种编程模型也是一种编程方法和抽象理论

    在2.X中,MapReduce由YARN进行支持。 上述通过 /sbin/start-dfs.sh 启动 Hadoop,仅仅是启动了 MapReduce 环境,我们可以启动YARN ,让 YARN 来负责资源管理与任务调度。 修改配置文件,部分配置文件只有一个template,可以cp一份进行修改。

    mapred-site.xml

    mapreduce.framework.name yarn

    yarn-site.xml

    yarn.nodemanager.aux-services mapreduce_shuffle

    ./sbin/start-dfs.sh # 启动MapReduce ./sbin/start-yarn.sh # 启动YARN ./sbin/mr-jobhistory-daemon.sh start historyserver #开启历史服务器,才能在Web中查看任务运行情况

    伪分布式:在单机上以分离的java进程运行,节点同时扮演NameNode和DataNode,读取的是HDFS中的文件。 ↩

    Processed: 0.027, SQL: 9