Hadoop【有与无】【H2】设置单节点群集

目录

1.目的

2.先决条件

2.1.支持平台

2.2.必备软件

2.3.安装软件

3.下载

4.准备启动Hadoop集群

4.1.独立运行(Standalone Operation)

4.2.伪分布式操作(Pseudo-Distributed Operation)

4.2.1.配置

4.2.2.设置无密码SSH

4.2.3.执行

4.2.4.在单个节点上的YARN

4.3.全分布式运行(Fully-Distributed Operation)


1.目的

本文档介绍了如何设置和配置单节点Hadoop安装,以便您可以使用Hadoop MapReduce和Hadoop分布式文件系统(HDFS)快速执行简单的操作。

2.先决条件

2.1.支持平台

  • 支持GNU / Linux作为开发和生产平台。 Hadoop在具有2000个节点的GNU / Linux集群上可以正常运行,已经得到证明。
  • Windows也是受支持的平台,但是以下步骤仅适用于Linux。 要在Windows上设置Hadoop,请参见 wiki page

2.2.必备软件

Linux所需的软件包括:

  1. 必须安装Java™。HadoopJavaVersions中描述了推荐的Java版本。
  2. 如果要使用可选的启动和停止脚本,则必须安装ssh且sshd必须正在运行以使用管理远程Hadoop守护程序的Hadoop脚本。 另外,建议也安装pdsh以便更好地进行ssh资源管理。

2.3.安装软件

如果您的群集没有必需的软件,则需要安装它。

例如在Ubuntu Linux上:

$ sudo apt-get install ssh
$ sudo apt-get install pdsh

3.下载

要获得Hadoop发行版,请从其中一个 Apache Download Mirrors下载最新的稳定版本。

4.准备启动Hadoop集群

将下载的Hadoop发行版的压缩包解压缩。 在发行版中,编辑文件etc/hadoop/hadoop-env.sh以定义一些参数,如下所示:

# set to the root of your Java installation
export JAVA_HOME=/usr/java/latest

然后执行下面的命令:

$ bin/hadoop

这将显示hadoop脚本的用法文档。

现在,您可以以三种支持的模式之一启动Hadoop集群:

4.1.独立运行(Standalone Operation)

默认情况下,Hadoop被配置为在非分布式模式下作为单个Java进程运行。 这对于调试很有用。

下面的示例复制解压缩的conf目录以用作输入,然后查找并显示给定正则表达式的每个匹配项。 输出被写入给定的输出目录。

$ mkdir input
$ cp etc/hadoop/*.xml input
$ bin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-3.2.1.jar grep input output 'dfs[a-z.]+'
$ cat output/*

4.2.伪分布式操作(Pseudo-Distributed Operation)

Hadoop还可在伪分布式模式下在单节点上运行,其中每个Hadoop守护进程均在单独的Java进程中运行; Hadoop还可在伪分布式模式下在单节点上运行,其中每个Hadoop守护程序均在单个节点上运行单独的Java进程。

4.2.1.配置

使用以下内容:

etc/hadoop/core-site.xml:

<configuration>
    <property>
        <name>fs.defaultFS</name>
        <value>hdfs://localhost:9000</value>
    </property>
</configuration>

etc/hadoop/hdfs-site.xml:

<configuration>
    <property>
        <name>dfs.replication</name>
        <value>1</value>
    </property>
</configuration>

4.2.2.设置无密码SSH

现在检查您是否可以在没有密码的情况下SSH到本地主机:

$ ssh localhost

如果没有密码就无法SSH到本地主机,请执行以下命令:

$ ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa
$ cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
$ chmod 0600 ~/.ssh/authorized_keys

4.2.3.执行

以下说明是在本地运行MapReduce作业。 如果要在YARN上执行作业,请参阅“ YARN on Single Node”。

1.格式化文件系统:

$ bin/hdfs namenode -format

2.启动NameNode守护程序和DataNode守护程序:

$ sbin/start-dfs.sh

hadoop守护程序日志输出将写入$HADOOP_LOG_DIR目录(默认为$HADOOP_HOME/logs)。

3.浏览Web界面以查找NameNode; 默认情况下,它在以下位置可用:

  • NameNode - http://localhost:9870/

4.设置执行MapReduce作业所需的HDFS目录:

$ bin/hdfs dfs -mkdir /user
$ bin/hdfs dfs -mkdir /user/<username>

5.将输入文件复制到分布式文件系统中:

$ bin/hdfs dfs -mkdir input
$ bin/hdfs dfs -put etc/hadoop/*.xml input

6.运行提供的一些示例:

$ bin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-3.2.1.jar grep input output 'dfs[a-z.]+'

7.检查输出文件:将输出文件从分布式文件系统复制到本地文件系统并检查它们:

$ bin/hdfs dfs -get output output
$ cat output/*

或者

查看分布式文件系统上的输出文件:

$ bin/hdfs dfs -cat output/*

完成后,使用以下命令停止守护进程:

$ sbin/stop-dfs.sh

4.2.4.在单个节点上的YARN

您可以通过设置一些参数并另外运行ResourceManager守护程序和NodeManager守护程序,以伪分布式模式在YARN上运行MapReduce作业。

以下指令假定上述指令的1.〜4.步骤已经执行。

1.配置参数如下:

etc/hadoop/mapred-site.xml:

<configuration>
    <property>
        <name>mapreduce.framework.name</name>
        <value>yarn</value>
    </property>
    <property>
        <name>mapreduce.application.classpath</name>
        <value>$HADOOP_MAPRED_HOME/share/hadoop/mapreduce/*:$HADOOP_MAPRED_HOME/share/hadoop/mapreduce/lib/*</value>
    </property>
</configuration>

etc/hadoop/yarn-site.xml:

<configuration>
    <property>
        <name>yarn.nodemanager.aux-services</name>
        <value>mapreduce_shuffle</value>
    </property>
    <property>
        <name>yarn.nodemanager.env-whitelist</name>
        <value>JAVA_HOME,HADOOP_COMMON_HOME,HADOOP_HDFS_HOME,HADOOP_CONF_DIR,CLASSPATH_PREPEND_DISTCACHE,HADOOP_YARN_HOME,HADOOP_MAPRED_HOME</value>
    </property>
</configuration>

2.启动ResourceManager守护程序和NodeManager守护程序:

$ sbin/start-yarn.sh

3.浏览Web界面以找到ResourceManager; 默认情况下,它在以下位置可用:

  • ResourceManager - http://localhost:8088/

4.运行MapReduce作业。

5.完成后,使用以下命令停止守护进程:

$ sbin/stop-yarn.sh

4.3.全分布式运行(Fully-Distributed Operation)

有关设置fully-distributed, non-trivial群集的信息,请参阅集群设置

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值