阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

Ubuntu 14.04下Hadoop 2.6.0单机配置和伪分布式配置

142次阅读
没有评论

共计 5411 个字符,预计需要花费 14 分钟才能阅读完成。

Ubuntu 14.04 下 Hadoop 2.6.0 单机配置和伪分布式配置

需要重新编译的教程:http://www.linuxidc.com/Linux/2015-09/122875.htm

在 Ubuntu 下创建 Hadoop 用户组和用户

Hadoop 的管理员最好就是以后要登录桌面环境运行 eclipse 的用户,否则后面会有拒绝读写的问题出现。当然不是也有办法办法解决。

1. 创建 hadoop 用户组;

sudo addgroup hadoop
2. 创建 hadoop 用户;

sudo adduser -ingroup hadoop hadoop
3. 给 hadoop 用户添加权限,打开 /etc/sudoers 文件;

sudo gedit /etc/sudoers
在 root  ALL=(ALL:ALL)  ALL 下添加 hadoop  ALL=(ALL:ALL)  ALL.

在 Ubuntu 下安装 JDK
具体见:http://blog.csdn.net/ggz631047367/article/details/42366687          //JAVA_HOME=/usr/lib/jvm/jdk1.8.0_25

安装 ssh 服务

sudo apt-get install ssh openssh-server

建立 ssh 无密码登录本机
切换到 hadoop 用户,执行以下命令:

su – hadoopssh 生成密钥有 rsa 和 dsa 两种生成方式,默认情况下采用 rsa 方式。

1. 创建 ssh-key,,这里我们采用 rsa 方式;

ssh-keygen -t rsa -P “”(注:回车后会在~/.ssh/ 下生成两个文件:id_rsa 和 id_rsa.pub 这两个文件是成对出现的)

2. 进入~/.ssh/ 目录下,将 id_rsa.pub 追加到 authorized_keys 授权文件中,开始是没有 authorized_keys 文件的;

cd ~/.ssh
cat id_rsa.pub >> authorized_keys(完成后就可以无密码登录本机了。)
3. 登录 localhost;

ssh localhost

4. 执行退出命令;

exit
安装 hadoop

下载地址:http://apache.fayea.com/hadoop/common/stable/hadoop-2.6.0.tar.gz

1. 把 hadoop 解压到 /usr/local 下:

sudo tar -zxvf hadoop-2.6.0.tar.gz
sudo mv hadoop-2.6.0 /usr/local/hadoop
sudo chmod -R 775 /usr/local/hadoop
sudo chown -R hadoop:hadoop /usr/local/hadoop  // 否则 ssh 会拒绝访问

2. 配置

修改 bashrc 的配置:

sudo gedit ~/.bashrc

在文件末尾添加:

#HADOOP VARIABLES START

export JAVA_HOME=/usr/lib/jvm/jdk1.8.0_25

export HADOOP_INSTALL=/usr/local/hadoop

export PATH=$PATH:$HADOOP_INSTALL/bin

export PATH=$PATH:$HADOOP_INSTALL/sbin

export HADOOP_MAPRED_HOME=$HADOOP_INSTALL

export HADOOP_COMMON_HOME=$HADOOP_INSTALL

export HADOOP_HDFS_HOME=$HADOOP_INSTALL

export YARN_HOME=$HADOOP_INSTALL

export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_INSTALL/lib/native

export HADOOP_OPTS=”-Djava.library.path=$HADOOP_INSTALL/lib”

#HADOOP VARIABLES END
如果不知道 JAVA_HOME 可以通过命令获得:

update-alternatives –config java 目录取到 java 根目录即可。

执行下面命令使改动生效:

source ~/.bashrc
修改 hadoop-env.sh 的配置:

sudo gedit /usr/local/hadoop/etc/hadoop/hadoop-env.sh
找到 JAVA_HOME 改为上面的值。

测试
通过执行 hadoop 自带实例 WordCount 验证是否安装成功

 /usr/local/hadoop 路径下创建 input 文件夹 

mkdir input
cp README.txt input
在 hadoop 目录下执行 WordCount:

bin/hadoop jar share/hadoop/mapreduce/sources/hadoop-mapreduce-examples-2.6.0-sources.jar
org.apache.hadoop.examples.WordCount input output

Hadoop 伪分布式配置

sudo gedit /usr/local/hadoop/etc/hadoop/core-site.xml

<configuration>
    <property>
        <name>hadoop.tmp.dir</name>
        <value>/usr/local/hadoop/tmp</value>
        <description>Abase for other temporary directories.</description>
    </property>
    <property>
        <name>fs.defaultFS</name>
        <value>hdfs://localhost:9000</value>
    </property>
</configuration>
 sudo gedit /usr/local/hadoop/etc/hadoop/mapred-site.xml // 此项不必要

<configuration>
 <property> 
      <name>mapred.job.tracker</name> 
      <value>localhost:9001</value> 
    </property> 
</configuration> sudo gedit /usr/local/hadoop/etc/hadoop/yarn-site.xml

<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>

<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
</configuration>

 sudo gedit /usr/local/hadoop/etc/hadoop/hdfs-site.xml

<configuration>
<property>
        <name>dfs.replication</name>
        <value>1</value>
    </property>
    <property>
        <name>dfs.namenode.name.dir</name>
        <value>file:/usr/local/hadoop/dfs/name</value>
    </property>
    <property>
        <name>dfs.datanode.data.dir</name>
        <value>file:/usr/local/hadoop/dfs/data</value>
    </property>
    <property>                // 这个属性节点是为了防止后面 eclopse 存在拒绝读写设置的
            <name>dfs.permissions</name>
            <value>false</value>
    </property>
 </configuration>
sudo gedit /usr/local/hadoop/etc/hadoop/masters 添加:localhost

sudo gedit /usr/local/hadoop/etc/hadoop/slaves  添加:localhost

关于配置的一点说明:上面只要配置 fs.defaultFS 和 dfs.replication 就可以运行,不过有个说法是如没有配置 hadoop.tmp.dir 参数,此时 Hadoop 默认的使用的临时目录为 /tmp/hadoo-hadoop,而这个目录在每次重启后都会被干掉,必须重新执行 format 才行(未验证),所以伪分布式配置中最好还是设置一下。

配置完成后,首先在 Hadoop 目录下创建所需的临时目录:

cd /usr/local/hadoop
mkdir tmp dfs dfs/name dfs/data

接着初始化文件系统 HDFS。
bin/hdfs namenode -format 成功的话,最后的提示如下,Exitting with status 0 表示成功,Exitting with status 1: 则是出错。

sbin/start-dfs.sh
sbin/start-yarn.sh

Unable to load native-hadoop library for your platform 这个提示, 解决方式:
1、重新编译源码后将新的 lib/native 替换到集群中原来的 lib/native
2、修改 hadoop-env.sh,增加
export HADOOP_OPTS=”-Djava.library.path=$HADOOP_PREFIX/lib:$HADOOP_PREFIX/lib/native”

Namenode information:http://localhost:50070 来查看 Hadoop 的信息。

All Applications:http://http://2xx.81.8x.1xx:8088/,将其中的 2xx.81.8x.1xx 替换为你的实际 IP 地址。

运行例子:

1. 先在 hdfs 上建个文件夹  bin/hdfs dfs -mkdir -p /user/ha1/input

                                  bin/hdfs dfs -mkdir -p /user/ha1/output

2. 上传一些文件:bin/hdfs dfs -put etc/hadoop/  /user/ha1/input  把 etc/hadoop 文件上传到 hdfs 的 /user/ha1/input 中

3. 执行指令

bin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.6.0.jar grep /user/ha1/input/hadoop  /user/ha1/output/temp ‘dfs[a-z.]+’

4. 查看结果

bin/hdfs dfs -cat /user/ha1/output/temp/*

8 dfs.audit.logger
4 dfs.class
3 dfs.server.namenode.
2 dfs.audit.log.maxbackupindex
2 dfs.period
2 dfs.audit.log.maxfilesize
1 dfsmetrics.log
1 dfsadmin
1 dfs.servers
1 dfs.replication
1 dfs.file
1 dfs.datanode.data.dir
1 dfs.namenode.name.dir

Ubuntu14.04 下 Hadoop2.4.1 单机 / 伪分布式安装配置教程  http://www.linuxidc.com/Linux/2015-02/113487.htm

CentOS 安装和配置 Hadoop2.2.0  http://www.linuxidc.com/Linux/2014-01/94685.htm

Ubuntu 13.04 上搭建 Hadoop 环境 http://www.linuxidc.com/Linux/2013-06/86106.htm

Ubuntu 12.10 +Hadoop 1.2.1 版本集群配置 http://www.linuxidc.com/Linux/2013-09/90600.htm

Ubuntu 上搭建 Hadoop 环境(单机模式 + 伪分布模式)http://www.linuxidc.com/Linux/2013-01/77681.htm

Ubuntu 下 Hadoop 环境的配置 http://www.linuxidc.com/Linux/2012-11/74539.htm

单机版搭建 Hadoop 环境图文教程详解 http://www.linuxidc.com/Linux/2012-02/53927.htm

更多 Hadoop 相关信息见Hadoop 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=13

本文永久更新链接地址:http://www.linuxidc.com/Linux/2015-09/122874.htm

正文完
星哥说事-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-01-21发表,共计5411字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中