因为使用需要,在自己小本上建了四个虚拟机,打算搭建一个1+3的hadoop分布式系统。

环境:hadoop2.7.0+ubuntu14.04 (64位)

首先分别为搭建好的虚拟机的各主机重命名

方法:vi /etc/hostname

例如:ubuntu0 ubuntu1 ubuntu2 ubuntu3

一. 配置hosts文件

通过ifconfig命令查看虚拟机的IP,配置hosts文件

方法:vi /etc/hosts

192.168.XXX.129 ubuntu0

192.168.XXX.138 ubuntu1

192.168.XXX.139 ubuntu2

192.168.XXX.140 ubuntu3

二. 建立hadoop运行账号

创建hadoop用户组:sudo addgroup hadoop

创建hadoop用户:sudo adduser -ingroup hadoop hadoop

为hadoop用户添加权限

方法:sudo vi /etc/sudoers

添加hadoop ALL=(ALL:ALL)ALL

->切换hadoop用户:su hadoop

三. ssh配置(master-slave免密码登录)

1)每个节点分别产生公私密匙(生成目录为.ssh)

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

cd .ssh

cat id_dsa.pub >> authorized_keys

单机测试免密码登录:ssh localhost(或主机名)

退出命令:exit

2)让主节点通过ssh登录子节点

scp hadoop@ubuntu0:~/.ssh/id_dsa.pub ./master_dsa.pub

cat master_dsa.pub >> authorized_keys

在子节点重复上诉操作。

四. 下载并解压hadoop安装包

1安装JAVA环境

sudo apt-get install openjdk-7-jdk

查看安装结果:java -version

2下载hadoop2.7.0

解压:sudo tar xzf hadoop-2.7.0.tar.gz

解压hadoop在/usr/local/hadoop下:

sudo mv hadoop-2.7.0 /usr/local/hadoop

修改权限:sudo chmod 777 /usr/local/hadoop

3配置~/.bashrc

查看java的安装路径:update-alternatives --config java

配置.bashrc文件:vi ~/.bashrc 在末尾添加:

#HADOOP VARIABLES START

export JAVA_HOME=/usr/lib/jvm/java-7-openjdk-i386

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

执行source ~/.bashrc ,使添加的环境变量生效。

4.编辑/usr/local/hadoop/etc/hadoop/hadoop-env.sh

添加

export JAVA_HOME=/usr/lib/jvm/java-7-openjdk-amd64

export HADOOP_HOME=/usr/local/hadoop

export YARN_HOME=/usr/local/hadoop

export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop

export YARN_CONF_DIR=$HADOOP_HOME/etc/hadoop

5.编辑/usr/local/hadoop/etc/hadoop/yarn-env.sh

export YARN_CONF_DIR="${YARN_CONF_DIR:-$HADOOP_YARN_HOME/etc/hadoop}"
export JAVA_HOME=/usr/lib/jvm/java-7-openjdk-amd64

五. 配置namenode,修改site文件(/usr/local/hadoop/etc/hadoop/)

1、配置core-site.xml

<property>

<name>fs.default.name</name>

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

</property>

2、yarn-site.xml

<property>

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

<value>mapreduce_shuffle</value>

</property>

<property>

<name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name>

<value>org.apache.hadoop.mapred.ShuffleHandler</value>

</property>

3、创建mapred-site.xml,

cp mapred-site.xml.template mapred-site.xml

并添加

<property>

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

<value>yarn</value>

</property>

4、配置hdfs-site.xml

cd /usr/local/hadoop/
mkdir hdfs
mkdir hdfs/data
mkdir hdfs/name

编辑打开hdfs-site.xml

<property>

<name>dfs.replication</name>

<value>1</value>

</property>

<property>

<name>dfs.namenode.name.dir</name>

<value>file:/usr/local/hadoop/hdfs/name</value>

</property>

<property>

<name>dfs.datanode.data.dir</name>

<value>file:/usr/local/hadoop/hdfs/data</value>

</property>

六. 配置masters和slaves文件

在两个文件中分别填入适合的主机名

七. 向节点复制hadoop

scp -r ./hadoop ubuntu1:~

scp -r ./hadoop ubuntu2:~ 

scp -r ./hadoop ubuntu3:~

八、格式化namenode

hdfs namenode -format 

注意:上面只要出现“successfully formatted”就表示成功了。

九.启动hadoop

浏览器打开 http://localhost:50070/,会看到hdfs管理页面

浏览器打开http://localhost:8088,会看到hadoop进程管理页面

wordcount执行停止的修改办法:

在yarn-site.xml中添加

<property>
<name>yarn.acl.enable</name>
<value>false</value>
</property>
<property>
<name>yarn.admin.acl</name>
<value>*</value>
</property>
<property>
<name>yarn.log-aggregation-enable</name>
<value>false</value>
</property>
<property>
<name>yarn.resourcemanager.address</name>
<value>ubuntu0:</value>
</property>
<property>
<name>yarn.resourcemanager.scheduler.address</name>
<value>ubuntu0:</value>
</property>
<property>
<name>yarn.resourcemanager.resource-tracker.address</name>
<value>ubuntu0:</value>
</property>
<property>
<name>yarn.resourcemanager.admin.address</name>
<value>ubuntu0:</value>
</property>
<property>
<name>yarn.resourcemanager.webapp.address</name>
<value>ubuntu0:</value>
</property>
<property>
<name>yarn.resourcemanager.hostname</name>
<value>ubuntu0</value>
</property>
</configuration>

运行wordcount

bin/hadoop fs -mkdir /data       新建文件夹data
bin/hadoop fs -put README.txt /data 将文件复制至data文件下 bin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.0.jar wordcount data out 返回hadoop根目录执行命令 bin/hadoop fs -ls /user/hadoop/out 查看out文件下内容 bin/hadoop fs -cat /user/hadoop/out/part-r-00000 查看输出内容 bin/hadoop fs -rm /user/hadoop/out 删除out文件

CMS版测试命令:

sudo -u hdfs hadoop jar /opt/cloudera/parcels/CDH/lib/hadoop-mapreduce/hadoop-mapreduce-examples.jar pi 10 100

hadoop2.7.0分布式系统搭建(ubuntu14.04)的更多相关文章

  1. 搭建ubuntu14.04的hadoop集群【docker容器充当服务器】

    首先弄出来装有hadoop.java.ssh.vim的镜像起名badboyf/hadoop.做镜像有两种方法,一种是用Dockerfile来生成一个镜像,一种是基于ubuntu14.04的基础镜像生成 ...

  2. 搭建ubuntu14.04服务器必备环境

    1.  设置网络 设置网络时,一定要设置好网卡,第一个网卡一定要设置为‘br0’(如下图),设置为其他的上不去网. 修改网络配置文件,命令:sudo gedit /etc/network/interf ...

  3. Hadoop2.6.0在Ubuntu Kylin14.04上的配置

    最近几天在忙参加一个云计算比赛,之前也在Ubuntu上配成功过hadoop,不过是按照书上讲的,一步一步来的.因此,印象不深,对自己的帮助也不大.这次趁着机会,自己练了两遍配置过程,感觉收获比较丰富, ...

  4. 【unp】unix网络编程卷1-->环境搭建(ubuntu14.04)

    学习unp网络编程,树上的例子均存在#include "unp.h",故需要对环境进行配置. 1. 到资源页下载unpv13e 2. 解压并将unpv13e 移动到相应的文件夹下 ...

  5. windows下eclipse连接ubuntu伪分布式hadoop2.6.0

    环境: win10 jdk1.7 hadoop2.6.0 linux虚拟机 Ubuntu14.04 首先把安装在Ubuntu上的hadoop2.6.0.tar.gz复制到windows系统上,解压到任 ...

  6. Caffe+Ubuntu14.04+CUDA7.5 环境搭建(新人向)指南

    序 本文针对想学习使用caffe框架的纯新手,如果文中有错误欢迎大家指出. 由于我在搭建这个环境的时候参考了许多网上的教程,但是没有截图,所以文中图片大多来源于网络. 本文没有安装matlab的步骤, ...

  7. .net core2.0+nginx+Ubuntu14.04【一个小白的初次尝试】

    新的业务来了,需要使用linux环境部署web服务,作为一个C#的懒惰程序员,就这么上了车[狗脸],废话不多说,跟我一样的小白请看,大神请绕路. 站点暂时没有使用Docker部署,为什么呢,因为我还没 ...

  8. hadoop2.6.0高可靠及yarn 高可靠搭建

    以前用hadoop2.2.0只搭建了hadoop的高可用,但在hadoop2.2.0中始终没有完成YARN HA的搭建,直接下载了hadoop最新稳定版本2.6.0完成了YARN HA及HADOOP ...

  9. ubuntu14.04 安装 tensorflow9.0

    ubuntu14.04 安装 tensorflow9.0 文章目录 ubuntu14.04 安装 tensorflow9.0 安装pip(笔者的版本为9.0) 仅使用 CPU 的版本的tensorfl ...

随机推荐

  1. Hadoop集群_VSFTP安装配置

    原作者写的太好了,我这个菜鸟不自觉就转载了,原文链接:http://www.cnblogs.com/xia520pi/archive/2012/05/16/2503864.html 如果,您认为阅读这 ...

  2. 大数据freestyle: 共享单车轨迹数据助力城市合理规划自行车道

    编者按:近年来,异军突起的共享单车极大地解决了人们共同面临的“最后一公里”难题,然而,共享单车发展迅猛,自行车道建设却始终没有能够跟上脚步.幸运的是摩拜单车大量的轨迹数据为我们提供了一种新的思路:利用 ...

  3. Gym 100342F Move to Front (树状数组动态维护和查询)

    用树状数组动态和查询修改排名. 树状数组可以很方便地查询前缀和,那么可以利用这一特点,记录一个点在树状数组里最后一次出现的位置, 查询出这个位置,就可以知道这个点的排名了.更改这个点的排名的时候只要把 ...

  4. 爆零系列—补题A

    http://codeforces.com/contest/615/problem/A 读错题 结果发现是无脑题  直接标记统计 #include<cstdio> #include< ...

  5. python_108_格式化字符串format函数

    #通过关键字映射 print('I am {name},age {age}'.format(name='qiqi齐',age=18))#I am qiqi齐,age 18 dictory={'name ...

  6. Linux文件的IO操作 一

    系统调用 系统调用: 操作系统提供给用户程序调用的一组“特殊”接口,用户程序可以通过这组“特殊”接口来获得操作系统内核提供的服务 为什么用户程序不能直接访问系统内核提供的服务 为了更好地保护内核空间, ...

  7. python之常见的坑

    li = [1,2,3,4] # [1,3,4] # 索引值是奇数的删除 for i in range(4): if i % 2 == 1: li.pop(i) # 会报错 print(li) 面试题 ...

  8. 005 String s = "Hello";s = s + " world!";执行这两行代码执行后,原始的 String 对象中的内容到底变了没有?

    原始的String对象中的内容没有改变成“Hello world”. 1.原因 因为在Java中String类被设计成不可改变的类,所以String类的所有对象都是不可变的.第一句代码中,s(存储在栈 ...

  9. Java获取字符串里面的重复字符

    public static void main(String[] args) { String word="天地玄黄宇宙洪荒" + "日月盈昃辰宿列张" + & ...

  10. POI读word docx 07 文件的两种方法

    POI在读写word docx文件时是通过xwpf模块来进行的,其核心是XWPFDocument.一个XWPFDocument代表一个docx文档,其可以用来读docx文档,也可以用来写docx文档. ...