博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
ubuntu12.04下hadoop单机模式和伪分布模式环境搭建
阅读量:6258 次
发布时间:2019-06-22

本文共 3182 字,大约阅读时间需要 10 分钟。

hot3.png

1.添加hadoop组(专门用来进行hadoop测试)到系统用户:

sudo addgroup hadoop

2.在hadoop中添加hadoop用户:

sudo adduser --ingroup hadoop hadoop

3.赋予hadoop管理员权限

sudo usermod -aG sudo hadoop

( 如果不想新建用户,只在自己现有用户下搭建,上面三步可以省去直接进入第四步) 4切换用户!! 5.安装ssh远程登录协议:

sudo apt-get install openssh-server

6.启动ssh

sudo /etc/init.d/ssh start

7.免密码登录,并生成公钥与私钥:

ssh-keygen -t rsa -P ""

第一次操作时会提示输入密码,按Enter直接过,这时会在~/home/hadoop/.ssh下生成两个文件:id_rsa和id_rsa.pub,前者为私钥,后者为公钥. 8.现在我们将公钥追加到authorized_keys中(authorized_keys用于保存所有允许以当前用户身份登录到ssh客户端用户的公钥内容)

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

9登录ssh

ssh localhost

10退出

exit

11再登录退出一次,之后登录就不用输入密码了。 12安装java 13安装hadoop,这里选择的是hadoop-1.2.1.tar.gz ,解压并放到你想放的地方

sudo mv /Downloads/hadoop-1.2.1.tar.gz /usr/local/hadoop

14确保所有操作均在hadoop用户下

sudo chown -R hadoop:hadoop /usr/local/hadoop

15配置hadoop-env.sh,所在目录:/usr/local/hadoop/conf,添加如下代码

export JAVA_HOME=/usr/lib/jvm/java-7-openjdk-i386 (视你机器的java安装路径而定)export HADOOP_HOME=/usr/local/hadoopexport PATH=$PATH:/usr/local/hadoop/binexport HADOOP_HOME_WARN_SUPPRESS="TRUE"

16让环境变量配置生效

source /usr/local/hadoop/conf/hadoop-env.sh

17单机配置成功:

hadoop version

伪分布模式继续: 18配置conf目录下三个文件:core-site.xml,hdfs-site.xml,mapred-site.xml core-site.xml:

fs.default.name
hdfs://localhost:9000
hadoop.tmp.dir
/usr/local/hadoop/tmp

hdfs-site.xml:

dfs.replication
1
dfs.name.dir
/usr/local/hadoop/hdfs/name
dfs.data.dir
/usr/local/hadoop/hdfs/data

mapred-site.xml:

mapred.job.tracker
localhost:9001

19 在hadoop目录下新建几个目录:

~/hadoop$ mkdir tmp ~/hadoop$ mkdir hdfs ~/hadoop$ mkdir hdfs/name ~/hadoop$ mkdir hdfs/data

20 修改data文件夹的权限:

sudo chmod g-w /usr/local/hadoop/hdfs/data

21 让配置文件生效:

source /usr/local/hadoop/conf/hadoop-env.sh

22.确认hadoop没有运行:

usr/local/hadoop bin/stop-all.sh

23 格式化namenode

usr/local/hadoop bin/hadoop namenode -format

24运行

/usr/local/hadoop bin/start-all.sh

25 jps 如果出现下图表示成功 在此输入图片描述

26测试程序: 在伪分布模式下运行一下hadoop自带的例子WordCount来感受以下MapReduce过程:

这时注意程序是在文件系统dfs运行的,创建的文件也都基于文件系统:

首先在dfs中创建input目录

hadoop@lcj:/usr/local/hadoop$ bin/hadoop dfs -mkdir input

将conf中的文件拷贝到dfs中的input

hadoop@lcj:/usr/local/hadoop$ bin/hadoop dfs -copyFromLocal conf/* input

在伪分布式模式下运行WordCount

hadoop@lcj:/usr/local/hadoop$ bin/hadoop jar hadoop-examples-1.2.1.jar wordcount input output

显示输出结果

hadoop@lcj:/usr/local/hadoop$ bin/hadoop dfs -cat output/*

在此输入图片描述

当Hadoop结束时,可以通过stop-all.sh脚本来关闭Hadoop的守护进程

hadoop@lcj:/usr/local/hadoop$ bin/stop-all.sh

本文主要参考的csdn狂奔的蜗牛,Ubuntu上搭建Hadoop环境(单机模式+伪分布模式),在此表示感谢,结合自己在安装时候出现的问题给以解决方法,加以总结。

转载于:https://my.oschina.net/u/1392563/blog/191063

你可能感兴趣的文章
Jenkins_多项目构建(二):使用Maven聚集关系
查看>>
三大做空工具详解
查看>>
linux全方位掌握一个命令--思路比方法更重要
查看>>
[Flexbox] Use Flex to Scale Background Image
查看>>
【等待事件】序列等待事件总结(enq: SQ - contention、row cache lock、DFS lock handle和enq: SV - contention)...
查看>>
算法与数据结构(七) AOV网的拓扑排序(Swift版)
查看>>
maven pom.xml解释 (转)
查看>>
markdown to html
查看>>
Pspice仿真器
查看>>
ogg 、 Shareplex和DSG RealSync 对比
查看>>
NK3C程序配置
查看>>
webrtc中APM(AudioProcessing module)的使用2
查看>>
lunix的查看Tomcat目录下日志的快速操作
查看>>
zabbix添加邮件报警机制
查看>>
微信开放之模板消息
查看>>
Hql 中实用查询时候 引号的使用
查看>>
利用PowerShell复制SQLServer账户的所有权限
查看>>
SQLServer 维护脚本分享(10)索引
查看>>
js里父页面与子页面的相互调用
查看>>
AES加解密【示例】
查看>>