Mac OS X Yosemite安装Hadoop 2.6记录
整个安装过程分为四部分:
一. 安装Homebrew
二. ssh localhost
三. 安装Hadoop已经进行配置文件设置 (伪分布式)
四. 执行栗子
一. 安装Homebrew
採用Homebrew安装Hadoop很简洁方便,之前在Windows上Cygwin上安装过Hadoop,感觉好麻烦。
关于Homebrew能够查看其官网 http://brew.sh/ 也能够查看Homebrew
新一代OS X套件管理工具 一文。
$ ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
然后将上面一行命令拷贝到终端运行就安装完毕了。
二. ssh localhost
由于安装hadoop须要远程登入的功能,所以须要安装ssh工具。 Mac OS X仅仅需在“系统偏好设置”的“共享”的“远程登录”勾选就能够使用ssh了。
ssh的很多其它能够查看 SSH原理与应用
一文。
假设没有生成过ssh公钥,就使用命令: (查看 ~/.ssh/id_dsa
和~/.ssh/id_dsa.pub存不存在就知道之前有没有生成过公钥,或者直接运行ssh
localhost看是否能成功)
$ ssh-keygen -t rsa -P ""
$ cat $HOME/.ssh/id_rsa.pub >> $HOME/.ssh/authorized_keys
后面的命令是为了将自己的公钥存到对方的公钥保存目录中, 这是为了避免每次运行ssh localhost进行远程登入的时候都要输入password。
三. 安装hadoop 由于就在自己的一台电脑,所以就採用伪分布式模式。
<span style="font-size:18px;">$ brew install hadoop</span>
hadoop 就成功安装了,当然这样安装的最新稳定版, 我安装时最新为2.6。 hadoop将按预定的路径安装。
以下就是配置文件的改动了:
hadoop-env.sh
文件在/usr/local/Cellar/hadoop/2.6.0/libexec/etc/hadoop/hadoop-env.sh
将
export
HADOOP_OPTS="$HADOOP_OPTS -Djava.net.preferIPv4Stack=true"
改动为
export HADOOP_OPTS="$HADOOP_OPTS -Djava.net.preferIPv4Stack=true -Djava.security.krb5.realm= -Djava.security.krb5.kdc="
编辑 Core-site.xml
/usr/local/Cellar/hadoop/2.6.0/libexec/etc/hadoop/core-site.xml
<configuration>
<property>
<name>hadoop.tmp.dir</name>
<value>/usr/local/Cellar/hadoop/hdfs/tmp</value>
<description>A base for other temporary directories.</description>
</property>
<property>
<name>fs.default.name</name>
<value>hdfs://localhost:9000</value>
</property>
</configuration>
注: fs.default.name 保存了NameNode的位置,HDFS和MapReduce组件都须要用到它,这就是它出如今core-site.xml 文件里而不是 hdfs-site.xml文件里的原因
编辑 mapred-site.xml 可能文件名称为 mapred-site.xml.templete , 改不改名字都能够。
/usr/local/Cellar/hadoop/2.6.0/libexec/etc/hadoop/mapred-site.xml
刚開始是空白的文件
<configuration>
<property>
<name>mapred.job.tracker</name>
<value>localhost:9010</value>
</property>
</configuration>
变量mapred.job.tracker 保存了JobTracker的位置,由于仅仅有MapReduce组件须要知道这个位置,所以它出如今mapred-site.xml文件里。
编辑 hdfs-site.xml
/usr/local/Cellar/hadoop/2.6.0/libexec/etc/hadoop/hdfs-site.xml
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
</configuration>
变量dfs.replication指定了每一个HDFS数据库的复制次数。 通常为3, 因为我们仅仅有一台主机和一个伪分布式模式的DataNode,将此值改动为1。
至此,配置文件编辑完成。
接下来是进到
hadoop 的安装文件夹 /usr/local/Cellar/hadoop/2.6.0/sbin
然后运行 ./start-dfs.sh 和 ./start-yarn.sh 就能够启动 Hadoop了。 只是这里会出现一个 警告:WARN
util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable 这对Hadoop的执行没有影响,关于这个警告后面再讲。
为了启动Hadoop的时候避免每次都首先进到安装文件夹,然后再运行./start-dfs.sh 和 ./start-yarn.sh这么麻烦,所以在编辑 ~/.profiles文件,加上例如以下两行:
alias hstart="/usr/local/Cellar/hadoop/2.6.0/sbin/start-dfs.sh;/usr/local/Cellar/hadoop/2.6.0/sbin/start-yarn.sh"
alias hstop="/usr/local/Cellar/hadoop/2.6.0/sbin/stop-yarn.sh;/usr/local/Cellar/hadoop/2.6.0/sbin/stop-dfs.sh"
然后运行
$ source ~/.profile 更新。 这样能够就能够用 hstart 和 hstop 这两个简单明了启动Hadoop了。
只是在启动hadoop之前要先格式化 hdfs
$ hadoop namenode -format
这时就能够用hstart启动hadoop了。 能够使用 jps 命令验证 Hadoop是否在执行。
四. 执行栗子
安装完了之后肯定想看看能不能使用,hadoop自带了一个样例。$
hadoop jar <path to the hadoop-examples file> pi 10 100
$ hadoop jar /usr/local/Cellar/hadoop/2.3.0/libexec/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.3.0.jar pi 2 5
得到的结果可能是这种:
Wrote input for Map #0
Wrote input for Map #1
Starting Job
...
Job Finished in 1.685 seconds
Estimated value of Pi is 3.60000000000000000000
然后能够通过Web端进行监控。
Resource Manager: http://localhost:50070
JobTracker:http://localhost:8088
Specific Node Information:http://localhost:8042
通过他们能够訪问 HDFS filesystem, 也能够取得结果输出文件.
注:
前文提到的 警告 是关于 Hadoop 本地库的, Hadoop本地库是为了提高效率或者某些不能用Java实现的功能组件库。眼下仅仅支持 *unix, 在Mac OS X和Cygwin上没有支持的。native hadoop library
只是我看到一篇文章说也能够在Mac
OS X支持本地库,其解决方法是 Mac
OSX 下 Hadoop 使用本地库提高效率
Mac OS X Yosemite安装Hadoop 2.6记录的更多相关文章
- Mac OS X Yosemite安装盘U盘制作
从App Store下载Mac OS X Yosemite安装程序,下载后的安装文件保存在应用程序(/Applications)文件夹中.请注意,此时一定不要直接启动该程序安装 OS X Yosemi ...
- Vmare12(虚拟机)安装Mac OS X Yosemite 10.10
需要预备的软件如下: OSX10.10的系统镜像,下载好之后将后缀.cdr改成.iso,下载来源如下: 链接:http://pan.baidu.com/s/1sj4ri5R 密码:y86w un ...
- Mac OS X Yosemite & Arduino安装CH340 USB转串口驱动
新买的Arduino开发板 USB转串口使用了CH340芯片,在Mac OS X Yosemite上正常安装驱动后,在Arduino IDE的端口没发现相应的设备,使用以下方法后就能使用USB转串口调 ...
- Mac OS X 上安装 ASP.NET 5
在Mac OS X Yosemite 10.10.3 中搭建第一个 ASP.NET 5 Web 项目 终于有时间在 Mac 上安装一下 ASP.NET 5,网上有许多教程,但是多数的时间比较早了,版本 ...
- 在Mac OS X Yosemite 10.10.3 中搭建第一个 ASP.NET 5 Web 项目
终于有时间在 Mac 上安装一下 ASP.NET 5,网上有许多教程,但是多数的时间比较早了,版本不是最新,搭着 Build 2015 的春风,我也实践一下 Mac OS X 上的 ASP.NET 5 ...
- MAC OS X Yosemite的PyQt4配置记录
MAC OS X Yosemite的PyQt4配置记录 声明: 1)本报告由博客园bitpeach撰写,版权所有,免费转载,请注明出处,并请勿作商业用途. 2)若本文档内有侵权文字或图片等内容,请联系 ...
- 虚拟机安装Mac OS X ----- VM12安装Mac OS X
Windows下虚拟机安装Mac OS X -– VM12安装Mac OS X 10.11 随着Iphone在国内大行其道,越来越多的开发者涌入iOS开发大军 中,但都苦于没有苹果机,本文即将介绍WI ...
- Windows下虚拟机安装Mac OS X ----- VM12安装Mac OS X 10.11
Windows下虚拟机安装Mac OS X -– VM12安装Mac OS X 10.11 随着Iphone在国内大行其道,越来越多的开发者涌入iOS开发大军 中,但都苦于没有苹果机,本文即将介绍WI ...
- 苹果 Mac OS X Yosemite 10.10 新功能特性总结 - 扁平化、主打跨设备的无缝连通性
苹果在2014.06.03凌晨的 WWDC 2014 大会上正式发布了最新的 OS X Yosemite 桌面操作系统和 iOS 8 移动系统.虽然整场发布会的重心都在软件上,并没有硬件亮相,但软件上 ...
随机推荐
- no copy constructor available or copy constructor is declared 'explicit'
今天新写了一个类.然后对这个类使用STL中的vector,碰到错误: no copy constructor available or copy constructor is declared 'ex ...
- storm-编程入门
一 编程接口 watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvemhhbm ...
- H3C SecPath F100-C 防火墙配置说明
最近的工作需要,将H3C SecPath F100-C天津联通的房间防火墙配置: 网络拓扑例如,下面的: 进入系统管理界面: 默认登陆地址:192.168.0.1 截图由于涉及公司信息就没有上传.大家 ...
- WebGL自学教程——WebGL演示样例:開始
最终開始WebGL的演示样例了,...... 開始 使用WebGL的步骤,非常easy: 1. 获得WebGL的渲染环境(也叫渲染上下文). 2. 发挥你的想象力,利用<WebGL參考手冊> ...
- Android开展:ADT+Eclipse使用错误:Text editor does not have a document provider
Eclipse参加Android sdk源代码 正在使用Eclipse进行Android开发时间,我们经常需要导入sdk源代码来Eclipse中,方便api阅读和查询,详细操作为:ctrl+鼠标左键. ...
- 《Node.js In Action》笔记之流程控制
转向Javascript后,开始学习了node.js,选择的第一本书是<Node.js in Action> 将近一个月时间,断断续续看完,选几个点做下笔记 1.实现串行化流程控制 var ...
- VC6.0入门使用
软件下载地址 http://pan.baidu.com/s/1qWuqFAO 新建win console 32 project,然后新建header文件.最后新建source cpp文件.如图所看到的
- Windows phone 8 学习笔记(7) 设备
原文:Windows phone 8 学习笔记(7) 设备 本节主要涉及到 Windows phone 8 手机支持的各类设备,包括相机.设备状态,振动装置等.还有各类感应器,包括磁力计.加速度器和陀 ...
- Qt4.8在Windows下的三种编程环境搭建
Qt4.8在Windows下的三种编程环境搭建 Qt的版本是按照不同的图形系统来划分的,目前分为四个版本:Win32版,适用于Windows平台:X11版,适合于使用了X系统的各种Linux和Unix ...
- Hyper-V笔记
Hyper-V的网络架设 Hyper-V中创建“虚拟网络”(可看成交换机)会在物理机中创建相应的虚拟网卡.Hyper-V安装好后会默认创建一个“本地连接-虚拟网络”对应的虚拟网卡给物理机使用,原本的本 ...