版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/maxmao1024/article/details/78848679
公司因为业务需求使用Hbase存储和分析数据。在mac上搭建hadoop伪分布式,记录过程如下。
准备工作:
- 安装brew
- 安装java开发环境
1. 安装
brew install hadoop
hadoop version
2. 配置
进入配置目录
cd /usr/local/Cellar/hadoop/3.0.0/libexec/etc/hadoop # hadoop 配置目录
hadoop-env.sh
export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_151.jdk/Contents/Home
– 指定JAVA 环境变量 (查看java路径: /usr/libexec/java_home)
core-site.sh
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://localhost:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/Users/max/tmp/hadoop</value> ## 自定义文件夹
</property>
</configuration>
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
</configuration>
3. 配置ssh
sudo scutil --set HostName localhost # 设置HostName
sudo launchctl load -w /System/Library/LaunchDaemons/ssh.plist #启动sshd服务
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys #如果没有公私钥对需要先生成: ssh-keygen -t rsa -P ""
ssh localhost #显示:Last login: xxx, 配置成功
4. 启动hadoop
cd /usr/local/Cellar/hadoop/3.0.0/libexec
hdfs namenode -format # 格式化文件系统
start-all.sh (= start-dfs.sh + start-yarn.sh) # 启动
jps # 查看hadoop的运行情况, 看到如下信息
2611 Jps
1107 DataNode
1027 NameNode
1331 ResourceManager
1219 SecondaryNameNode
1415 NodeManager
访问 http://localhost:9870 测试是否正常
stop-all.sh (= stop-dfs.sh + stop-yarn.sh) # 停止
更多关于Hadoop、MapReduce、YARN和Spark的区别与联系,可以参考链接
http://blog.csdn.net/leijie0322/article/details/44343887
5. 使用
hdfs dfs -mkdir input
hdfs dfs -put etc/hadoop/*.xml input
hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-3.0.0.jar grep input output 'dfs[a-z.]+'
hdfs dfs -cat output/*
6. 遇到的问题
7. 参考链接