Mac配置本地hadoop
这学期要学习大数据,于是在自己的mac上配置了hadoop环境。由于Mac是OSX系统,所以配置方法跟Linux类似
一、下载hadoop
从下载压缩包。
$lltotal 598424-rwxrwxrwx@ 1 fanghao staff 292M 3 4 23:16 hadoop-3.0.0.tar.gz
解压
tar -xzvf hadoop-3.0.0.tar.gz
二、设置环境变量
vim ~/.bash_profile
export HADOOP_HOME=/Users/fanghao/someSoftware/hadoop-3.0.0export HADOOP_HOME_WARN_SUPPRESS=1export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH
使环境变量生效
source ~/.bash_profile
三、配置hadoop自己的参数
进入hadoop-3.0.0/etc/hadoop
1. 配置hadoop-env.sh
# The java implementation to use. By default, this environment# variable is REQUIRED on ALL platforms except OS X!export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_111.jdk/Contents/Home
这里写了OSX不必须加这一行,加了也没事
2. 配置core-site.xml
指定临时数据文件夹,指定NameNode的主机名和端口
fs.defaultFS hdfs://localhost:9000 hadoop.tmp.dir /Users/fanghao/someSoftware/hadoop-3.0.0/data/
3. 配置hdfs-site.xml
指定HDFS的默认参数副本,因为是单机运行,所以副本数为1
dfs.replication 1
4. 配置mapred-site.xml
指定使用yarn集群框架
mapreduce.framework.name yarn
5. 配置yarn-site.xml
yarn.resourcemanager.hostname localhost yarn.nodemanager.aux-services mapreduce_shuffle
四、启动
先格式化
hadoop namenode -format
然后执行hadoop-3.0.0/sbin中的系统脚本
如
start-dfs.sh # 启动DataNode、NameNode、SecondaryNameNodestart-yarn.sh # 启动NodeManager、ResourceManager
用jps
命令可以查看这些JVM上的进程
6178 NodeManager6083 ResourceManager6292 Jps5685 DataNode5582 NameNode5822 SecondaryNameNode
查看HDFS
用浏览器登录http://localhost:9870/
这里要注意的是,在hadoop3.0.0中,这里的端口号改成了9870,不是2.x的50070,官网上有
The patch updates the HDFS default HTTP/RPC ports to non-ephemeral ports. The changes are listed below:Namenode ports: 50470 --> 9871, 50070 --> 9870, 8020 --> 9820Secondary NN ports: 50091 --> 9869, 50090 --> 9868Datanode ports: 50020 --> 9867, 50010 --> 9866, 50475 --> 9865, 50075 --> 9864
可能遇到的问题
hadoop的集群控制是通过ssh实现的,因此要在系统偏好设置->共享->远程登录
设置成允许