本文共 2553 字,大约阅读时间需要 8 分钟。
其实跟官方的教程一样 只是 我想写下来 避免自己搞忘记了,,,,好记性不如烂笔头
首先确认自己是否安装了 java, ssh 以及 rsync 没有装的直接就 apt-get install 了嘛,,,java的不一定要用sun的 OPEN的也好 主要方便。。。。不是重点 看着搞啦
然后 就是ssh免密码登录 这点 主要是因为 hadoop 需要通过ssh来启动salve列表中的各个主机守护进程,因为 分布式集群管理的 所以不管你是用的单机伪分布 或是分布 它都不分管理模式的,因此这一步必须搞 也简单 就两道命令
/opt/hadoop# ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 | #后面学到的新的做法 记录一下 On source host: cd ~ mkdir . ssh chmod 700 . ssh cd . ssh ssh -keygen -t rsa -b 1024 cat id_rsa.pub copy contents of id_rsa.pub On destination host: cd ~ mkdir . ssh chmod 700 . ssh cd . ssh vi authorized_keys paste contents of id_rsa.pub from evnoltp9 into authorized keys :wq! #chmod 600 authorized_keys chmod og-rxw $HOME/. ssh $HOME/. ssh /authorized_keys |
另外要注意请务必要将服务器上
~/.ssh权限设置为700
~/.ssh/authorized_keys的权限设置为600
试一试 是否可以免密码登录 ssh localhost
这样就完成了第一步
echo $JAVA_HOME
看看jdk安装在哪里 然后copy一下路径 一会用上
vim ./conf/hadoop-env.sh
当中大概第九条 把那里的JAVA_HOME 指定一下
export JAVA_HOME=/usr/lib/jdk/jdk1.7.0_07 ##保存
配置 hadoop核心配置文件 vim ./conf/core-site.xml
<configuration>
<property> <name>fs.default.name</name> <value>hdfs://localhost:9000</value> ##hdfs入口 </property> </configuration> 配置 hadoop 的HDFS配置文件 vim ./conf/hdfs-site.xml<configuration>
<property> <name>dfs.replication</name> <value>1</value> ##文件副本数量 但节点 一个就够了 </property> </configuration>配置 hadoop 的 MapReduce配置文件 vim ./conf/mapred-site.xml
<configuration>
<property> <name>mapred.job.tracker</name> <value>localhost:9001</value> </property> </configuration>这样 一个单节点的Hadoop就配置成功了 剩下的就是格式下文件系统 然后 启动就OK 了
首先是格式文件系统
hadoop namenode -format
接下来启动
start-all.sh
当然 你可以 单单启动 HDFS(start-dfs.sh) 也可以单单启动 MapReduce (start-mapred.sh)
验证是否成功 打开浏览器
localhost:50030 ##MapReduce WEB管理界面
localhost:50070 ##HDFS WEB管理界面
测试上传文件到 hdfs文件系统当中
hadoop fs -put 文件名 hdfs://localhost:9000/指定一个文件夹 或者 就放到根目录
刷新下 hdfs管理界面 就能看到那个文件了
测试 MapReduce 例子 用的 hadoop里面自带的例子 计算shell脚本当中的单词量
首先先上传 要计算的sh文件 hadoop fs -mkdir /input ##创建一个input文件夹
hadoop fs -put *.sh /input/ ##上传当前文件夹下所有的*.sh文件 到 hdfs 的 input 文件夹下
hadoop jar hadoop-examples-i.0.3.jar wordcount /input /output
开始计算 过程省略 仅仅使用于测试的
-----完成后 可以在 localhost:50070 文件管理系统当中发现一个output文件夹 点进入 在part-r-00000 当中记录了结果 前面是单词 后面是出现的次数
在localhost:50030 可以看到running jobs(这里显示 运行当中的)
completed jobs (这里显示作业运行的统计)点进去可以看到一些 更详细的信息,自己研究啦
由于在 UBUNTU当中截图麻烦 我就不发图了 按照步骤一步一步来 亲测OK 我用的 UBUNTU 12.04
注:后面我看了书 hadoop实战 机械工业出版社的那本 说是不能用openJava 但是我原来看别人录制视频 说是可以, 我呢是用的 oracle的 大家如果用open的装不上 就用oracle的吧 没有实践过本文转自 拖鞋崽 51CTO博客,原文链接:http://blog.51cto.com/1992mrwang/1011844
转载地址:http://mpgia.baihongyu.com/