文档章节

hadoop0.20.2集群搭建 Ubuntu14.04 环境

tantairs
 tantairs
发布于 2015/01/11 21:03
字数 902
阅读 677
收藏 29

配前准备

一.   安装环境:Ubuntu 14.04 ---------一共三台机器

其中一台namenode+jobtracker (master) , 两台 datanode + tasktracker(hadoop, salve1)

下表为各个机器的具体内容

ip                     username/password  hostname

10.60.38.165    hadoop/123456          hadoop

10.60.38.166     hadoop/123456         master

10.60.38.155     hadoop/123456         salve1  (......居然拼错了,我靠)

在每台机器的/etc/hosts 下面 添加

10.60.38.165     hadoop

10.60.38.166     master

10.60.38.155     salve1

使得各台机器相互之间可以ping通(通过hostname可以ping)

(ps: /etc/hosts 里面的数据全部清空,只留上面的三个 以及第一项: 127.0.0.1   localhost )


二.    SSH 无密码验证配置

1.因为大部分Linux里面默认已经安装好了ssh,我在安装时已经默认安装好,但是ssh service 没有安装,使用 sudo apt-get install openssh-server 来安装 ssh service。(确保 22端口号处于监听状态:netstat -nat 查看)

2.在每台机器上都执行 下面命令: ssh-kengen -t rsa -P ""

一路enter (将密钥的位置保存在默认的路径下)

在user的当前目录下出现目录/.ssh(默认的权限为700)

里面生成两个文件 id_rsa 和 id_rsa.pub

3.接着在 Master 节点上做如下配置把id_rsa.pub 追加到授权的key 里面

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

4.下面在其他两台机器上依次执行命令将各自生成的id_rsa.pub 添加到Master 下的authorized_keys 里面

cat id_rsa.pub | ssh hadoop@master  "cat >> ~/.ssh/authorized_keys  ( 此时 ssh 到 另外一台机器上 需要另外一台机器的密码)

5.最后将Master 机器上得到的 authorized_keys 依次添加到 各台机器的 /home/hadoop/.ssh 目录下

scp authorized_keys hadoop@hadoop :~/.ssh

scp authorized_keys hadoop@salve1:~/.ssh

6.配置完成后在每一台机器上都可以无密码验证登录另外一台机器了。于是这一步搞定。

在每台机器上安装jdk 和 Hadoop 


配置Hadoop (此处我的版本为hadoop0.20.2,jdk1.7)

----在配置文件中设值时,两边千万不能有空格,不然无效

接下来配置配置文件:hadoop-env.sh, core-site.xml, hdfs-site.xml, mapred-site.xml

PS:

对于hadoop-env.sh 各个节点的配置都是相同的。

对于master节点,需要额外配置slaves 文件,在里面添加各个datanode  的ip 地址

下面附上master节点与Hadoop节点的配置(salve1与Hadoop类似,只需修改对于的ip,这里我已经大部分采用系统默认配置,所以无需更改)

hadoop-env.sh:

export JAVA_HOME=/opt/jdk1.7

(就在最后面加上即可)

core-site.xml:

<configuration>

        <property>

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

                    <value>hdfs://master:9000</value>

        </property>

</configuration>

ps: 这里当我添加属性 hadoop.tmp.dir 改变其默认路径时,集群在启动时报错。。。。未解,先暂时启用默认路径。还望大神指教。

hdfs-site.xml:

<configuration>

        <property>

                    <name>dfs.webhdfs.enabled</name>

                    <value>true</value>

        </property>

</configuration>

<configuration>

        <property>

                    <name>dfs.replication</name>

                    <value>2</value>

        </property>

</configuration>

mapred-site.xml:

<configuration>

        <property>

                    <name>mapred.job.tracker</name>

                    <value>10.60.38.166:9001</value>

        </property>

</configuration>

slaves:

10.60.38.165      hadoop

10.60.38.155      salve1

masters:

master


在master节点配置好了然后复制到各个Datanode 节点。

注意:这里的master, slaves 文件在复制的时候可以不用变动,系统会自动忽略。而且配置都不需要改变,因为已经尽量采用了默认配置

---------------------------------------------------------------------------------------------------------------------

测试运行

经过以下几步:

1.create some files(file01.txt, file02.txt) 

2.hadoop fs -mkdir input

3.hadoop fs -put file*.txt input

4.hadoop jar /opt/hadoop/hadoop-0.20.2-examples.jar wordcount input output

5.hadoop fs -ls output

6.hadoop fs -cat output/part-r-00000

最得到结果:

;slkdfj 1

aer 1

apple 1

are 1

asfjjjf 1

c++ 1

fj 1

hello 2

java 3

tantairs 1

world 4





© 著作权归作者所有

共有 人打赏支持
tantairs
粉丝 4
博文 1
码字总数 902
作品 0
启东
加载中

评论(7)

tantairs
tantairs

引用来自“teardream”的评论

Tpm.dir要看权限的,那个文件夹是否是root的
我在hadoop的目录里面新建了tmp目录,改了它的ower 和 group 都为hadoop 。运行hadoop namenode -format 格式化hdfs 成功,运行start-all.sh 报错。感觉hadoop的配置文件要理解透还是有点虚。。。
teardream
teardream
Tpm.dir要看权限的,那个文件夹是否是root的
老钱II
老钱II

引用来自“angle_小帅”的评论

引用来自“老钱II”的评论

不过貌似一般都推荐直接上2.2.0了
http://dongxicheng.org/mapreduce-nextgen/how-to-select-hadoop-versions/

这个还是有点用,像sqoop的最新版1.9就得和hadoop0.2一起才匹配,要不然 各种错啊。。。。

涨姿势了 谢谢
方唐镜
方唐镜
2.6.0 比较优秀
tantairs
tantairs

引用来自“老钱II”的评论

不过貌似一般都推荐直接上2.2.0了
http://dongxicheng.org/mapreduce-nextgen/how-to-select-hadoop-versions/

0谢谢提醒,准备先折腾一下,熟悉了之后再搞功能更完善的。
angle_小帅
angle_小帅

引用来自“老钱II”的评论

不过貌似一般都推荐直接上2.2.0了
http://dongxicheng.org/mapreduce-nextgen/how-to-select-hadoop-versions/

这个还是有点用,像sqoop的最新版1.9就得和hadoop0.2一起才匹配,要不然 各种错啊。。。。
老钱II
老钱II
不过貌似一般都推荐直接上2.2.0了
http://dongxicheng.org/mapreduce-nextgen/how-to-select-hadoop-versions/
#hadoop#单机(伪分布)安装及测试

tips:这个部署完全在以root用户操作,系统为ubuntu14.04,使用了Oracle JDK7_u55替换原来的OpenJDK 安装过程: 安装Java: 从自己的宿主机ftp服务器下载包: cd /usr/lib/jvmwget ftp://19...

Hochikong
2014/09/08
0
0
运行wordcount,其中一个一直task处于initializing状态

程序的输入数据是150M。运行wordcount,其中一个一直task处于initializing状态。环境是ubuntu12下的hadoop0.20.2. 有谁遇到过这个问题呢??...

lwtbn1
2013/05/17
95
0
ubuntu14_ceph部署(一)——预检与安装规划

测试规划: 节点名称 系统发行版 IP 地址 部署进程 系统盘 数据盘/日志盘 普通账户 ceph1 ubuntu14.04 eth0 192.168.89.10 外网 eth1 10.0.0.10 ceph集群网 1MON+1MDS+2OSD、Ceph 部署工具 ...

科技小能手
2017/11/12
0
0
使用Nodejs通过thrift框架访问HBase卡住不动问题

Ubuntu14.04搭建HBase环境成功,在hbase shell里增删改查操作都没有问题。用HBASE的restAPI也可以访问。但用nodejs通过thrift框架访问HBase时,代码执行到client.openScanner这行就卡住了,也...

TateYao
2017/03/15
135
0
使用Docker在本地搭建Hadoop分布式集群

学习Hadoop集群环境搭建是Hadoop入门必经之路。搭建分布式集群通常有两个办法: 要么找多台机器来部署(常常找不到机器) 或者在本地开多个虚拟机(开销很大,对宿主机器性能要求高,光是安装...

Carl_
2015/07/24
0
2

没有更多内容

加载失败,请刷新页面

加载更多

Apache 流框架 Flink,Spark Streaming,Storm对比分析

1.Flink架构及特性分析 Flink是个相当早的项目,开始于2008年,但只在最近才得到注意。Flink是原生的流处理系统,提供high level的API。Flink也提供 API来像Spark一样进行批处理,但两者处理...

hblt-j
4分钟前
0
0
Dubbo/HSF在Service Mesh下的思考和方案

开头 Service Mesh这个“热”词是2016年9月被“造”出来,而今年2018年更是被称为service Mesh的关键之年,各家大公司都希望能在这个思潮下领先一步。今天我也分享阿里中间件在这方面的观点,...

Mr_zebra
6分钟前
0
0
用命令卸载Win8 IE9/IE10/IE11浏览器

首先打开,开始---运行-----框里输入cmd,进入命令提示框,将下面的命令复制粘贴到命令框里,然后按下Enter键执行。 执行完命令,必须重启电脑。 卸载IE9的命令: FORFILES /P %WINDIR%\ser...

JackFace
7分钟前
0
0
2018年产品设计协作领域最强黑马居然是它?

我发了一条朋友圈“感谢池子的秘密法宝,我今天终于吃上了女朋友做的晚饭了”并配上香香的绿豆汤,瞬间获得好几十条评论。 “同为设计师,为啥你会这么早回家?” “快扶我起来,我还能画两个...

mo311
8分钟前
0
0
linux安装jdk1.8(rpm方式)

1:下载JDK的URL地址,例如:http://download.oracle.com/otn-pub/java/jdk/8u131-b11/d54c1d3a095b4ff2b6607d096fa80163/jdk-8u131-linux-x64.rpm。这个地址可以去Orcale的官网找到。通过w......

苏牧影子
12分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部